SkewTune: Mitigating Skew in MapReduce Applications

Slides:



Advertisements
Similar presentations
Lecture 12: MapReduce: Simplified Data Processing on Large Clusters Xiaowei Yang (Duke University)
Advertisements

MapReduce.
Piccolo: Building fast distributed programs with partitioned tables Russell Power Jinyang Li New York University.
SkewReduce YongChul Kwon Magdalena Balazinska, Bill Howe, Jerome Rolia* University of Washington, *HP Labs Skew-Resistant Parallel Processing of Feature-Extracting.
Overview of MapReduce and Hadoop
LIBRA: Lightweight Data Skew Mitigation in MapReduce
MapReduce Online Created by: Rajesh Gadipuuri Modified by: Ying Lu.
MapReduce Online Veli Hasanov Fatih University.
Cloud Computing Resource provisioning Keke Chen. Outline  For Web applications statistical Learning and automatic control for datacenters  For data.
Meeting Service Level Objectives of Pig Programs Zhuoyao Zhang, Ludmila Cherkasova, Abhishek Verma, Boon Thau Loo University of Pennsylvania Hewlett-Packard.
Parallel Database Systems The Future Of High Performance Database Systems David Dewitt and Jim Gray 1992 Presented By – Ajith Karimpana.
Anti-Skew: Single-Key Data Skew Mitigation for MapReduce Yue Chen Florida State University Advanced Database Systems.
Clydesdale: Structured Data Processing on MapReduce Jackie.
Piccolo – Paper Discussion Big Data Reading Group 9/20/2010.
Distributed Computations
Distributed Computations MapReduce
7/14/2015EECS 584, Fall MapReduce: Simplied Data Processing on Large Clusters Yunxing Dai, Huan Feng.
CPS216: Advanced Database Systems (Data-intensive Computing Systems) How MapReduce Works (in Hadoop) Shivnath Babu.
Improving MapReduce Performance Using Smart Speculative Execution Strategy Qi Chen, Cheng Liu, and Zhen Xiao Oct 2013 To appear in IEEE Transactions on.
L22: SC Report, Map Reduce November 23, Map Reduce What is MapReduce? Example computing environment How it works Fault Tolerance Debugging Performance.
MapReduce Simplified Data Processing On large Clusters Jeffery Dean and Sanjay Ghemawat.
MapReduce : Simplified Data Processing on Large Clusters Hongwei Wang & Sihuizi Jin & Yajing Zhang
Nuage Project at UW Magdalena Balazinska University of Washington
Copyright © 2012 Cleversafe, Inc. All rights reserved. 1 Combining the Power of Hadoop with Object-Based Dispersed Storage.
Take An Internal Look at Hadoop Hairong Kuang Grid Team, Yahoo! Inc
Hadoop & Cheetah. Key words Cluster  data center – Lots of machines thousands Node  a server in a data center – Commodity device fails very easily Slot.
Design Patterns for Efficient Graph Algorithms in MapReduce Jimmy Lin and Michael Schatz University of Maryland MLG, January, 2014 Jaehwan Lee.
Advanced Topics: MapReduce ECE 454 Computer Systems Programming Topics: Reductions Implemented in Distributed Frameworks Distributed Key-Value Stores Hadoop.
SIDDHARTH MEHTA PURSUING MASTERS IN COMPUTER SCIENCE (FALL 2008) INTERESTS: SYSTEMS, WEB.
Ch 4. The Evolution of Analytic Scalability
By: Jeffrey Dean & Sanjay Ghemawat Presented by: Warunika Ranaweera Supervised by: Dr. Nalin Ranasinghe.
Map Reduce for data-intensive computing (Some of the content is adapted from the original authors’ talk at OSDI 04)
MapReduce: Simplified Data Processing on Large Clusters Jeffrey Dean and Sanjay Ghemawat.
Cluster-based SNP Calling on Large Scale Genome Sequencing Data Mucahid KutluGagan Agrawal Department of Computer Science and Engineering The Ohio State.
MapReduce: Hadoop Implementation. Outline MapReduce overview Applications of MapReduce Hadoop overview.
Introduction to Hadoop and HDFS
MapReduce How to painlessly process terabytes of data.
MapReduce M/R slides adapted from those of Jeff Dean’s.
MARISSA: MApReduce Implementation for Streaming Science Applications 作者 : Fadika, Z. ; Hartog, J. ; Govindaraju, M. ; Ramakrishnan, L. ; Gunter, D. ; Canon,
Map-Reduce-Merge: Simplified Relational Data Processing on Large Clusters Hung-chih Yang(Yahoo!), Ali Dasdan(Yahoo!), Ruey-Lung Hsiao(UCLA), D. Stott Parker(UCLA)
Processing Theta-Joins using MapReduce
Large-scale Incremental Processing Using Distributed Transactions and Notifications Daniel Peng and Frank Dabek Google, Inc. OSDI Feb 2012 Presentation.
Performance Prediction for Random Write Reductions: A Case Study in Modelling Shared Memory Programs Ruoming Jin Gagan Agrawal Department of Computer and.
MapReduce Kristof Bamps Wouter Deroey. Outline Problem overview MapReduce o overview o implementation o refinements o conclusion.
Bi-Hadoop: Extending Hadoop To Improve Support For Binary-Input Applications Xiao Yu and Bo Hong School of Electrical and Computer Engineering Georgia.
MC 2 : Map Concurrency Characterization for MapReduce on the Cloud Mohammad Hammoud and Majd Sakr 1.
Hung-chih Yang 1, Ali Dasdan 1 Ruey-Lung Hsiao 2, D. Stott Parker 2
Matchmaking: A New MapReduce Scheduling Technique
MROrder: Flexible Job Ordering Optimization for Online MapReduce Workloads School of Computer Engineering Nanyang Technological University 30 th Aug 2013.
Department of Computer Science MapReduce for the Cell B. E. Architecture Marc de Kruijf University of Wisconsin−Madison Advised by Professor Sankaralingam.
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.
MapReduce : Simplified Data Processing on Large Clusters P 謝光昱 P 陳志豪 Operating Systems Design and Implementation 2004 Jeffrey Dean, Sanjay.
Massive Semantic Web data compression with MapReduce Jacopo Urbani, Jason Maassen, Henri Bal Vrije Universiteit, Amsterdam HPDC ( High Performance Distributed.
ApproxHadoop Bringing Approximations to MapReduce Frameworks
A N I N - MEMORY F RAMEWORK FOR E XTENDED M AP R EDUCE 2011 Third IEEE International Conference on Coud Computing Technology and Science.
Page 1 A Platform for Scalable One-pass Analytics using MapReduce Boduo Li, E. Mazur, Y. Diao, A. McGregor, P. Shenoy SIGMOD 2011 IDS Fall Seminar 2011.
Load Rebalancing for Distributed File Systems in Clouds.
INTRODUCTION TO HADOOP. OUTLINE  What is Hadoop  The core of Hadoop  Structure of Hadoop Distributed File System  Structure of MapReduce Framework.
MapReduce: Simplied Data Processing on Large Clusters Written By: Jeffrey Dean and Sanjay Ghemawat Presented By: Manoher Shatha & Naveen Kumar Ratkal.
Only Aggressive Elephants are Fast Elephants Nov 11 th 2013 Database Lab. Wonseok Choi.
Lecture 3 – MapReduce: Implementation CSE 490h – Introduction to Distributed Computing, Spring 2009 Except as otherwise noted, the content of this presentation.
Distributed Programming in “Big Data” Systems Pramod Bhatotia wp
Introduction to MapReduce and Hadoop
MapReduce Simplied Data Processing on Large Clusters
湖南大学-信息科学与工程学院-计算机与科学系
MapReduce: Data Distribution for Reduce
February 26th – Map/Reduce
Cse 344 May 4th – Map/Reduce.
Ch 4. The Evolution of Analytic Scalability
Presentation transcript:

SkewTune: Mitigating Skew in MapReduce Applications YongChul Kwon*, Magdalena Balazinska*, Bill Howe*, Jerome Rolia** *University of Washington, **HP Labs SIGMOD’12 24 Sep 2014 SNU IDB Hyesung Oh

Outline Introduction SkewTune Evaluation Conclusion UDOs with MapReduce Types of skew Past Solutions SkewTune Overview Skew mitigation in SkewTune Skew Detection Skew Mitigation SkewTune For Hadoop Evaluation Skew Mitigation Performance Overhead of Local Scan vs. Parallel Scan Conclusion

Introduction User-defined operations(UDOs) Transparent optimization in UDO Programming -> key goal! accumulate

UDOs with MapReduce MapReduce provides a simple API for writing UDOs Simple map and reduce function Shared-nothing cluster Limitations of MapReduce Skew causes slowing down entire computation Load imbalance can occur map or reduce phases Map-skew Reduce-skew A timing chart of a MapReduce job running the PageRank algorithm from Cloud 9 – case of map-skew

Types of skew First type : uneven distribution of input data Second type : some portions of the input data taking longer process time Input data 1 (large) Mapper 1 Mapper 2 Input data 2

Past solutions Special skew-resistant operators Extra burden to UDOs Only applies to operations that satisfy properties Extremely fine-grained partitions and re-allocating Significant overhead State migration Extra task scheduling Materializing the output of an operator Sampling output and Plan how to repartition it Requires a synchronization barrier between operators Preventing pipelining and online query processing

SkewTune New technique for handling skew in parallel UDOs Implemented by extending Hadoop system Key features Mitigates two types of skew Uneven distribution of data Taking longer to process Optimize unmodified MapReduce programs Preserves interoperability with other UDOs Compatible with pipelining optimizations Does not require any synchronization barrier

Overview Coordinator-worker architecture De-coupled execution On completion of a task, the worker node requests a new task from the coordinator De-coupled execution Operators execute independently of each other Independent record processing Per-task progress estimation Remaining time Per-task statistics Such as total number of (un)processed bytes and records Coordinator Worker 1 Worker 2

Skew mitigation in SkewTune Conceptual skew mitigation in SkewTune

Skew Detection Late Skew Detection Identifying Stragglers Tasks in consecutive phases are decoupled Map tasks can process their input and produce their output as fast as possible Slow remaining tasks are replicated when slots become available Identifying Stragglers Flags skew 𝑡 𝑟𝑒𝑚𝑎𝑖𝑛 2 > 𝜔 𝑡 𝑟𝑒𝑚𝑎𝑖𝑛 : time remaining(seconds), 𝜔 : repartitioning overhead(seconds)

Skew Mitigation - 1 SkewTune uses range partitioning To preserve original output order of the UDO Stopping a straggler Straggler captures the position of its last processed input record Allowing mitigators to skip previously processed input If straggler is impossible or difficult to stop Request fails and the coordinator selects another straggler

Skew Mitigation - 2 Scanning Remaining Input Data Requires inform about the content of data Coordinator needs to know the key values that occur at various points in the data SkewTune collects a compressed summary of the input data The form of a series of key intervals Choosing the Interval Size |S| : total number of slots in the cluster ∆ : the number of unprocessed bytes 𝑠= ∆ 𝑘∗ 𝑆 Lager values of k enable finer-grained data allocation to mitigators Also increase overhead by increasing the number of intervals and size of the data summary Local Scan or Parallel Scan If the size of the remaining straggler data is small -> local scan Else

Skew Mitigation - 3 Planning Mitigators The goal is to find a contiguous order-preserving assignment of intervals to mitigators Two phases Computes the optimal completion time The phase stops when a slot assigned less then 2w work 2w is the largest amount of work such that further repartitioning is not beneficial Sequentially packs the intervals for the earliest available mitigator

SkewTune For Hadoop

Evaluation Twenty-node cluster Following applications Hadoop 0.21.1 2 GHz quad-core CPUs 16GB RAM 750GB SATA disk drive HDFS block size 128MB Following applications Inverted Index Full English Wikipedia archive Page Rank Cloud 9, 2.1GB CloudBurst MapReduce implementation of the RMAP algorithm for short-read gene alignment 1.1GB

Skew Mitigation Performance Ideal case, SkewTune has overhead Extra latency compared with ideal are scheduling overheads An uneven load distribution due to inaccuracies in SkewTune’s simple runtime estimator

Overhead of Local Scan vs. Parallel Scan

Conclusion SkewTune requires no input from users Broadly applicable as it makes no assumptions about the cause of skew Preserving the order and partitioning properties of the output 4X improvement over Hadoop Good Paper