Big Data + SDN SDN Abstractions. The Story Thus Far Different types of traffic in clusters Background Traffic – Bulk transfers – Control messages Active.

Slides:



Advertisements
Similar presentations
Network Resource Broker for IPTV in Cloud Computing Lei Liang, Dan He University of Surrey, UK OGF 27, G2C Workshop 15 Oct 2009 Banff,
Advertisements

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.
Impact of Interference on Multi-hop Wireless Network Performance Kamal Jain, Jitu Padhye, Venkat Padmanabhan and Lili Qiu Microsoft Research Redmond.
MapReduce Online Tyson Condie UC Berkeley Slides by Kaixiang MO
Processes Management.
© 2004, D. J. Foreman 1 Scheduling & Dispatching.
SDN Controller Challenges
Traffic Engineering with Forward Fault Correction (FFC)
MapReduce.
Transparent and Flexible Network Management for Big Data Processing in the Cloud Anupam Das Curtis Yu Cristian Lumezanu Yueping Zhang Vishal Singh Guofei.
SDN + Storage.
Coflow A Networking Abstraction For Cluster Applications UC Berkeley Mosharaf Chowdhury Ion Stoica.
Effective Straggler Mitigation: Attack of the Clones [1]
MapReduce Online Created by: Rajesh Gadipuuri Modified by: Ying Lu.
Nanxi Kang Princeton University
Sanjay Ghemawat, Howard Gobioff and Shun-Tak Leung
Tail Latency: Networking
Lecture 5: Congestion Control l Challenge: how do we efficiently share network resources among billions of hosts? n Last time: TCP n This time: Alternative.
Dreams in a Nutshell Steven Sommer Microsoft Research Institute Department of Computing Macquarie University.
Google Distributed System and Hadoop Lakshmi Thyagarajan.
Take An Internal Look at Hadoop Hairong Kuang Grid Team, Yahoo! Inc
On Availability of Intermediate Data in Cloud Computations Steven Y. Ko, Imranul Hoque, Brian Cho, and Indranil Gupta Distributed Protocols Research Group.
Hadoop & Cheetah. Key words Cluster  data center – Lots of machines thousands Node  a server in a data center – Commodity device fails very easily Slot.
Advanced Topics: MapReduce ECE 454 Computer Systems Programming Topics: Reductions Implemented in Distributed Frameworks Distributed Key-Value Stores Hadoop.
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.
A Brief Overview by Aditya Dutt March 18 th ’ Aditya Inc.
CS525: Special Topics in DBs Large-Scale Data Management Hadoop/MapReduce Computing Paradigm Spring 2013 WPI, Mohamed Eltabakh 1.
MapReduce: Simplified Data Processing on Large Clusters Jeffrey Dean and Sanjay Ghemawat.
HAMS Technologies 1
Copyright © 2011, Programming Your Network at Run-time for Big Data Applications 張晏誌 指導老師:王國禎 教授.
David G. Andersen CMU Guohui Wang, T. S. Eugene Ng Rice Michael Kaminsky, Dina Papagiannaki, Michael A. Kozuch, Michael Ryan Intel Labs Pittsburgh 1 c-Through:
Hadoop/MapReduce Computing Paradigm 1 Shirish Agale.
Hadoop & Condor Dhruba Borthakur Project Lead, Hadoop Distributed File System Presented at the The Israeli Association of Grid Technologies.
Programming Your Network at Run- Time for Big Data Applications Guohui Wang, TS Eugene Ng, Anees Shaikh Presented by Jon Logan.
Pregel: A System for Large-Scale Graph Processing Grzegorz Malewicz, Matthew H. Austern, Aart J. C. Bik, James C. Dehnert, Ilan Horn, Naty Leiser, and.
Bi-Hadoop: Extending Hadoop To Improve Support For Binary-Input Applications Xiao Yu and Bo Hong School of Electrical and Computer Engineering Georgia.
Grid Computing at Yahoo! Sameer Paranjpye Mahadev Konar Yahoo!
Hadoop System simulation with Mumak Fei Dong, Tianyu Feng, Hong Zhang Dec 8, 2010.
Comparing Topology based Collective Communication Algorithms Vishal Sharda Ashima Gupta.
Client-Server Model of Interaction Chapter 20. We have looked at the details of TCP/IP Protocols Protocols Router architecture Router architecture Now.
Network-Aware Scheduling for Data-Parallel Jobs: Plan When You Can
CS525: Big Data Analytics MapReduce Computing Paradigm & Apache Hadoop Open Source Fall 2013 Elke A. Rundensteiner 1.
CC P ROCESAMIENTO M ASIVO DE D ATOS O TOÑO 2014 Aidan Hogan Lecture V: 2014/04/07.
Static Process Scheduling
Hadoop/MapReduce Computing Paradigm 1 CS525: Special Topics in DBs Large-Scale Data Management Presented By Kelly Technologies
Experiments in Utility Computing: Hadoop and Condor Sameer Paranjpye Y! Web Search.
By Nitin Bahadur Gokul Nadathur Department of Computer Sciences University of Wisconsin-Madison Spring 2000.
Theophilus Benson*, Ashok Anand*, Aditya Akella*, Ming Zhang + *University of Wisconsin, Madison + Microsoft Research.
Next Generation of Apache Hadoop MapReduce Owen
Software-defined network(SDN)
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
Learn. Hadoop Online training course is designed to enhance your knowledge and skills to become a successful Hadoop developer and In-depth knowledge of.
Aalo Efficient Coflow Scheduling Without Prior Knowledge Mosharaf Chowdhury, Ion Stoica UC Berkeley.
Impact of Interference on Multi-hop Wireless Network Performance
TensorFlow– A system for large-scale machine learning
Hadoop MapReduce Framework
Authors: Sajjad Rizvi, Xi Li, Bernard Wong, Fiodar Kazhamiaka
Cof low A Networking Abstraction for Distributed
TCP-LP: A Distributed Algorithm for Low Priority Data Transfer
Chapter 6: CPU Scheduling
MapReduce Computing Paradigm Basics Fall 2013 Elke A. Rundensteiner
湖南大学-信息科学与工程学院-计算机与科学系
GARRETT SINGLETARY.
MapReduce Algorithm Design Adapted from Jimmy Lin’s slides.
ExaO: Software Defined Data Distribution for Exascale Sciences
Specialized Cloud Architectures
Lecture 2 Part 3 CPU Scheduling
Charles Tappert Seidenberg School of CSIS, Pace University
Centralized Arbitration for Data Centers
Towards Predictable Datacenter Networks
Presentation transcript:

Big Data + SDN SDN Abstractions

The Story Thus Far Different types of traffic in clusters Background Traffic – Bulk transfers – Control messages Active Traffic (used by jobs) – HDFS read/writes – Partition-Aggregate traffic

The Study Thus Far Specific communication patterns in clusters – Patterns used by Big Data Analytics – You can optimize specifically for theses Map Reduce HDFS Map HDFS Reduce Shuffle Broadcast Incast

The Story Thus Far Helios, Hedera, MicroTE, c-thru improve utilization – Congestion leads to bad performance – Eliminate congestion Gather Network Demand Gather Network Demand Determine paths with minimal congestion Install New paths

Draw Backs Demand gather at network is ineffective – Assumes that past demand will predict future – Many small jobs in cluster so ineffective May Require expensive instrumentation to gather – Switch modifications – Or endhost modification to gather information

Application Aware Networking Insight – Application knows every the network need So application can in fact instruct the network – Small number of big data paradigms So only a small number of applications need to be changed Map-reduce/hadoop, sharp, dyrad – Application has a central entity controlling everything

Important Questions What information do you need? – Size of a flow – Source+destination of the flow – Start time of the flow – Deadline of the flow How should the application inform the network? – Reactively or proactively – Modified applications or unmodified applications

Challenges Getting Information Flow Size Insight – Data that is transferred is data that is stored in a file Input data – Query HDFS for file size Intermediate data/Output Data – Reactive methods: wait for map to finish writing to temp file Asking the file system for size Checking the Hadoop logs for file size Checking the Hadoop web-API – Proactive methods: predict size using prior history Jobs run the same code over and over Learn the ratio between input data and intermediate data Learn the ratio between intermediate data and output data

Challenges Getting Information End points Reactively – Job tracker places the task; it knows the locations Check the hadoop logs for the locations Modify the job tracker to directly inform you of location Proactively – Have the SDN controller tell the job tracker where to place the end-points Rack aware placement: reduce inter-rack transfers Congestion aware placement: reduce loss

Challenges getting information :Flow start time Hadoop specific details obscure the start time – Reducer transfers data from only 5 map at at time Tries to reduce unfairness – Reducers randomly pick the mappers to start from – Reducers start transfer at random times Tries to reduce incast – and synchronization between flows Logs store when transfer starts

FloxBox: Simple Approach Insight: many types of traffic exist in N/W – We only care about map-reduce more than other traffic Solution: prioritize map-reduce traffic – Place them highest priority queue – Other traffic can’t interfere How about control messages? – Should prioritize those too.

Reactive Approach: FlowComb Reactive attempt to integrate bigdata + SDN – No changes to application – Learn information by looking at logs and determine file size and end-points – Learn information by running agents on the endhost that determines start times

FlowComb: Architecture Agents on servers – Detect start/end of map – Detect start/end transfer Predictor – Determines size of intermediate data Queries Map Via API – Aggregates information from agents sends to scheduler

FlowComb: Architecture Scheduler – Examines each flow that has started – For each flow what is the ideal rate – Is the flow currently bottlenecked? Move to the next shortest path with available capacity

Open Questions How about non map-reduce traffic? – Only focus on the active transfers ignores control msgs and background How about HDFS reads and writes – Only focus on intermediate data Sub optimal control loop Benefits for small jobs?

CoFlows : Proactive Approach Modify the applications – Have them directly inform network of intent Application inform network of co-flow – Co-flow: Group of flows bound by app level semantics – Challenges: End-points not known at the beginning of transfer Start times of the different flows not know File-sizes not known but can be estimated

Interactions between Coflows 17 Sharing:  Sharing the cluster network among multiple coflows: How to allocate  Reservation  Max-min faireness Prioritization:  Using priorities as weights  Per job/application

We Want To… Better schedule the network  Intra-coflow  Inter-coflow Write the communication layer of a new application  Without reinventing the wheel Add unsupported coflows to an application, or Replace an existing coflow implementation  Independent of applications 18

Coflow APIs 19 Get+put operations allow you to overcome the limitation of unknown start times. The network determines when to do the transfer. You can call put, without specifying an endpoint. The network determines where to temporarily store. When the receiver calls a get, the network determines when to transfer the file, what rate and which replica.

20 Coflow API Shuffle finishes MapReduce Job finishes create(SHUFFLE)  handle put(handle, id, content) get(handle, id)  content terminate(handle) Driver

Summary Applications know a lot about the transfers – We can reactively learn by using logs – Or modify the application to inform us of these things Tricky information to obtain include: – Transfer start time – Transfer end-points CoFlows: proactive – Controls network path, transfer times, and transfer rate FlowComb: reactive – Controls network paths based on app knowledge 21

ToDo Need more images from the infobox guys – Maybe improvements and why skethcy – Maybe graphs from flowcomb also Extensive discussion of pro-active versus reactive. Discussion on orchester should also include patterns from co-flow Add IBM talk.