Wei-Chiu Chuang 10/17/2013 Permission to copy/distribute/adapt the work except the figures which are copyrighted by ACM.

Slides:



Advertisements
Similar presentations
The map and reduce functions in MapReduce are easy to test in isolation, which is a consequence of their functional style. For known inputs, they produce.
Advertisements

 Open source software framework designed for storage and processing of large scale data on clusters of commodity hardware  Created by Doug Cutting and.
SDN + Storage.
Mapreduce and Hadoop Introduce Mapreduce and Hadoop
MapReduce Online Created by: Rajesh Gadipuuri Modified by: Ying Lu.
MapReduce Online Veli Hasanov Fatih University.
A Hadoop Overview. Outline Progress Report MapReduce Programming Hadoop Cluster Overview HBase Overview Q & A.
© Hortonworks Inc Running Non-MapReduce Applications on Apache Hadoop Hitesh Shah & Siddharth Seth Hortonworks Inc. Page 1.
Hadoop YARN in the Cloud Junping Du Staff Engineer, VMware China Hadoop Summit, 2013.
Resource Management with YARN: YARN Past, Present and Future
APACHE GIRAPH ON YARN Chuan Lei and Mohammad Islam.
 Need for a new processing platform (BigData)  Origin of Hadoop  What is Hadoop & what it is not ?  Hadoop architecture  Hadoop components (Common/HDFS/MapReduce)
Mesos A Platform for Fine-Grained Resource Sharing in Data Centers Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony D. Joseph, Randy.
Next Generation of Apache Hadoop MapReduce Arun C. Murthy - Hortonworks Founder and Architect Formerly Architect, MapReduce.
Making Apache Hadoop Secure Devaraj Das Yahoo’s Hadoop Team.
MapReduce.
Cloud MapReduce : a MapReduce Implementation on top of a Cloud Operating System Speaker : 童耀民 MA1G Authors: Huan Liu, Dan Orban Accenture.
Distributed and Parallel Processing Technology Chapter6
THE HOG LANGUAGE A scripting MapReduce language. Jason Halpern Testing/Validation Samuel Messing Project Manager Benjamin Rapaport System Architect Kurry.
SOFTWARE SYSTEMS DEVELOPMENT MAP-REDUCE, Hadoop, HBase.
Map Reduce for data-intensive computing (Some of the content is adapted from the original authors’ talk at OSDI 04)
Database Laboratory Regular Seminar TaeHoon Kim.
MapReduce: Simplified Data Processing on Large Clusters Jeffrey Dean and Sanjay Ghemawat.
Presented by CH.Anusha.  Apache Hadoop framework  HDFS and MapReduce  Hadoop distributed file system  JobTracker and TaskTracker  Apache Hadoop NextGen.
Presented By HaeJoon Lee Yanyan Shen, Beng Chin Ooi, Bogdan Marius Tudor National University of Singapore Wei Lu Renmin University Cang Chen Zhejiang University.
Our Experience Running YARN at Scale Bobby Evans.
MapReduce: Hadoop Implementation. Outline MapReduce overview Applications of MapReduce Hadoop overview.
Introduction to Hadoop and HDFS
Mesos A Platform for Fine-Grained Resource Sharing in the Data Center Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony Joseph, Randy.
MapReduce How to painlessly process terabytes of data.
Harp: Collective Communication on Hadoop Bingjing Zhang, Yang Ruan, Judy Qiu.
GreenSched: An Energy-Aware Hadoop Workflow Scheduler
Grid Computing at Yahoo! Sameer Paranjpye Mahadev Konar Yahoo!
MC 2 : Map Concurrency Characterization for MapReduce on the Cloud Mohammad Hammoud and Majd Sakr 1.
 Apache Airavata Architecture Overview Shameera Rathnayaka Graduate Assistant Science Gateways Group Indiana University 07/27/2015.
Presented by: Katie Woods and Jordan Howell. * Hadoop is a distributed computing platform written in Java. It incorporates features similar to those of.
Hadoop implementation of MapReduce computational model Ján Vaňo.
DynamicMR: A Dynamic Slot Allocation Optimization Framework for MapReduce Clusters Nanyang Technological University Shanjiang Tang, Bu-Sung Lee, Bingsheng.
© Hortonworks Inc Hadoop: Beyond MapReduce Steve Loughran, Big Data workshop, June 2013.
 Introduction  Architecture NameNode, DataNodes, HDFS Client, CheckpointNode, BackupNode, Snapshots  File I/O Operations and Replica Management File.
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.
Spark based on PCIe FPGA Board and CMOST
Next Generation of Apache Hadoop MapReduce Owen
Part III BigData Analysis Tools (YARN) Yuan Xue
INTRODUCTION TO HADOOP. OUTLINE  What is Hadoop  The core of Hadoop  Structure of Hadoop Distributed File System  Structure of MapReduce Framework.
1 Student Date Time Wei Li Nov 30, 2015 Monday 9:00-9:25am Shubbhi Taneja Nov 30, 2015 Monday9:25-9:50am Rodrigo Sanandan Dec 2, 2015 Wednesday9:00-9:25am.
Apache Tez : Accelerating Hadoop Query Processing Page 1.
EpiC: an Extensible and Scalable System for Processing Big Data Dawei Jiang, Gang Chen, Beng Chin Ooi, Kian Lee Tan, Sai Wu School of Computing, National.
TensorFlow– A system for large-scale machine learning
Yarn.
Introduction to Distributed Platforms
Software Systems Development
Spark and YARN: Better Together
Distributed Programming in “Big Data” Systems Pramod Bhatotia wp
An Open Source Project Commonly Used for Processing Big Data Sets
Chapter 10 Data Analytics for IoT
MapReduce Simplified Data Processing on Large Cluster
Apache Hadoop YARN: Yet Another Resource Manager
Software Engineering Introduction to Apache Hadoop Map Reduce
Central Florida Business Intelligence User Group
MapReduce Computing Paradigm Basics Fall 2013 Elke A. Rundensteiner
Ministry of Higher Education
MapReduce Simplied Data Processing on Large Clusters
The Basics of Apache Hadoop
湖南大学-信息科学与工程学院-计算机与科学系
Introduction to Apache
Lecture 16 (Intro to MapReduce and Hadoop)
5/7/2019 Map Reduce Map reduce.
COS 518: Distributed Systems Lecture 11 Mike Freedman
MapReduce: Simplified Data Processing on Large Clusters
Presentation transcript:

Wei-Chiu Chuang 10/17/2013 Permission to copy/distribute/adapt the work except the figures which are copyrighted by ACM

 Master: JobTracker (JT)  Worker: Tasktracker (TT) ◦ Fixed # of map slots and reduce slots client Master Node (JobTracker) Master Node (JobTracker) Worker Node (TaskTracker) Worker Node (TaskTracker) Worker Node (TaskTracker) Worker Node (TaskTracker) Worker Node (TaskTracker) Worker Node (TaskTracker)

 Hadoop is being used for all kinds of tasks beyond its original design  Tight coupling of a specific programming model with the resource management infrastructure  Centralized handling of jobs’ control flow

 Scalability

 Multi-tenancy ◦ A shared pool of nodes for all jobs ◦ Allocate Hadoop clusters of fixed size on the shared pool.  Serviceability ◦ sets up a new cluster for every job ◦ old and new Hadoop co-exist ◦ Hadoop has short, 3-month release cycle

 Scalability  Multi-tenancy  Serviceability  Locality Awareness ◦ JobTracker tries to place tasks close to the input data ◦ But node allocator is not aware of the locality

 Scalability  Multi-tenancy  Serviceability  Locality Awareness  High Cluster Utilization ◦ HoD does not resize the cluster between stages ◦ Users allocate more nodes than needed  Competing for resources results in longer latency to start a job

 Scalability  Multi-tenancy  Serviceability  Locality Awareness  High Cluster Utilization  Reliability/Availability ◦ The failure in one job tracker can bring down the entire cluster ◦ Overhead of tracking multiple jobs in a larger, shared cluster

 Scalability  Multi-tenancy  Serviceability  Locality Awareness  High Cluster Utilization  Reliability/Availability  Secure and auditable operation ◦ Authentication

 Scalability  Multi-tenancy  Serviceability  Locality Awareness  High Cluster Utilization  Reliability/Availability  Secure and auditable operation  Support for Programming Model Diversity ◦ Iterative computation ◦ Different communication pattern

 Scalability  Multi-tenancy  Serviceability  Locality Awareness  High Cluster Utilization  Reliability/Availability  Secure and auditable operation  Support for Programming Model Diversity  Flexible Resource Model ◦ Hadoop: # of Map/reduce slots are fixed. ◦ Easy, but lower utilization

 Scalability  Multi-tenancy  Serviceability  Locality Awareness  High Cluster Utilization  Reliability/Availability  Secure and auditable operation  Support for Programming Model Diversity  Flexible Resource Model  Backward Compatibility ◦ The system behaves similar to the old Hadoop

 Separating resource management functions from the programming model  MapReduce becomes just one of the application  Dryad, …. Etc  Binary compatible/Source compatible

 One per cluster ◦ Central, global view ◦ Enable global properties  Fairness, capacity, locality  Container ◦ Logical bundle of resources (CPU/memory)  Job requests are submitted to RM  To start a job, RM finds a container to spawn AM  No static resource partitioning

 only handles an overall resource profile for each application ◦ Local optimization/internal flow is up to the application  Preemption ◦ Request resources back from an application ◦ Checkpoint snapshot instead of explicitly killing jobs / migrate computation to other containers

 The head of a job  Runs as a container  Request resources from RM ◦ # of containers/ resource per container/ locality …  Dynamically changing resource consumption  Can run any user code (Dryad, MapReduce, Tez, REEF…etc)  Requests are “late-binding”

 Optimizes for locality among map tasks with identical resource requirements ◦ Selecting a task with input data close to the container.  AM determines the semantics of the success or failure of the container

 The “worker” daemon. Registers with RM  One per node  Container Launch Context – env var, commands…  Report resources (memory/CPU/etc…)  Configure the environment for task execution  Garbage collection/ Authentication  Auxiliary services ◦ Output intermediate data between map and reduce tasks

1. Submitting the application by passing a CLC for the Application Master to the RM. 2. When RM starts the AM, it should register with the RM and periodically advertise its liveness and requirements over the heartbeat protocol 3. Once the RM allocates a container, AM can construct a CLC to launch the container on the corresponding NM. It may also monitor the status of the running container and stop it when the resource should be reclaimed. Monitoring the progress of work done inside the container is strictly the AM’s responsibility. 4. Once the AM is done with its work, it should unregister from the RM and exit cleanly. 5. Optionally, framework authors may add control flow between their own clients to report job status and expose a control plane.

 RM Failure ◦ Recover using persistent storage ◦ Kill all containers, including AMs’ ◦ Relaunch AMs  NM Failure ◦ RM detects it, mark the containers as killed, report to Ams  AM Failure ◦ RM kills the container and restarts it.  Container Failure ◦ The framework is responsible for recovery

 In a 2500-node cluster, throughput improves from 77 K jobs/day to 150 K jobs/day

 In a 2500-node cluster, throughput improves from 4 M tasks/day to 10 M jobs/day

 Why? ◦ the removal of the static split between map and reduce slots.  Essentially, moving to YARN, the CPU utilization almost doubled  “upgrading to YARN was equivalent to adding 1000 machines [to this 2500 machines cluster]”

 Pig, Hive, Oozie ◦ Decompose a DAG job into multiple MR jobs  Apache Tez ◦ DAG execution framework  Spark  Dryad  Giraph ◦ Vertice centric graph computation framework ◦ fits naturally within YARN model  Storm – distributed real time processing engine (parallel stream processing)  REEF ◦ Simplify implementing ApplicationMaster  Haya – Hbase clusters

 Sorting  MapReduce benchmarks  Preemption  W/ Apache Tez  REEF

 2100 nodes, each w/ two 2.3Ghz hexcore Xeon E5-2630, 64 GB memory, and 12x3TB disks  Record holder

 Compare Hadoop (YARN) against  260 node cluster  Each slave node is running 2.27GHz Intel(R) Xeon(R) CPU totalling to 16 cores, has 38GB physicalmemory, and 6x1TB 7200 RPM disks

 Described in more details in the Natjam paper (also in SoCC’13)