Stela: Enabling Stream Processing Systems to Scale-in and Scale-out On- demand Le Xu ∗, Boyang Peng†, Indranil Gupta ∗ ∗ Department of Computer Science,

Slides:



Advertisements
Similar presentations
Making Time-stepped Applications Tick in the Cloud Tao Zou, Guozhang Wang, Marcos Vaz Salles*, David Bindel, Alan Demers, Johannes Gehrke, Walker White.
Advertisements

Efficient Event-based Resource Discovery Wei Yan*, Songlin Hu*, Vinod Muthusamy +, Hans-Arno Jacobsen +, Li Zha* * Chinese Academy of Sciences, Beijing.
Alex Cheung and Hans-Arno Jacobsen August, 14 th 2009 MIDDLEWARE SYSTEMS RESEARCH GROUP.
Dynamic Thread Assignment on Heterogeneous Multiprocessor Architectures Pree Thiengburanathum Advanced computer architecture Oct 24,
LIBRA: Lightweight Data Skew Mitigation in MapReduce
SLA-Oriented Resource Provisioning for Cloud Computing
1/1/ /e/e eindhoven university of technology Microprocessor Design Course 5Z008 Dr.ir. A.C. (Ad) Verschueren Eindhoven University of Technology Section.
Towards Autonomic Adaptive Scaling of General Purpose Virtual Worlds Deploying a large-scale OpenSim grid using OpenStack cloud infrastructure and Chef.
A Scalable, Predictable Join Operator for Highly Concurrent Data Warehouses George Candea (EPFL & Aster Data) Neoklis Polyzotis (UC Santa Cruz) Radek Vingralek.
Introduction to DBA.
Distributed Multimedia Systems
Introduction CSCI 444/544 Operating Systems Fall 2008.
Meeting Service Level Objectives of Pig Programs Zhuoyao Zhang, Ludmila Cherkasova, Abhishek Verma, Boon Thau Loo University of Pennsylvania Hewlett-Packard.
Computer Performance CS350 Term Project-Spring 2001 Elizabeth Cramer Bryan Driskell Yassaman Shayesteh.
1 of 16 April 25, 2006 Minimizing System Modification in an Incremental Design Approach Paul Pop, Petru Eles, Traian Pop, Zebo Peng Department of Computer.
Cross-Layer Scheduling in Cloud Systems Hilfi Alkaff, Indranil Gupta, Luke Leslie Department of Computer Science University of Illinois at Urbana-Champaign.
CS 3013 & CS 502 Summer 2006 Scheduling1 The art and science of allocating the CPU and other resources to processes.
Scheduling with Optimized Communication for Time-Triggered Embedded Systems Slide 1 Scheduling with Optimized Communication for Time-Triggered Embedded.
Performance Evaluation of Load Sharing Policies on a Beowulf Cluster James Nichols Marc Lemaire Advisor: Mark Claypool.
An Adaptive Multi-Objective Scheduling Selection Framework For Continuous Query Processing Timothy M. Sutherland Bradford Pielech Yali Zhu Luping Ding.
1 of 14 1 / 18 An Approach to Incremental Design of Distributed Embedded Systems Paul Pop, Petru Eles, Traian Pop, Zebo Peng Department of Computer and.
PNUTS: YAHOO!’S HOSTED DATA SERVING PLATFORM FENGLI ZHANG.
On Availability of Intermediate Data in Cloud Computations Steven Y. Ko, Imranul Hoque, Brian Cho, and Indranil Gupta Distributed Protocols Research Group.
Berlin SPARQL Benchmark (BSBM) Presented by: Nikhil Rajguru Christian Bizer and Andreas Schultz.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
1 Fast Failure Recovery in Distributed Graph Processing Systems Yanyan Shen, Gang Chen, H.V. Jagadish, Wei Lu, Beng Chin Ooi, Bogdan Marius Tudor.
AUTHORS: STIJN POLFLIET ET. AL. BY: ALI NIKRAVESH Studying Hardware and Software Trade-Offs for a Real-Life Web 2.0 Workload.
Profile Driven Component Placement for Cluster-based Online Services Christopher Stewart (University of Rochester) Kai Shen (University of Rochester) Sandhya.
Introduction to Hadoop and HDFS
Scheduling Strategies Operating Systems Spring 2004 Class #10.
A Framework for Elastic Execution of Existing MPI Programs Aarthi Raveendran Graduate Student Department Of CSE 1.
A Survey of Distributed Task Schedulers Kei Takahashi (M1)
CDA 3101 Fall 2013 Introduction to Computer Organization Computer Performance 28 August 2013.
Euro-Par, A Resource Allocation Approach for Supporting Time-Critical Applications in Grid Environments Qian Zhu and Gagan Agrawal Department of.
ACMSE’04, ALDepartment of Electrical and Computer Engineering - UAH Execution Characteristics of SPEC CPU2000 Benchmarks: Intel C++ vs. Microsoft VC++
Energy Management in Virtualized Environments Gaurav Dhiman, Giacomo Marchetti, Raid Ayoub, Tajana Simunic Rosing (CSE-UCSD) Inside Xen Hypervisor Online.
Using Map-reduce to Support MPMD Peng
MROrder: Flexible Job Ordering Optimization for Online MapReduce Workloads School of Computer Engineering Nanyang Technological University 30 th Aug 2013.
VMware vSphere Configuration and Management v6
Department of Computer Science MapReduce for the Cell B. E. Architecture Marc de Kruijf University of Wisconsin−Madison Advised by Professor Sankaralingam.
Scale up Vs. Scale out in Cloud Storage and Graph Processing Systems
DynamicMR: A Dynamic Slot Allocation Optimization Framework for MapReduce Clusters Nanyang Technological University Shanjiang Tang, Bu-Sung Lee, Bingsheng.
Dzmitry Kliazovich University of Luxembourg, Luxembourg
1 Adaptive Parallelism for Web Search Myeongjae Jeon Rice University In collaboration with Yuxiong He (MSR), Sameh Elnikety (MSR), Alan L. Cox (Rice),
Data Communications and Networks Chapter 9 – Distributed Systems ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
Final Implementation of a High Performance Computing Cluster at Florida Tech P. FORD, X. FAVE, K. GNANVO, R. HOCH, M. HOHLMANN, D. MITRA Physics and Space.
Lecture 5: 9/10/2002CS170 Fall CS170 Computer Organization and Architecture I Ayman Abdel-Hamid Department of Computer Science Old Dominion University.
EGRE 426 Computer Organization and Design Chapter 4.
1 Multipath Routing in WSN with multiple Sink nodes YUEQUAN CHEN, Edward Chan and Song Han Department of Computer Science City University of HongKong.
Adaptive Online Scheduling in Storm Paper by Leonardo Aniello, Roberto Baldoni, and Leonardo Querzoni Presentation by Keshav Santhanam.
Supporting On-Demand Elasticity in Distributed Graph Processing Mayank Pundir*, Manoj Kumar, Luke M. Leslie, Indranil Gupta, Roy H. Campbell University.
Yiting Xia, T. S. Eugene Ng Rice University
R-Storm: Resource Aware Scheduling in Storm
Monitoring Windows Server 2012
Chris Cai, Shayan Saeed, Indranil Gupta, Roy Campbell, Franck Le
Guangxiang Du*, Indranil Gupta
International Conference on Data Engineering (ICDE 2016)
Towards Traffic Light Control through a Multiagent Cooperative System:
The Problem Finding a needle in haystack An expert (CPU)
Benchmarking Modern Distributed Stream Processing Systems
Boyang Peng, Le Xu, Indranil Gupta
湖南大学-信息科学与工程学院-计算机与科学系
MapReduce: Data Distribution for Reduce
CMSC 611: Advanced Computer Architecture
Degree-aware Hybrid Graph Traversal on FPGA-HMC Platform
Jason Neih and Monica.S.Lam
Henge: Intent-Driven Multi-Tenant Stream Processing
CMSC 611: Advanced Computer Architecture
Computer Organization and Design Chapter 4
EdgeWise: A Better Stream Processing Engine for the Edge
Presentation transcript:

Stela: Enabling Stream Processing Systems to Scale-in and Scale-out On- demand Le Xu ∗, Boyang Peng†, Indranil Gupta ∗ ∗ Department of Computer Science, University of Illinois, Urbana Champaign, †Yahoo! Inc., DPRG UIUC: 1

Elasticity: -What is elasticity? -System’s ability to scale out and scale in to adapt its workload change. -Important for real time stream processing systems -Existing Elasticity support in adaptive elasticity in stream processing systems -System S, Stormy, SEEP, etc. -What if the resource change is determined by users (on-demand) 2

Scale-out And Scale-in On-demand: -Why is it important? -Current systems, such as Storm, handles this inefficiently -Our two goals: -The post-scaling throughput (tuples per sec) should be optimized. -The interruption to the ongoing computation (while the scaling operation is being carried out) should be minimized. 3

Contributions of System Stela: 1.Development of novel metric ETP (Effective Throughput Percentage) 2.First work to describe and implement on-demand elasticity within Storm It requires neither hardware profiling nor knowledge of application code. We believe our solution can be applied to many other systems as well. 3.Evaluation of our system on micro-benchmark applications as well as on applications used in production 4

Data Processing Model - Directed acyclic graph of operators - Operators are stateless - Each operator is run by one or multiple instances (executors) at the same time 5

Effective Throughput Percentage (ETP) - The percentage impact that an operator has towards the application throughput. - Effective throughput of operator o is the throughput of uncongested subcomponent of this operator An example of congested topology. (All execution rate in tuples/sec) 6

Find ETP For Each Operator An example of congested topology. (All execution rate in tuples/sec) 7 Output: 1000 tuples/s ETP of operator 3: ( )/ 4500=4/9 Component #ETP Uncongested Subcomponent: A collection of uncongested paths leads to outputs.

Stela Scale-out Component #ETP

Stela Scale-out: Step 1 9 Number of Instance slots: 10/5 = 2 + ? ? compute N: # of instances being added on new machines N = # of new machines * current instance count / current machine count

Stela Scale-out: Step ? ? Component #ETP For each instance slot: Pick component C with highest ETP

Stela Scale-out: Step ? Component #ETP For each instance slot: Pick component C with highest ETP

Stela Scale-out: Step For each instance slot: 3. Update C’s execution rate assuming new instance assigned. ? 3 Component #ETP > Component #ETP

Stela Scale-out: Step ?3 4. Update all components’ ETPs and repeat from 1. 4 Component #ETP >

Stela Scale-in: Step 1 14 Which machine to remove? 1. Find ETPSum for all machines ETP: 0ETP: 0.88ETP: 0.55ETP: 0.44ETP:

Stela Scale-in: Step 2 15 ETP: 0ETP: 0.88ETP: 0.55ETP: 0.44ETP: Remove machine with lowest ETP Sum

Stela Scale-in: Step 3 16 ETP: 0.88ETP: 0.55ETP: 0.44ETP: 0.11 Ranked machine by ETPSum: 0.11<0.44<0.55< Round Robin schedule instances on removed machine starting with machine with lowest ETPSum

Stela Architecture 17

Evaluation Experimental Setup (Emulab) 4-6 machines for micro- benchmark, 8 to 9 machines for real-world workload Scaling strategy: Storm Default Stela Linkedbase Load [1] 18 PC3000D710 Processor3 GHZ dual core processor 2.4 GHz 64-bit Quad Core Memory2GB12GB Storage146 GB SCSI disks 750 GB SATA disks [1] L. Aniello, R. Baldoni, and L. Querzoni, “Adaptive online scheduling in Storm,” in Proceedings of the 7th ACM International Conference on Distributed Event-based Systems. ACM, 2013, pp. 207–218.

Micro-Benchmark Topologies 19 Linear Topology Diamond Processing Topology Star Topology

Micro-Benchmark Experimental Results Star: Cluster size 4 -> 5 Executor size 20 -> 25 Linear: Cluster size 6 -> 7 Executor size 20 -> 23 Diamond: Cluster size 6 -> 7 Executor size 36 -> % +45% +120%

Real-world Topologies 21 Yahoo PageLoad Topology Yahoo Processing Topology IBM Network Topology

Real-world Topologies Experimental Results 22 PageLoad Topology: Cluster size 7 -> 8 Executor size 28 -> 36 Processing Topology Cluster size 8 -> 9 Executor size 32 -> 36 Network Topology Cluster size 8 -> 9 Executor size 32 -> % +20% +80%

Convergence Time 23 Yahoo Topology -Convergence time: the time it takes for the topology to reach its average post scale throughput. -Stela achieves shorter convergence time due to smart choice of executors restarted.

Scale-in Experiments Stela achieves 87.5% and 75% less down time 24 Selecting the correct machine to remove is important Chance of Storm to pick the right set of machine(s) to remove is small (21% in this case)

Summary First work to describe and implement on-demand elasticity within Storm Takeaway: Development of novel metric ETP, which can be generally applied to most stream processing systems. For scale-out, Stela achieves throughput that is % higher than Storm’s reduces interruption to 12.5% For scale-in, Stela performs % better Ongoing work: Multi-tenant adaptive stream processing 25

Thank you! DPRG: