Scale up Vs. Scale out in Cloud Storage and Graph Processing Systems

Slides:



Advertisements
Similar presentations
Phase Reconciliation for Contended In-Memory Transactions Neha Narula, Cody Cutler, Eddie Kohler, Robert Morris MIT CSAIL and Harvard 1.
Advertisements

1. Topics Is Cloud Computing the way to go? ARC ABM Review Configuration Basics Setting up the ARC Cloud-Based ABM Hardware Configuration Software Configuration.
Cloud Computing Resource provisioning Keke Chen. Outline  For Web applications statistical Learning and automatic control for datacenters  For data.
1 Distributed Systems Meet Economics: Pricing in Cloud Computing Hadi Salimi Distributed Systems Lab, School of Computer Engineering, Iran University of.
Pei Fan*, Ji Wang, Zibin Zheng, Michael R. Lyu Toward Optimal Deployment of Communication-Intensive Cloud Applications 1.
Discretized Streams: Fault-Tolerant Streaming Computation at Scale Wenting Wang 1.
Milestone 1 Workshop in Information Security – Distributed Databases Project Access Control Security vs. Performance By: Yosi Barad, Ainat Chervin and.
LFGRAPH: SIMPLE AND FAST DISTRIBUTED GRAPH ANALYTICS Hoque, Imranul, Vmware Inc. and Gupta, Indranil, University of Illinois at Urbana-Champaign – TRIOS.
Lincoln University Canterbury New Zealand Evaluating the Parallel Performance of a Heterogeneous System Elizabeth Post Hendrik Goosen formerly of Department.
The University of Adelaide, School of Computer Science
 Need for a new processing platform (BigData)  Origin of Hadoop  What is Hadoop & what it is not ?  Hadoop architecture  Hadoop components (Common/HDFS/MapReduce)
Cross-Layer Scheduling in Cloud Systems Hilfi Alkaff, Indranil Gupta, Luke Leslie Department of Computer Science University of Illinois at Urbana-Champaign.
Undergraduate Poster Presentation Match 31, 2015 Department of CSE, BUET, Dhaka, Bangladesh Wireless Sensor Network Integretion With Cloud Computing H.M.A.
Distributed Systems Meet Economics: Pricing In The Cloud Authors: Hongyi Wang, Qingfeng Jing, Rishan Chen, Bingsheng He, Zhengping He, Lidong Zhou Presenter:
MATE-EC2: A Middleware for Processing Data with Amazon Web Services Tekin Bicer David Chiu* and Gagan Agrawal Department of Compute Science and Engineering.
Nexenta Proprietary Global Leader in Software Defined Storage Nexenta Technical Sales Professional (NTSP) COURSE CONTENT.
Measuring zSeries System Performance Dr. Chu J. Jong School of Information Technology Illinois State University 06/11/2012 Sponsored in part by Deer &
Apache Spark and the future of big data applications Eric Baldeschwieler.
Harold C. Lim, Shinath Baba and Jeffery S. Chase from Duke University AUTOMATED CONTROL FOR ELASTIC STORAGE Presented by: Yonggang Liu Department of Electrical.
Titan Graph Database Meet Bhatt(13MCEC02).
Cloud MapReduce : a MapReduce Implementation on top of a Cloud Operating System Speaker : 童耀民 MA1G Authors: Huan Liu, Dan Orban Accenture.
Yongzhi Wang, Jinpeng Wei VIAF: Verification-based Integrity Assurance Framework for MapReduce.
Heterogeneity and Dynamicity of Clouds at Scale: Google Trace Analysis [1] 4/24/2014 Presented by: Rakesh Kumar [1 ]
Storage Management in Virtualized Cloud Environments Sankaran Sivathanu, Ling Liu, Mei Yiduo and Xing Pu Student Workshop on Frontiers of Cloud Computing,
Improving Network I/O Virtualization for Cloud Computing.
Hadoop/MapReduce Computing Paradigm 1 Shirish Agale.
Introduction to Hadoop and HDFS
An Autonomic Framework in Cloud Environment Jiedan Zhu Advisor: Prof. Gagan Agrawal.
Block1 Wrapping Your Nugget Around Distributed Processing.
Eneryg Efficiency for MapReduce Workloads: An Indepth Study Boliang Feng Renmin University of China Dec 19.
VGreen: A System for Energy Efficient Manager in Virtualized Environments G. Dhiman, G Marchetti, T Rosing ISLPED 2009.
Computing Scientometrics in Large-Scale Academic Search Engines with MapReduce Leonidas Akritidis Panayiotis Bozanis Department of Computer & Communication.
U N I V E R S I T Y O F S O U T H F L O R I D A Hadoop Alternative The Hadoop Alternative Larry Moore 1, Zach Fadika 2, Dr. Madhusudhan Govindaraju 2 1.
HADOOP DISTRIBUTED FILE SYSTEM HDFS Reliability Based on “The Hadoop Distributed File System” K. Shvachko et al., MSST 2010 Michael Tsitrin 26/05/13.
CS525: Big Data Analytics MapReduce Computing Paradigm & Apache Hadoop Open Source Fall 2013 Elke A. Rundensteiner 1.
DynamicMR: A Dynamic Slot Allocation Optimization Framework for MapReduce Clusters Nanyang Technological University Shanjiang Tang, Bu-Sung Lee, Bingsheng.
Dynamo: Amazon’s Highly Available Key-value Store DAAS – Database as a service.
ApproxHadoop Bringing Approximations to MapReduce Frameworks
PROOF Benchmark on Different Hardware Configurations 1 11/29/2007 Neng Xu, University of Wisconsin-Madison Mengmeng Chen, Annabelle Leung, Bruce Mellado,
1 Benchmarking Cloud Serving Systems with YCSB Brian F. Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan and Russell Sears Yahoo! Research.
Information Eastman. Business Process Skills Order to Cash, Forecasting & Budgeting, etc. Process Modeling Project Management Technical Skills.
Virtual Machine in HPC PAK MARKTHUB (13M54040) 1 VIRTUAL MACHINE IN HPC.
Configuring SQL Server for a successful SharePoint Server Deployment Haaron Gonzalez Solution Architect & Consultant Microsoft MVP SharePoint Server
PACMan: Coordinated Memory Caching for Parallel Jobs Ganesh Ananthanarayanan, Ali Ghodsi, Andrew Wang, Dhruba Borthakur, Srikanth Kandula, Scott Shenker,
Stela: Enabling Stream Processing Systems to Scale-in and Scale-out On- demand Le Xu ∗, Boyang Peng†, Indranil Gupta ∗ ∗ Department of Computer Science,
Spark on Entropy : A Reliable & Efficient Scheduler for Low-latency Parallel Jobs in Heterogeneous Cloud Huankai Chen PhD Student at University of Kent.
Hadoop Javad Azimi May What is Hadoop? Software platform that lets one easily write and run applications that process vast amounts of data. It includes:
Network Requirements for Resource Disaggregation
Hadoop Aakash Kag What Why How 1.
NoSQL Stores for Coreless Mobile Networks
How Much SSD Is Useful For Resilience In Supercomputers
Introduction to Distributed Platforms
Advanced Topics in Concurrency and Reactive Programming: Case Study – Google Cluster Majeed Kassis.
Guangxiang Du*, Indranil Gupta
International Conference on Data Engineering (ICDE 2016)
Diskpool and cloud storage benchmarks used in IT-DSS
The CAT Theorem Shegufta Ahsan, Indranil Gupta
Running virtualized Hadoop, does it make sense?
Sebastian Solbach Consulting Member of Technical Staff
”The Ball” Radical Cloud Resource Consolidation
PA an Coordinated Memory Caching for Parallel Jobs
Comparison of the Three CPU Schedulers in Xen
Benchmarking Modern Distributed Stream Processing Systems
Boyang Peng, Le Xu, Indranil Gupta
The Basics of Apache Hadoop
湖南大学-信息科学与工程学院-计算机与科学系
Omega: flexible, scalable schedulers for large compute clusters
Henge: Intent-Driven Multi-Tenant Stream Processing
Benchmarking Cloud Serving Systems with YCSB
Resource-Efficient and QoS-Aware Cluster Management
Presentation transcript:

Scale up Vs. Scale out in Cloud Storage and Graph Processing Systems Wenting Wang Le Xu Indranil Gupta Department of Computer Science, University of Illinois, Urbana Champaign

Scale up VS. Scale out A dilemma for cloud application users: scale up or scale out? Scale up: one machine with high hardware configuration Scale out: cluster composed by wimpy machines

Question: Is scale out always better than scale up? Scale up VS. Scale out Systems are designed in a scaling out way… Scale-up vs Scale-out for Hadoop: Time to rethink?(2013) “A single “scale-up” server can process each of these jobs and do as well or better than a cluster in terms of performance, cost, power, and server density” What about other systems? Question: Is scale out always better than scale up?

Contributions Set up pricing models using public cloud pricing scheme Linear Square fit on CPU, Memory and Storage Estimation for arbitrary configuration Provide deployment guidance for users with dollar budget caps or minimum throughput requirements in homogeneous environment Apache Cassandra, the most popular open-source distributed key-value store GraphLab, a popular open-source distributed graph processing system

Scale up VS. Scale out - Storage Cassandra Metrics Throughput: ops per sec Cost: $ per hour Normalized Metric Cost efficiency = Throughput / Cost

Scale up VS. Scale out - Storage YCSB workload Yahoo Cloud Serving Benchmark: A database micro-benchmark tool Read heavy, write heavy workload on Zipf Distribution 1 Million operations on 1GB database Metrics: Performance(Ops/s), Cost($/hour) and Cost efficiency Homogeneous Experiment Settings: Scale out cluster: 4, 8, 16 machines (0.09$/hour) Scale up machine(3.34$/hour) Heterogeneous Experiment Settings: A mixture of beefy and wimpy machines Cost(beefy) = Cost(wimpy) X 4

Homogeneous - Cassandra Budget-constrained Min throughput requirement Light workloads Scale out with small number of nodes If throughput low Scale out Else Scale up Heavy workloads If $ constraint low Scale out is only option

Homogeneous - Cassandra Performance(Ops/s) Main variable tuned: Workload intensity, scale out cluster size - With a high threshold of throughput requirement, scale up is preferable

Homogeneous - Cassandra Cost 4 8 16

Homogeneous - Cassandra Cost Efficiency Main variable tuned: Workload intensity, scale out cluster size

Homogeneous - Cassandra Light workload: Scale out cluster has a better cost efficiency comparing to scale up while cluster size is small. Heavy workload: scale up is always better in terms of cost efficiency In terms of scale out size, small is always better Scale up & Scale out under different workload intensity

Homogeneous - Cassandra Budget-constrained Min throughput requirement Light workloads Scale out with small number of nodes If throughput low Scale out Else Scale up Heavy workloads If $ constraint low Scale out is only option

Heterogeneous - Cassandra Main variable tuned: machine ratio, workload intensity Adding one beefy node to the cluster significantly improves throughput, as the node serves as a contact point Lower marginal benefits while the number of beefy nodes increases Machine Ratio (# of beefy nodes : # of wimpy nodes) VS. Cost Efficiency under different workload intensity

Heterogeneous - Cassandra Main variable tuned: vnode ratio, workload intensity Under light workload, performance increases as the beefy node partition grows Under intense workload, beefy node becomes the bottleneck for the entire system. Vnode Rate (# of wimpy nodes Vnode : # of beefy nodes Vnode) VS. Cost Efficiency under different workload intensity (machine ratio 1:12)

Scale up VS. Scale out - GraphLab GraphLab Metrics Throughput: MB per sec Cost: Total $ for a workload since batch processing system Normalized metric Cost efficiency = Throughput / Cost

Experimental Settings Page Rank Homogeneous Settings One scale up machine(3.34$/hour) Two scale out clusters with 4, 8, 16 machines Weak configuration (1 core/machine) – pc3000 (0.09$/hour) Strong configuration (4 cores/machine) – d710 (0.34$/hour) Heterogeneous Settings A mixture of beefy and wimpy machines Job Data set Input |V| |E| Small Live Journal 1G 4.8M 68M Large Twitter 6G 41.6M 1.5G

Homogeneous - GraphLab Budget-constrained Min throughput requirement Small Jobs Scale out with small number of nodes (allow parallelization) Scale out with small number of nodes Large jobs Scale up Scale out with large number of nodes

Homogeneous - GraphLab Performance(MB/s) Small job Large job Minimum requirement for the quality of scale out cluster Scale out performs better than scale up

Homogeneous - GraphLab Cost= completion time * cluster/ scale up machine unit price Small job Large job Beefy machine is sometimes the cheapest choice

Homogeneous - GraphLab Cost Efficiency (Throughput/$) Small job Large job Scale out cluster in small size achieves best cost efficiency

Homogeneous - GraphLab Budget-constrained Min throughput requirement Small Jobs Scale out with small number of nodes (allow parallelization) Scale out with small number of nodes Large jobs Scale up Scale out with large number of nodes

Heterogeneous - GraphLab Vary 𝑡ℎ𝑒 # 𝑜𝑓 𝑝𝑟𝑜𝑐𝑒𝑠𝑠𝑒𝑠 𝑖𝑛 𝑤ℎ𝑖𝑚𝑝𝑦 𝑚𝑎𝑐ℎ𝑖𝑛𝑒 𝑡ℎ𝑒 𝑛𝑢𝑚𝑏𝑒𝑟 𝑜𝑓 𝑝𝑟𝑜𝑐𝑒𝑠𝑠𝑒𝑠 𝑖𝑛 𝑏𝑒𝑒𝑓𝑦 𝑚𝑎𝑐ℎ𝑖𝑛𝑒 Vary 𝑡ℎ𝑒 # 𝑜𝑓𝑤ℎ𝑖𝑚𝑝𝑦 𝑚𝑎𝑐ℎ𝑖𝑛𝑒𝑠 𝑡ℎ𝑒 𝑛𝑢𝑚𝑏𝑒𝑟 𝑜𝑓 𝑏𝑒𝑒𝑓𝑦 𝑚𝑎𝑐ℎ𝑖𝑛𝑒𝑠 with fixed budget Better cost efficiency can be achieved by More processes running on beefy machine Fewer wimpy machines(stragglers)

To sum up… What have we done: Future work Pricing model based on major cloud providers General guidance between scale up vs. scale out The choice is sensitive to workload intensity, job size, dollar budget, and throughput requirements Explore implications when using heterogeneous mix of machines Future work A quantitative way to map hardware configuration to cost efficiency Latency, network usage, resource utilization/profiling, fault tolerance And many more… Find our work at http://dprg.cs.uiuc.edu

How do we set up the pricing model From AWS pricing March -2014 Linear least square fit, using three variables: CPU, memory, storage VCPU count Memory Size (GiB) SSD Storage Size (GiB) Price per hour ($) 7 3.75 32 0.15 14 7.5 80 0.3 28 15 160 0.6 55 30 320 1.2

Linear Pricing Model AWS instance pricing model 0.0094 0.0208 0.002 VCPU in SSD model ($/count) Memory in SSD model ($/GiB) SSD Storage ($/GiB) VCPU in non SSD model ($/count) Memory in non SSD model ($/GiB) Non SSD Storage ($/GiB) 0.0094 0.0208 0.002 0.0155 0.0106 0.0001 VCPU count Memory Size (GiB) SSD Storage Size (GiB) Price per hour ($) Linear model estimation ($) Error ($) 7 3.75 32 0.15 0.1504 +0.004 6.5 7.5 0.225 0.2237 -0.0013 13 15 80 0.45 0.4507 +0.007 108 60 640 2.4 2.3940 -0.006 VCPU count Memory Size (GiB) Non SSD Storage Size (GiB) Price per hour ($) Linear model estimation ($) Error ($) 2 3.75 410 0.12 0.1190 -0.001 20 7 1680 0.58 0.5817 +0.0017 88 60.5 3360 2.4 2.4001 +0.001

Contribution of our work Setting up pricing model Storage (Cassandra) Homogeneous: Scale out using a small cluster only when there is a dollar budget cap and low throughput requirements, scale up in any other cases. Heterogeneous: beefy node is preferable, assigning larger data partition to the beefy node without overwhelms it. Graph processing GraphLab performance and cost efficiency under homogeneous environment GraphLab performance and cost efficiency under heterogeneous environment