Scientific Data Analytics on Cloud and HPC Platforms

Slides:



Advertisements
Similar presentations
SALSA HPC Group School of Informatics and Computing Indiana University.
Advertisements

SALSA HPC Group School of Informatics and Computing Indiana University Judy Qiu Thilina Gunarathne CAREER Award.
Twister4Azure Iterative MapReduce for Windows Azure Cloud Thilina Gunarathne Indiana University Iterative MapReduce for Azure Cloud.
SCALABLE PARALLEL COMPUTING ON CLOUDS : EFFICIENT AND SCALABLE ARCHITECTURES TO PERFORM PLEASINGLY PARALLEL, MAPREDUCE AND ITERATIVE DATA INTENSIVE COMPUTATIONS.
Authors: Thilina Gunarathne, Tak-Lon Wu, Judy Qiu, Geoffrey Fox Publish: HPDC'10, June 20–25, 2010, Chicago, Illinois, USA ACM Speaker: Jia Bao Lin.
Parallel Data Analysis from Multicore to Cloudy Grids Indiana University Geoffrey Fox, Xiaohong Qiu, Scott Beason, Seung-Hee.
MapReduce in the Clouds for Science CloudCom 2010 Nov 30 – Dec 3, 2010 Thilina Gunarathne, Tak-Lon Wu, Judy Qiu, Geoffrey Fox {tgunarat, taklwu,
Scalable Parallel Computing on Clouds Thilina Gunarathne Advisor : Prof.Geoffrey Fox Committee : Prof.Judy Qiu,
Dimension Reduction and Visualization of Large High-Dimensional Data via Interpolation Seung-Hee Bae, Jong Youl Choi, Judy Qiu, and Geoffrey Fox School.
HPC-ABDS: The Case for an Integrating Apache Big Data Stack with HPC
Iterative computation is a kernel function to many data mining and data analysis algorithms. Missing in current MapReduce frameworks is collective communication,
Panel Session The Challenges at the Interface of Life Sciences and Cyberinfrastructure and how should we tackle them? Chris Johnson, Geoffrey Fox, Shantenu.
Big Data Challenge Mega 10^6 Giga 10^9 Tera 10^12 Peta 10^15 Pig Latin.
Applying Twister to Scientific Applications CloudCom 2010 Indianapolis, Indiana, USA Nov 30 – Dec 3, 2010.
School of Informatics and Computing Indiana University
Science in Clouds SALSA Team salsaweb/salsa Community Grids Laboratory, Digital Science Center Pervasive Technology Institute Indiana University.
SALSASALSA Twister: A Runtime for Iterative MapReduce Jaliya Ekanayake Community Grids Laboratory, Digital Science Center Pervasive Technology Institute.
Portable Parallel Programming on Cloud and HPC: Scientific Applications of Twister4Azure Thilina Gunarathne Bingjing Zhang, Tak-Lon.
SALSASALSASALSASALSA Design Pattern for Scientific Applications in DryadLINQ CTP DataCloud-SC11 Hui Li Yang Ruan, Yuduo Zhou Judy Qiu, Geoffrey Fox.
Harp: Collective Communication on Hadoop Bingjing Zhang, Yang Ruan, Judy Qiu.
Parallel Applications And Tools For Cloud Computing Environments Azure MapReduce Large-scale PageRank with Twister Twister BLAST Thilina Gunarathne, Stephen.
SALSASALSASALSASALSA CloudComp 09 Munich, Germany Jaliya Ekanayake, Geoffrey Fox School of Informatics and Computing Pervasive.
SALSA HPC Group School of Informatics and Computing Indiana University.
6th Workshop on Many-Task Computing on Clouds, Grids, and Supercomputers (MTAGS), Nov. 17, 2013 Judy Qiu SALSA hpc.indiana.edu.
A Hierarchical MapReduce Framework Yuan Luo and Beth Plale School of Informatics and Computing, Indiana University Data To Insight Center, Indiana University.
SALSASALSASALSASALSA Clouds Ball Aerospace March Geoffrey Fox
SALSA HPC Group School of Informatics and Computing Indiana University.
Towards a Collective Layer in the Big Data Stack Thilina Gunarathne Judy Qiu
Security: systems, clouds, models, and privacy challenges iDASH Symposium San Diego CA October Geoffrey.
Cloud Computing Paradigms for Pleasingly Parallel Biomedical Applications Thilina Gunarathne, Tak-Lon Wu Judy Qiu, Geoffrey Fox School of Informatics,
SALSA Group Research Activities April 27, Research Overview  MapReduce Runtime  Twister  Azure MapReduce  Dryad and Parallel Applications 
PDAC-10 Middleware Solutions for Data- Intensive (Scientific) Computing on Clouds Gagan Agrawal Ohio State University (Joint Work with Tekin Bicer, David.
SALSASALSASALSASALSA Digital Science Center February 12, 2010, Bloomington Geoffrey Fox Judy Qiu
Parallel Applications And Tools For Cloud Computing Environments CloudCom 2010 Indianapolis, Indiana, USA Nov 30 – Dec 3, 2010.
HPC in the Cloud – Clearing the Mist or Lost in the Fog Panel at SC11 Seattle November Geoffrey Fox
Memcached Integration with Twister Saliya Ekanayake - Jerome Mitchell - Yiming Sun -
SALSASALSASALSASALSA Data Intensive Biomedical Computing Systems Statewide IT Conference October 1, 2009, Indianapolis Judy Qiu
SALSASALSA Harp: Collective Communication on Hadoop Judy Qiu, Indiana University.
SALSASALSASALSASALSA IU Twister Supports Data Intensive Science Applications School of Informatics and Computing Indiana University.
SALSA HPC Group School of Informatics and Computing Indiana University Workshop on Petascale Data Analytics: Challenges, and.
Implementation of Classifier Tool in Twister Magesh khanna Vadivelu Shivaraman Janakiraman.
Image taken from: slideshare
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CLOUD COMPUTING
Digital Science Center II
Introduction to Distributed Platforms
Thilina Gunarathne, Bimalee Salpitkorala, Arun Chauhan, Geoffrey Fox
Spark Presentation.
University of Technology
MapReduce and Data Intensive Applications XSEDE’12 BOF Session
Our Objectives Explore the applicability of Microsoft technologies to real world scientific domains with a focus on data intensive applications Expect.
Introduction to Spark.
I590 Data Science Curriculum August
Applying Twister to Scientific Applications
Data Science Curriculum March
Biology MDS and Clustering Results
湖南大学-信息科学与工程学院-计算机与科学系
SC09 Doctoral Symposium, Portland, 11/18/2009
CS110: Discussion about Spark
Scalable Parallel Interoperable Data Analytics Library
Ch 4. The Evolution of Analytic Scalability
Twister4Azure : Iterative MapReduce for Azure Cloud
Cloud DIKW based on HPC-ABDS to integrate streaming and batch Big Data
Data-Intensive Computing: From Clouds to GPU Clusters
Clouds from FutureGrid’s Perspective
Group 15 Swathi Gurram Prajakta Purohit
Twister2: Design of a Big Data Toolkit
Overview of Workflows: Why Use Them?
PHI Research in Digital Science Center
Convergence of Big Data and Extreme Computing
L. Glimcher, R. Jin, G. Agrawal Presented by: Leo Glimcher
Presentation transcript:

Scientific Data Analytics on Cloud and HPC Platforms Judy Qiu SALSA HPC Group http://salsahpc.indiana.edu School of Informatics and Computing Indiana University CAREER Award

"... computing may someday be organized as a public utility just as the telephone system is a public utility... The computer utility could become the basis of a new and important industry.” -- John McCarthy Emeritus at Stanford Inventor of LISP 1961 11/28/2018 Bill Howe, eScience Institute

Joseph L. Hellerstein, Google

Challenges and Opportunities Iterative MapReduce A Programming Model instantiating the paradigm of bringing computation to data Supporting for Data Mining and Data Analysis Interoperability Using the same computational tools on HPC and Cloud Enabling scientists to focus on science not programming distributed systems Reproducibility Using Cloud Computing for Scalable, Reproducible Experimentation Sharing results, data, and software

Intel’s Application Stack

(Iterative) MapReduce in Context Support Scientific Simulations (Data Mining and Data Analysis) Kernels, Genomics, Proteomics, Information Retrieval, Polar Science, Scientific Simulation Data Analysis and Management, Dissimilarity Computation, Clustering, Multidimensional Scaling, Generative Topological Mapping Applications Security, Provenance, Portal Services and Workflow Programming Model High Level Language Cross Platform Iterative MapReduce (Collectives, Fault Tolerance, Scheduling) Runtime Storage Distributed File Systems Object Store Data Parallel File System Linux HPC Bare-system Amazon Cloud Windows Server HPC Bare-system Azure Cloud Grid Appliance Infrastructure Virtualization Virtualization CPU Nodes GPU Nodes Hardware

Moving Computation to Data Map Reduce Programming Model Moving Computation to Data Scalable Fault Tolerance Simple programming model Excellent fault tolerance Moving computations to data Works very well for data intensive pleasingly parallel applications MapReduce provides a easy to use programming model together with very good fault tolerance and scalability for large scale applications. MapReduce model is proving to be Ideal for data intensive pleasingly parallel applications in commodity hardware and in clouds. Ideal for data intensive loosely coupled (pleasingly parallel) applications

MapReduce in Heterogeneous Environment MICROSOFT

Iterative MapReduce Frameworks Twister[1] Map->Reduce->Combine->Broadcast Long running map tasks (data in memory) Centralized driver based, statically scheduled. Daytona[3] Iterative MapReduce on Azure using cloud services Architecture similar to Twister Haloop[4] On disk caching, Map/reduce input caching, reduce output caching Spark[5] Iterative Mapreduce Using Resilient Distributed Dataset to ensure the fault tolerance Pregel[6] Graph processing from Google iMapReduce, Twister -> single wave.. Iterative MapReduce: Haloop, Twister @IU, Spark Map-Reduce-Merge: enable processing heterogeneous data sets MapReduce online: online aggregation, and continuous queries

Others Mate-EC2[6] Network Levitated Merge[7] Local reduction object Network Levitated Merge[7] RDMA/infiniband based shuffle & merge Asynchronous Algorithms in MapReduce[8] Local & global reduce MapReduce online[9] online aggregation, and continuous queries Push data from Map to Reduce Orchestra[10] Data transfer improvements for MR iMapReduce[11] Async iterations, One to one map & reduce mapping, automatically joins loop-variant and invariant data CloudMapReduce[12] & Google AppEngine MapReduce[13] MapReduce frameworks utilizing cloud infrastructure services Orchestra : Broadcast and shuffle improvements…

New Infrastructure for Iterative MapReduce Programming Twister v0.9 New Infrastructure for Iterative MapReduce Programming Distinction on static and variable data Configurable long running (cacheable) map/reduce tasks Pub/sub messaging based communication/data transfers Broker Network for facilitating communication

configureMaps(..) configureReduce(..) runMapReduce(..) while(condition){ } //end while updateCondition() close() Combine() operation Reduce() Map() Worker Nodes Communications/data transfers via the pub-sub broker network & direct TCP Iterations May send <Key,Value> pairs directly Main program’s process space Local Disk Cacheable map/reduce tasks Main program may contain many MapReduce invocations or iterative MapReduce invocations

Broker Network Master Node B Twister Driver Main Program Worker Node Local Disk Worker Pool Twister Daemon Master Node Twister Driver Main Program B Pub/sub Broker Network Scripts perform: Data distribution, data collection, and partition file creation map reduce Cacheable tasks One broker serves several Twister daemons

Applications of Twister4Azure Implemented Multi Dimensional Scaling KMeans Clustering PageRank SmithWatermann-GOTOH sequence alignment WordCount Cap3 sequence assembly Blast sequence search GTM & MDS interpolation Under Development Latent Dirichlet Allocation

Twister4Azure Architecture Ability to dynamically scale up/down Easy testing and deployment Combiner step Web based monitoring console Azure Queues for scheduling, Tables to store meta-data and monitoring data, Blobs for input/output/intermediate data storage.

Data Intensive Iterative Applications Smaller Loop-Variant Data Compute Communication Reduce/ barrier New Iteration Broadcast Larger Loop-Invariant Data Most of these applications consists of iterative computation and communication steps where single iterations can easily be specified as MapReduce computations. Large input data sizes which are loop-invariant and can be reused across iterations. Loop-variant results.. Orders of magnitude smaller… While these can be performed using traditional MapReduce frameworks, Traditional is not efficient for these types of computations. MR leaves lot of room for improvements in terms of iterative applications. Growing class of applications Clustering, data mining, machine learning & dimension reduction applications Driven by data deluge & emerging computation fields

Iterative MapReduce for Azure Cloud http://salsahpc.indiana.edu/twister4azure Extensions to support broadcast data Hybrid intermediate data transfer Merge step Cache-aware Hybrid Task Scheduling Collective Communication Primitives Multi-level caching of static data Portable Parallel Programming on Cloud and HPC: Scientific Applications of Twister4Azure, Thilina Gunarathne, BingJing Zang, Tak-Lon Wu and Judy Qiu, (UCC 2011) , Melbourne, Australia.

Performance of Pleasingly Parallel Applications on Azure BLAST Sequence Search Smith Watermann Sequence Alignment Cap3 Sequence Assembly MapReduce in the Clouds for Science, Thilina Gunarathne, et al. CloudCom 2010, Indianapolis, IN.

Performance – Kmeans Clustering Overhead between iterations First iteration performs the initial data fetch Task Execution Time Histogram Number of Executing Map Task Histogram Scales better than Hadoop on bare metal Strong Scaling with 128M Data Points Weak Scaling Performance with/without data caching Speedup gained using data cache Scaling speedup Increasing number of iterations

Performance – Multi Dimensional Scaling BC: Calculate BX Map Reduce Merge X: Calculate invV (BX) Map Reduce Merge Calculate Stress Map Reduce Merge New Iteration Performance adjusted for sequential performance difference Weak Scaling Data Size Scaling Scalable Parallel Scientific Computing Using Twister4Azure. Thilina Gunarathne, BingJing Zang, Tak-Lon Wu and Judy Qiu. Submitted to Journal of Future Generation Computer Systems. (Invited as one of the best 6 papers of UCC 2011)

Parallel Data Analysis using Twister MDS (Multi Dimensional Scaling) Clustering (Kmeans) SVM (Scalable Vector Machine) Indexing Xiaoming Gao, Vaibhav Nachankar and Judy Qiu, Experimenting Lucene Index on HBase in an HPC Environment, position paper in the proceedings of ACM High Performance Computing meets Databases workshop (HPCDB'11) at SuperComputing 11, December 6, 2011

Twister-MDS Output Application #1 MDS projection of 100,000 protein sequences showing a few experimentally identified clusters in preliminary work with Seattle Children’s Research Institute

Data Intensive Kmeans Clustering Application #2 Data Intensive Kmeans Clustering ─ Image Classification: 1.5 TB; 500 features per image;10k clusters 1000 Map tasks; 1GB data transfer per Map task

Twister Communications Map Tasks Map Collective Reduce Tasks Reduce Collective Gather Broadcast Broadcasting Data could be large Chain & MST Map Collectives Local merge Reduce Collectives Collect but no merge Combine Direct download or Gather

Improving Performance of Map Collectives Full Mesh Broker Network Scatter and Allgather

Polymorphic Scatter-Allgather in Twister

Twister Performance on Kmeans Clustering

Twister on InfiniBand InfiniBand successes in HPC community More than 42% of Top500 clusters use InfiniBand Extremely high throughput and low latency Up to 40Gb/s between servers and 1μsec latency Reduce CPU overhead up to 90% Cloud community can benefit from InfiniBand Accelerated Hadoop (sc11) HDFS benchmark tests RDMA can make Twister faster Accelerate static data distribution Accelerate data shuffling between mappers and reducer In collaboration with ORNL on a large InfiniBand cluster Even higher between switches

Using RDMA for Twister on InfiniBand

Twister Broadcast Comparison: Ethernet vs. InfiniBand

Building Virtual Clusters Towards Reproducible eScience in the Cloud Separation of concerns between two layers Infrastructure Layer – interactions with the Cloud API Software Layer – interactions with the running VM

Separation Leads to Reuse Infrastructure Layer = (*) Software Layer = (#) By separating layers, one can reuse software layer artifacts in separate clouds

Design and Implementation Equivalent machine images (MI) built in separate clouds Common underpinning in separate clouds for software installations and configurations Extend to Azure Configuration management used for software automation

Cloud Image Proliferation

Changes of Hadoop Versions

Implementation - Hadoop Cluster Hadoop cluster commands knife hadoop launch {name} {slave count} knife hadoop terminate {name}

Running CloudBurst on Hadoop Running CloudBurst on a 10 node Hadoop Cluster knife hadoop launch cloudburst 9 echo ‘{"run list": "recipe[cloudburst]"}' > cloudburst.json chef-client -j cloudburst.json CloudBurst on a 10, 20, and 50 node Hadoop Cluster

Applications & Different Interconnection Patterns Map Only Classic MapReduce Iterative MapReduce Twister Loosely Synchronous CAP3 Analysis Document conversion (PDF -> HTML) Brute force searches in cryptography Parametric sweeps High Energy Physics (HEP) Histograms SWG gene alignment Distributed search Distributed sorting Information retrieval Expectation maximization algorithms Clustering Linear Algebra Many MPI scientific applications utilizing wide variety of communication constructs including local interactions - CAP3 Gene Assembly - PolarGrid Matlab data analysis - Information Retrieval - HEP Data Analysis - Calculation of Pairwise Distances for ALU Sequences Kmeans Deterministic Annealing Clustering - Multidimensional Scaling MDS - Solving Differential Equations and - particle dynamics with short range forces Input map reduce iterations Input map reduce Pij Input Output map Domain of MapReduce and Iterative Extensions MPI

School of Informatics and Computing Ackowledgements SALSA HPC Group http://salsahpc.indiana.edu School of Informatics and Computing Indiana University