Esma Yildirim Department of Computer Engineering Fatih University Istanbul, Turkey DATACLOUD 2013.

Slides:



Advertisements
Similar presentations
Network II.5 simulator ..
Advertisements

Network Resource Broker for IPTV in Cloud Computing Lei Liang, Dan He University of Surrey, UK OGF 27, G2C Workshop 15 Oct 2009 Banff,
Cross-site data transfer on TeraGrid using GridFTP TeraGrid06 Institute User Introduction to TeraGrid June 12 th by Krishna Muriki
3D Graphics Content Over OCP Martti Venell Sr. Verification Engineer Bitboys.
Hadi Goudarzi and Massoud Pedram
SDN + Storage.
Current Testbed : 100 GE 2 sites (NERSC, ANL) with 3 nodes each. Each node with 4 x 10 GE NICs Measure various overheads from protocols and file sizes.
End-to-end Data-flow Parallelism for Throughput Optimization in High-speed Networks Esma Yildirim Data Intensive Distributed Computing Laboratory University.
Suphakit Awiphan, Takeshi Muto, Yu Wang, Zhou Su, Jiro Katto
Efficient and Flexible Parallel Retrieval using Priority Encoded Transmission(2004) CMPT 886 Represented By: Lilong Shi.
Locality-Aware Request Distribution in Cluster-based Network Servers 1. Introduction and Motivation --- Why have this idea? 2. Strategies --- How to implement?
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
Performance Evaluation
CS218 – Final Project A “Small-Scale” Application- Level Multicast Tree Protocol Jason Lee, Lih Chen & Prabash Nanayakkara Tutor: Li Lao.
High Performance Cooperative Data Distribution [J. Rick Ramstetter, Stephen Jenks] [A scalable, parallel file distribution model conceptually based on.
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
On-Demand Media Streaming Over the Internet Mohamed M. Hefeeda, Bharat K. Bhargava Presented by Sam Distributed Computing Systems, FTDCS Proceedings.
Database System Architectures  Client-server Database System  Parallel Database System  Distributed Database System Wei Jiang.
Client-Server Computing in Mobile Environments
Google Distributed System and Hadoop Lakshmi Thyagarajan.
Copyright © 2012 Cleversafe, Inc. All rights reserved. 1 Combining the Power of Hadoop with Object-Based Dispersed Storage.
U.S. Department of the Interior U.S. Geological Survey David V. Hill, Information Dynamics, Contractor to USGS/EROS 12/08/2011 Satellite Image Processing.
GridFTP Guy Warner, NeSC Training.
Research on cloud computing application in the peer-to-peer based video-on-demand systems Speaker : 吳靖緯 MA0G rd International Workshop.
Test Of Distributed Data Quality Monitoring Of CMS Tracker Dataset H->ZZ->2e2mu with PileUp - 10,000 events ( ~ 50,000 hits for events) The monitoring.
Lecture 8: Design of Parallel Programs Part III Lecturer: Simon Winberg.
Profiling Grid Data Transfer Protocols and Servers George Kola, Tevfik Kosar and Miron Livny University of Wisconsin-Madison USA.
MapReduce: Simplified Data Processing on Large Clusters Jeffrey Dean and Sanjay Ghemawat.
Improving Capacity and Flexibility of Wireless Mesh Networks by Interface Switching Yunxia Feng, Minglu Li and Min-You Wu Presented by: Yunxia Feng Dept.
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
A Framework for Elastic Execution of Existing MPI Programs Aarthi Raveendran Graduate Student Department Of CSE 1.
Current Testbed : 100 GE 2 sites (NERSC, ANL) with 3 nodes each. Each node with 4 x 10 GE NICs Measure various overheads from protocols and file sizes.
Mining High Utility Itemset in Big Data
A Measurement Based Memory Performance Evaluation of High Throughput Servers Garba Isa Yau Department of Computer Engineering King Fahd University of Petroleum.
Modeling and Adaptive Scheduling of Large-Scale Wide-Area Data Transfers Raj Kettimuthu Advisors: Gagan Agrawal, P. Sadayappan.
Introduction to dCache Zhenping (Jane) Liu ATLAS Computing Facility, Physics Department Brookhaven National Lab 09/12 – 09/13, 2005 USATLAS Tier-1 & Tier-2.
MapReduce and GFS. Introduction r To understand Google’s file system let us look at the sort of processing that needs to be done r We will look at MapReduce.
The Alternative Larry Moore. 5 Nodes and Variant Input File Sizes Hadoop Alternative.
Mobile Agent Migration Problem Yingyue Xu. Energy efficiency requirement of sensor networks Mobile agent computing paradigm Data fusion, distributed processing.
LEGS: A WSRF Service to Estimate Latency between Arbitrary Hosts on the Internet R.Vijayprasanth 1, R. Kavithaa 2,3 and Raj Kettimuthu 2,3 1 Coimbatore.
GFS. Google r Servers are a mix of commodity machines and machines specifically designed for Google m Not necessarily the fastest m Purchases are based.
GridFTP GUI: An Easy and Efficient Way to Transfer Data in Grid
GridFTP Richard Hopkins
Problem-solving on large-scale clusters: theory and applications Lecture 4: GFS & Course Wrap-up.
Using Heterogeneous Paths for Inter-process Communication in a Distributed System Vimi Puthen Veetil Instructor: Pekka Heikkinen M.Sc.(Tech.) Nokia Siemens.
1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers.
 The End to the Means › (According to IBM ) › 03.ibm.com/innovation/us/thesmartercity/in dex_flash.html?cmp=blank&cm=v&csr=chap ter_edu&cr=youtube&ct=usbrv111&cn=agus.
ALCF Argonne Leadership Computing Facility GridFTP Roadmap Bill Allcock (on behalf of the GridFTP team) Argonne National Laboratory.
Ohio State University Department of Computer Science and Engineering Servicing Range Queries on Multidimensional Datasets with Partial Replicas Li Weng,
GridFTP Guy Warner, NeSC Training Team.
Run-time Adaptation of Grid Data Placement Jobs George Kola, Tevfik Kosar and Miron Livny Condor Project, University of Wisconsin.
Performance Comparison of Ad Hoc Network Routing Protocols Presented by Venkata Suresh Tamminiedi Computer Science Department Georgia State University.
Resource Optimization for Publisher/Subscriber-based Avionics Systems Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee.
A Fragmented Approach by Tim Micheletto. It is a way of having multiple cache servers handling data to perform a sort of load balancing It is also referred.
Brian Lauge Pedersen Senior DataCenter Technology Specialist Microsoft Danmark.
Spark on Entropy : A Reliable & Efficient Scheduler for Low-latency Parallel Jobs in Heterogeneous Cloud Huankai Chen PhD Student at University of Kent.
WP18, High-speed data recording Krzysztof Wrona, European XFEL
FileCatalyst Performance
Threads vs. Events SEDA – An Event Model 5204 – Operating Systems.
Advanced Topics in Concurrency and Reactive Programming: Case Study – Google Cluster Majeed Kassis.
Study course: “Computing clusters, grids and clouds” Andrey Y. Shevel
Gregory Kesden, CSE-291 (Cloud Computing) Fall 2016
A Framework for Automatic Resource and Accuracy Management in A Cloud Environment Smita Vijayakumar.
Direct Attached Storage and Introduction to SCSI
ECE 4450:427/527 - Computer Networks Spring 2017
Degree-aware Hybrid Graph Traversal on FPGA-HMC Platform
Smita Vijayakumar Qian Zhu Gagan Agrawal
Database System Architectures
Kenichi Kourai Kyushu Institute of Technology
Presentation transcript:

Esma Yildirim Department of Computer Engineering Fatih University Istanbul, Turkey DATACLOUD 2013

Data Scheduling Services in the Cloud Data Scheduling Services in the Cloud File Transfer Scheduling Problem History File Transfer Scheduling Problem History Implementation Details of the Client Implementation Details of the Client Example Algorithms Example Algorithms Amazon EC2 Experiments Amazon EC2 Experiments Conclusions Conclusions

Data Clouds strive for novel services for management, analysis, access and scheduling of Big Data Data Clouds strive for novel services for management, analysis, access and scheduling of Big Data Application level protocols providing high performance in high speed networks is an integral part of data scheduling services Application level protocols providing high performance in high speed networks is an integral part of data scheduling services GridFTP, UDP based protocols are used frequently in Modern Day Schedulers (e.g. GlobusOnline, StorkCloud) GridFTP, UDP based protocols are used frequently in Modern Day Schedulers (e.g. GlobusOnline, StorkCloud)

Data is large, diverse and complex Data is large, diverse and complex Transferring large datasets faces many bottlenecks Transferring large datasets faces many bottlenecks Transport protocol’s under utilization of network Transport protocol’s under utilization of network End-system limitations (e.g. CPU, NIC and disk speed) End-system limitations (e.g. CPU, NIC and disk speed) Dataset characteristics Dataset characteristics Many short duration transfers Many short duration transfers Connection startup and tear down overhead Connection startup and tear down overhead

Setting optimal parameters for different datasets is a challenging task Setting optimal parameters for different datasets is a challenging task Data Scheduling Services sets static values based on experiences Data Scheduling Services sets static values based on experiences Provided tools do not comply with dynamic intelligent algorithms that might change settings on the fly Provided tools do not comply with dynamic intelligent algorithms that might change settings on the fly

Flexibility to scalable data scheduling algorithms Flexibility to scalable data scheduling algorithms On the fly changes to the optimization parameters On the fly changes to the optimization parameters Reshaping the dataset characteristics Reshaping the dataset characteristics

Lies at the origin of the data scheduling services Lies at the origin of the data scheduling services Dates back to 1980s Dates back to 1980s Earliest approaches: List scheduling Earliest approaches: List scheduling Sort the transfers based on size, bandwidth of the path or duration of the transfer Sort the transfers based on size, bandwidth of the path or duration of the transfer Near-optimal solution Near-optimal solution Integer programming – not feasible to implement Integer programming – not feasible to implement

Scalable approaches: Scalable approaches: Transferring from multiple replicas Transferring from multiple replicas Divided datasets sent over different paths to make use of additional network bandwidth Divided datasets sent over different paths to make use of additional network bandwidth Adaptive approaches Adaptive approaches Divide files into multiple portions to send over parallel streams Divide files into multiple portions to send over parallel streams Divide dataset into multiple portions and send at the same time Divide dataset into multiple portions and send at the same time Adaptively change level of concurrency or parallelism based on network throughput Adaptively change level of concurrency or parallelism based on network throughput Optimization algorithms Optimization algorithms Find optimal settings via modeling and set the optimal parameters once and for all Find optimal settings via modeling and set the optimal parameters once and for all

Modern Day Data Scheduling Service Example Modern Day Data Scheduling Service Example Globus Online Globus Online Hosted SaaS Hosted SaaS Statically set pipelining, concurrency and parallelism Statically set pipelining, concurrency and parallelism Stork Stork Multi-protocol support Multi-protocol support Finds optimal parallelism level based on modeling Finds optimal parallelism level based on modeling Static job concurrency Static job concurrency

Allow dataset transfers to be Allow dataset transfers to be Enqueued, dequeued Enqueued, dequeued Sorted based on a property Sorted based on a property Divided, combined into chunks Divided, combined into chunks Grouped by source-destination paths Grouped by source-destination paths Done from multiple replicas Done from multiple replicas

Lacks of globus-url-copy Lacks of globus-url-copy Does not let even static setting of pipelining, uses its own default value invisible to the user Does not let even static setting of pipelining, uses its own default value invisible to the user globus-url-copy -pp -p 5 -cc 4 src url dest url globus-url-copy -pp -p 5 -cc 4 src url dest url A directory of files can not be divided and set different optimization parameters A directory of files can not be divided and set different optimization parameters Filelist option does help but it can not apply pipelining on the list as the developers indicates Filelist option does help but it can not apply pipelining on the list as the developers indicates globus-url-copy -pp -p 5 -cc 4 -f filelist.txt globus-url-copy -pp -p 5 -cc 4 -f filelist.txt

File data structure properties File data structure properties File size: used to construct data chunks based on total size, throughput calculation, transfer duration calculation File size: used to construct data chunks based on total size, throughput calculation, transfer duration calculation Source and destination paths: necessary for combining and dividing datasets, changing the source path based on replica location Source and destination paths: necessary for combining and dividing datasets, changing the source path based on replica location File name: Necessary to reconstruct full paths File name: Necessary to reconstruct full paths

Listing the files for a given path Listing the files for a given path Contacts the GridFTP server Contacts the GridFTP server Pulls information about the files in the given path Pulls information about the files in the given path Provides a list of file data structures including the number of files Provides a list of file data structures including the number of files Makes it easier to divide, combine, sort, enqueue and dequeue on a list of files Makes it easier to divide, combine, sort, enqueue and dequeue on a list of files

Performing the actual transfer Performing the actual transfer Sets the optimization parameters on a list of files returned by the list function and manipulated by different algorithms Sets the optimization parameters on a list of files returned by the list function and manipulated by different algorithms For a data chunk it sets the parallel stream, concurrency and pipelining value For a data chunk it sets the parallel stream, concurrency and pipelining value

Takes a file list structure returned by the list function as input Takes a file list structure returned by the list function as input Divides the file list into chunks based on the number of files in a chunk Divides the file list into chunks based on the number of files in a chunk Starting with concurrency level of 1, transfer each chunk with an exponentially increasing concurrency level as long as the throughput increases by each chunk transfer Starting with concurrency level of 1, transfer each chunk with an exponentially increasing concurrency level as long as the throughput increases by each chunk transfer If the throughput drops adaptively the concurrency level is also decreased for the subsequent chunk transfer If the throughput drops adaptively the concurrency level is also decreased for the subsequent chunk transfer

Mean-based algorithm to construct clusters of files with different optimal pipelining levels Mean-based algorithm to construct clusters of files with different optimal pipelining levels Calculates optimal pipelining level by dividing BDP into mean file size of the chunk Calculates optimal pipelining level by dividing BDP into mean file size of the chunk Dataset is recursively divided by the mean file size index as long as the following conditions are met: Dataset is recursively divided by the mean file size index as long as the following conditions are met: A chunk can only be divided further as long as its pipelining level is different than its parent chunk A chunk can only be divided further as long as its pipelining level is different than its parent chunk A chunk can not be less than a preset minimum chunk size A chunk can not be less than a preset minimum chunk size Optimal pipelining level for a chunk cannot be greater than a preset maximum pipelining level Optimal pipelining level for a chunk cannot be greater than a preset maximum pipelining level

After the recursive division of chunks, pp opt is set for each chunk After the recursive division of chunks, pp opt is set for each chunk Chunks go through a revision phase where smaller chunks are combined and larger chunks are further divided Chunks go through a revision phase where smaller chunks are combined and larger chunks are further divided Starting with cc = 1, each chunk is transferred with exponentially increased cc levels until throughput drops down Starting with cc = 1, each chunk is transferred with exponentially increased cc levels until throughput drops down The rest of the chunks are transferred with the optimal cc level The rest of the chunks are transferred with the optimal cc level

Large nodes with 2vCPUs, 8GB storage, 7.5 GB memory and moderate network performance Large nodes with 2vCPUs, 8GB storage, 7.5 GB memory and moderate network performance 50ms artificial delay 50ms artificial delay Globus Provision is used to automatic setup of servers Globus Provision is used to automatic setup of servers Datasets comprise of many number of small files (most difficult optimization case) Datasets comprise of many number of small files (most difficult optimization case) MB files MB files 1000 random size files in range 1Byte to 10MB 1000 random size files in range 1Byte to 10MB

Baseline performance: Default pipelining+data channel caching Baseline performance: Default pipelining+data channel caching Throughput achieved is higher than baseline for majority of cases Throughput achieved is higher than baseline for majority of cases

The flexible GridFTP client has the ability to comply with different natured data scheduling algorithms The flexible GridFTP client has the ability to comply with different natured data scheduling algorithms Adaptive and optimization algorithms easily sort, divide and combine datasets Adaptive and optimization algorithms easily sort, divide and combine datasets Possibility to implement intelligent cloud scheduling services in an easier way Possibility to implement intelligent cloud scheduling services in an easier way