Caching in the Multiverse

Total Page:16

File Type:pdf, Size:1020Kb

Caching in the Multiverse Caching in the Multiverse Mania Abdi?, Amin Mosayyebzadeh, Mohammad Hossein Hajkazemi? Ata Turk‡, Orran Krieger, Peter Desnoyers? ?Northeastern University, Boston University, ‡State Street Abstract execution plan consisting of multiple, for example, MapRe- duce [11], or Tez [24] jobs, and a directed acyclic graph (DAG) To get good performance for data stored in Object storage of dependencies between these jobs. Jobs are then scheduled services like S3, data analysis clusters need to cache data in parallel, within the constraints set by these dependencies. locally. Recently these caches have started taking into ac- Jobs can take minutes to even hours [9], resulting in execu- count higher-level information from analysis framework, al- tion plans which identify data accesses far into the future. lowing prefetching based on predictions of future data ac- Exploiting this knowledge of future access patterns results in cesses. There is, however, a broader opportunity; rather than significant improvements in caching performance vs. LRU using this information to predict one future, we can use it to and other history-based algorithms, as shown by works such select a future that is best for caching. This paper provides as MemTune [33], LRC [36] and [15]. preliminary evidence that we can exploit the directed acyclic These existing efforts use application DAG information graph (DAG) of inter-task dependencies used by data-parallel to predict future data accesses, and then prefetch data into frameworks such as Spark, PIG and Hive to improve applica- the cache and manage the cache contents based on those tion performance, by optimizing caching for the critical path predictions. In doing so, they are not taking advantage of a through the DAG for the application. We present experimental fundamental opportunity. Rather than caching data given a results for PIG running TPC-H queries, showing completion prediction of task execution, can we exploit the information time improvements of up to 23% vs our implementation of provided by the DAG to influence the order of task execution MRD, a state-of-the-art DAG-based prefetching system, and to enable more effective caching? That is, rather than man- improvements of up to 2.5x vs LRU caching. We then discuss aging/prefetching the cache based on one prediction of the the broader opportunity for building a system based on this future universe, can we select a universe for which caching opportunity. will be more effective? This paper provides preliminary evidence that the answer is 1 Introduction yes. In a simple, semi automated experiment, we show that by caching can be used to optimize the critical path through the Modern data analytics platforms (e.g. Spark [37], PIG [20], DAG, and present experimental results showing completion or Hive [27]) are often coupled with external data storage time improvements for TPC-H queries of as much as 2.5x on services such as Amazon S3 [3] and Azure Data Lake over LRU and 23% over MRD [22], the state-of-the-art DAG- Store [17], resulting in storage bottlenecks [4, 15, 18, 23]. based approach (and in all cases no worse than MRD). Multiple caching solutions have been developed to address We next provide more background on the opportunity, this storage bottleneck, e.g. Solutions such as Pacman [5], present our initial evidence, and then discuss the research Tachyon/Alluxio [2, 16] and Apache:Ignite [6] allow datasets challenges and effort to exploit this opportunity in a system- to be cached within the local cluster. However given finite atic way. cache, and often even more limited bandwidth for fetching data into the cache, the performance of this cache depends 2 Background and Motivation on its caching policy, and recent studies show that traditional caching policies (e.g. LRU) for this workload perform poorly To explain DAG-guided caching, we consider the PIG work- relative to task-specific ones [5,9, 15, 21]. flow management framework, which compiles the user’s Higher-level analysis frameworks such as PIG [20], query into a directed acyclic graph (DAG) of MapReduce [11], Hive [27] and SPARK [37] compile user programs into an Spark [37] or Tez [24] jobs. In Figure 1a, we see TPC-H I J1 region = load 1 O1 = filter region I1 I2 I3­1 I3­2 nation = load I2 J2 O2 = filter nation J1 J2 J3 lineitem = load I3-1 part = load I3-2 J3 I5­1 fpart = filter part O O O O3 = join fpart, lineitem 1 2 3 Stage 1 O4 = join O1 and O2 J4 J4 J5 I5­2 n = load I5-1 J1 s = load I J5 5-2 I6­1 I6­2 J2 O5 = join s and n O4 O5 Stage 2 J3 customer = load I6-1 J4 supply = load I6-2 J J Stage 3 6 s1 = join supply, O2 and O3 6 J5 Stage 4 O6 = join customer and s1 Ii Input O6 J6 gr = groupby O and O J 5 6 Ji MR­Job 7 J7 J7 store gr Store Time Oi Output t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 (a) PIG Latin script (b) DAG of MapReduce jobs (c) Scheduled jobs Figure 1: Execution of Query #8 from TPC-H benchmark using Pig framework. In (a) we see the query script with jobs and inputs identified in purple circles and grey squares, respectively. (b) shows the directed acyclic graph (DAG) produced by the Pig compiler, with the corresponding jobs and inputs; (c) is the Pig schedule of the DAG to the MapReduce framework, with jobs executed in breadth-first stages. Query 8 in PIG Latin [25], which is compiled by PIG into the and with LRU cache management; completion time is 9 units execution plan DAG in Figure 1b. Tasks are then sorted by as there is no input data re-use, and thus all inputs are read dependency into stages, and submitted for execution resulting from remote storage (purple); at the bottom of the figure we in a timeline such as is seen in Figure 1c. see a timeline of jobs running at each unit of time. In this environment, caching policy can use not only in- MRD uses prior runtime information to predict the order formation from previous requests, but knowledge of future and timing of data requests, prefetching data (green blocks) requests derived from this execution plan1, including i) the and evicting other data (orange) to improve performance. dependency graph, ii) job type, and iii) job input datasets and Prefetching allows job J6 to run faster, resulting in a comple- sizes. In addition, to predict the execution timeline, we need tion time of 8 units rather than 9. to iv) predict individual job execution times, which may be At each point in time, MRD fetches the dataset which will done with data from past executions of the same job type be requested the soonest in the future; ties are broken arbi- (sort/join/etc. in PIG; application executable in some sys- trarily. Stage 1 requires 10 units of input, but we have 6 units tems), and v) network and storage system bandwidth, which of cache; we show inputs for J1 and J2 being prefetched, but may be known or can be measured. only part of the two inputs to J3, I3−1, so stage 1 ends at t4 In Table1 we see the jobs created by the PIG compiler as before. Prefetching of inputs to J5 begins at t3, when the (J1;J2;::;J7) as well as the inputs to each job (I1;I2;::::;I6−2) inputs become more valuable than data already in the cache; with their respective sizes. Runtime for each job (in arbitrary however input I5−2 cannot be completely loaded as inputs to units) is predicted without cached input (“baseline runtime”) J3, which is still running, are occupying 3 units of cache, and as well as for the case where each input dataset is cached prefetching I5−1 gives a speedup of 0 to J5. Finally at t6 we (expressed as runtime improvement over baseline). For this prefetch I6−1 but not I6−2, giving a speedup of 1 to job J6 and example we assume that speedups are additive, and that they completing the entire workflow one unit sooner. are all-or-nothing; i.e. if one block of input for J is fetched 2 By taking speedup information into account, we can do (I is 2 units in size), there is no speedup, while it completes 2 much better as shown in Figure 2c(c). For each stage of job in 1 time unit if both units of I are fetched. (We take this 2 execution, we prefetch the set of inputs (subject to available simplifying assumption from Pacman [5]) cache space) which will result in the largest decrease in overall Figure2(a) shows the execution plan without prefetching execution time, or nothing if no decrease is possible. Thus 1We restrict our discussion to PIG; however the same approach may be inputs to J1 and J2 are ignored, as they cannot cause stage 1 used with Spark and other systems which expose internal dependencies. to complete in less than 2 time units. However the inputs to X Prefetched Block X Eviction candidate block X LRU demand cache Time Time Time MRU 1 1 3_1 3_1 5_1 5_1 6_1 6_1 6_1 1 1 1 5_1 5_1 5_1 5_1 6_1 6_1 3_1 3_1 3_1 6_1 6_1 6_1 6_1 6_1 1 1 3_2 3_2 5_1 5_1 6_1 6_1 6_1 1 1 1 5_2 5_1 5_1 5_1 6_2 6_2 3_1 3_1 3_1 6_1 6_1 6_1 6_1 6_1 2 2 3_1 3_1 5_2 5_2 6_2 6_2 6_2 2 2 2 5_2 5_2 5_2 5_2 5_2 3_1 3_1 3_1 6_2 6_2 6_2 6_2 6_2 2 2 3_1 3_1 5_2 5_2 6_2 6_2 6_2 3_2 3_2 3_2 3_2 3_2 5_2 5_2 5_2 3_2 3_2 3_2 6_2 6_2 6_2 6_2 6_2 3_1 3_1 3_1 3_1 3_1 3_1 5_2 5_2 5_2 3_1 3_1 3_1 3_1 3_1 3_1 6_1 6_1 6_1 3_2 3_2 3_2 3_2 LRU 3_2 3_2 3_2 3_2 3_2 3_2 5_2 5_2 5_2 3_1 3_1 3_1 3_1 3_1 3_1 6_2 6_2 6_2 3_2 3_2 3_2 3_2 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t0 t1 t2 t3 t4 t5 t6 t7 t8 t0 t1 t2 t3 t4 t5 t6 t7 J J J J 3 7 3 7 J3 J4 J7 J J J6 J J J 2 4 2 4 6 J2 J5 J6 J J 1 J5 1 J5 J1 (a) LRU (b) MRD (c) NOC Figure 2: Different cache managements decisions over Query #8 from TPC-H benchmark.
Recommended publications
  • Using Alluxio to Optimize and Improve Performance of Kubernetes-Based Deep Learning in the Cloud
    Using Alluxio to Optimize and Improve Performance of Kubernetes-Based Deep Learning in the Cloud Featuring Alibaba Cloud Container Service Team Case Study What’s Inside 1 / New Trends in AI: Kubernetes-based This article presents the collaborative work of Deep Learning in the Cloud Alibaba, Alluxio, and Nanjing University in tackling the problem of Artificial Intelligence and Deep Learning 2 / Container and Data Orchestration model training in the cloud. We adopted a hybrid Based Architecture solution with a data orches-tration layer that connects 3 / Training in the Cloud - The First Take at private data centers to cloud platforms in a Alluxio Distributed Cache containerized environment. Various perfor-mance bottlenecks are analyzed with detailed optimizations of 4 / Performance Optimization of Model each component in the architecture. Our goal was to Training on the Cloud reduce the cost and complexity of data access for Deep 5 / Summary and Future Work Learning training in a hybrid environment, which resulted in over 40% reduction in training time and cost. © Copyright Alluxio, Inc. All rights reserved. Alluxio is a trademark of Alluxio, Inc. WHITEPAPER 1 / New trends in AI: Kubernetes-Based Deep Learning in the Cloud Background The rising popularity of artificial intelligence (AI) and deep learning (DL), where artificial neural networks are trained with increasingly massive amounts of data, continues to drive innovative solutions to improve data processing. Distributed DL model training can take advantage of multiple technologies, such as: • Cloud computing for elastic and scalable infrastructure • Docker for isolation and agile iteration via containers and Kubernetes for orchestrating the deployment of containers • Accelerated computing hardware, such as GPUs The merger of these technologies as a combined solution is emerging as the industry trend for DL training.
    [Show full text]
  • Alluxio Overview
    Alluxio Overview What’s Inside 1 / Introduction 2 / Data Access Challenges 3 / Benefits of Alluxio 4 / How Alluxio Works 5 / Enabling Compute and Storage Separation 6 / Use Cases 7 / Deployment © Copyright Alluxio, Inc. All rights reserved. Alluxio is a trademark of Alluxio, Inc. WHITEPAPER 1 / Introduction Alluxio is an open source software that connects analytics applications to heterogeneous data sources through a distribut- ed caching layer that sits between compute and storage. It runs on commodity hardware, creating a shared data layer abstracting the files or objects in underlying persistent storage systems. Applications connect to Alluxio via a standard interface, accessing data from a single unified source. Application Interface: Alluxio API / Hadoop Compatible / S3 Compatible / REST / FUSE Storage Interface: Any Object / File Storage WHITEPAPER / 2 2 / Data Access Challenges Organizations face a range of challenges while striving to extract value from data. Alluxio provides innovation at the data layer to abstract complexity, unify data, and intelligently manage data. This approach enables a new way to interact with data and connect the applications and people doing the work to the data sources, regardless of format or location. Doing so provides a solution to a range of challenges, for example: · Lack of access to data stored in storage silos across different departments and locations, on-premise and in the cloud · Difficulty in sharing data with multiple applications · Each application and storage system has its own interface and data exists in a wide range of formats · Data is often stored in clouds or remote locations with network latency slowing performance and impacting the freshness of the data · Storage is often tightly coupled with compute making it difficult to scale and manage storage independently / 3 3 / Benefits of Alluxio Alluxio helps overcome the obstacles to extracting value from data by making it simple to give applications access to what- ever data is needed, regardless of format or location.
    [Show full text]
  • Accelerate Big Data Processing (Hadoop, Spark, Memcached, & Tensorflow) with HPC Technologies
    Accelerate Big Data Processing (Hadoop, Spark, Memcached, & TensorFlow) with HPC Technologies Talk at Intel® HPC Developer Conference 2017 (SC ‘17) by Dhabaleswar K. (DK) Panda Xiaoyi Lu The Ohio State University The Ohio State University E-mail: [email protected] E-mail: [email protected] http://www.cse.ohio-state.edu/~panda http://www.cse.ohio-state.edu/~luxi Big Data Processing and Deep Learning on Modern Clusters • Multiple tiers + Workflow – Front-end data accessing and serving (Online) • Memcached + DB (e.g. MySQL), HBase, etc. – Back-end data analytics and deep learning model training (Offline) • HDFS, MapReduce, Spark, TensorFlow, BigDL, Caffe, etc. Network Based Computing Laboratory Intel® HPC Developer Conference 2017 2 Drivers of Modern HPC Cluster Architectures High Performance Interconnects - Accelerators / Coprocessors InfiniBand high compute density, high Multi-core Processors <1usec latency, 100Gbps Bandwidth> performance/watt SSD, NVMe-SSD, NVRAM >1 TFlop DP on a chip • Multi-core/many-core technologies • Remote Direct Memory Access (RDMA)-enabled networking (InfiniBand and RoCE) • Solid State Drives (SSDs), Non-Volatile Random-Access Memory (NVRAM), NVMe-SSD • Accelerators (NVIDIA GPGPUs and Intel Xeon Phi) Tianhe – 2 Titan Stampede Tianhe – 1A Network Based Computing Laboratory Intel® HPC Developer Conference 2017 3 Interconnects and Protocols in OpenFabrics Stack for HPC (http://openfabrics.org) Application / Middleware Application / Middleware Interface Sockets Verbs Protocol Kernel Space TCP/IP TCP/IP
    [Show full text]
  • Alluxio: a Virtual Distributed File System by Haoyuan Li A
    Alluxio: A Virtual Distributed File System by Haoyuan Li A dissertation submitted in partial satisfaction of the requirements for the degree of Doctor of Philosophy in Computer Science in the Graduate Division of the University of California, Berkeley Committee in charge: Professor Ion Stoica, Co-chair Professor Scott Shenker, Co-chair Professor John Chuang Spring 2018 Alluxio: A Virtual Distributed File System Copyright 2018 by Haoyuan Li 1 Abstract Alluxio: A Virtual Distributed File System by Haoyuan Li Doctor of Philosophy in Computer Science University of California, Berkeley Professor Ion Stoica, Co-chair Professor Scott Shenker, Co-chair The world is entering the data revolution era. Along with the latest advancements of the Inter- net, Artificial Intelligence (AI), mobile devices, autonomous driving, and Internet of Things (IoT), the amount of data we are generating, collecting, storing, managing, and analyzing is growing ex- ponentially. To store and process these data has exposed tremendous challenges and opportunities. Over the past two decades, we have seen significant innovation in the data stack. For exam- ple, in the computation layer, the ecosystem started from the MapReduce framework, and grew to many different general and specialized systems such as Apache Spark for general data processing, Apache Storm, Apache Samza for stream processing, Apache Mahout for machine learning, Ten- sorflow, Caffe for deep learning, Presto, Apache Drill for SQL workloads. There are more than a hundred popular frameworks for various workloads and the number is growing. Similarly, the storage layer of the ecosystem grew from the Apache Hadoop Distributed File System (HDFS) to a variety of choices as well, such as file systems, object stores, blob stores, key-value systems, and NoSQL databases to realize different tradeoffs in cost, speed and semantics.
    [Show full text]
  • Intel Select Solutions for HPC & AI Converged Clusters
    Solution Brief Intel® Select Solutions High Performance Computing and AI March 2021 Intel Select Solutions for HPC & AI Converged Clusters Intel Select Solutions deliver the compute-intensive resources needed to run artificial-intelligence (AI) workloads on existing high-performance computing (HPC) clusters. Enterprises are looking to simulation and modeling, artificial intelligence (AI), and big data analytics to help them achieve breakthrough discoveries and innovation. They understand these workloads benefit from a high-performance computing (HPC) infrastructure, yet they might still believe that separate HPC, AI, and big data clusters are the best choice for running these workloads. Contributing to this belief are two challenges. The first challenge is a fundamental difference in how workloads request resources and how HPC systems allocate them. AI and analytics workloads request compute resources dynamically, an approach that isn’t compatible with batch scheduling software used to allocate system resources in HPC clusters. The second challenge is the pattern of using computing systems based on graphics processing units (GPUs) as dedicated solutions for AI workloads. Enterprises might not realize that adding these workloads to an existing HPC cluster is feasible without the use of GPUs. Enterprises can deliver the compute infrastructure needed by AI workloads, with high levels of performance and cost-effectiveness, without adding the complexity of managing separate, dedicated systems. What they need is the ability to run HPC, big data analytics, and AI workloads within the same HPC infrastructure. They also need optimized resource scheduling that helps save time and reduce computing costs. Creating a converged platform to run HPC, AI, and analytics workloads in a single cluster infrastructure supports breakthrough innovation.
    [Show full text]
  • Best Practices
    Cloud Container Engine Best Practices Issue 01 Date 2021-09-07 HUAWEI TECHNOLOGIES CO., LTD. Copyright © Huawei Technologies Co., Ltd. 2021. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means without prior written consent of Huawei Technologies Co., Ltd. Trademarks and Permissions and other Huawei trademarks are trademarks of Huawei Technologies Co., Ltd. All other trademarks and trade names mentioned in this document are the property of their respective holders. Notice The purchased products, services and features are stipulated by the contract made between Huawei and the customer. All or part of the products, services and features described in this document may not be within the purchase scope or the usage scope. Unless otherwise specified in the contract, all statements, information, and recommendations in this document are provided "AS IS" without warranties, guarantees or representations of any kind, either express or implied. The information in this document is subject to change without notice. Every effort has been made in the preparation of this document to ensure accuracy of the contents, but all statements, information, and recommendations in this document do not constitute a warranty of any kind, express or implied. Issue 01 (2021-09-07) Copyright © Huawei Technologies Co., Ltd. i Cloud Container Engine Best Practices Contents Contents 1 Checklist for Deploying Containerized Applications in the Cloud...............................1 2 Cluster.......................................................................................................................................
    [Show full text]
  • A Solution for Bigdata Integrate with Ceph Inwinstack / Chief Architect Thor Chin Agenda
    A solution for BigData integrate with Ceph inwinSTACK / Chief Architect Thor Chin Agenda Why we need Ceph? Why we need to integrate Ceph with Big Data? How to integrate Ceph with Big Data? What’s Alluxio? Alluxio User List Architecture for Ceph integrate with Big Data Example Why we need Ceph? Distributed storage system - Fault tolerant , no SPoF X86 Commodity hardware - Saving you costs, giving you flexibility Large scale – Incremental expansion - 10s to 1000s of nodes Unified storage platform - Scalable object , Block , File system. Open source – No vender lock-in Automatically balance the file system Data security - with 2 or more copies in different physical store media. Why we need to integrate Ceph with Big Data? Separate Application and Data Better Architecture to solve Hadoop Name Node HA Issue Scalable storage solution High Performance How to integrate Ceph with Big Data? Through an Interface Alluxio: A Virtual Distributed Storage System What’s Alluxio Unified Access Thriving Community High Performance Alluxio is the unified access point Start from UC Berkeley Open Alluxio's memory-centric for your data. Applications only Source Project – Tachyon since architecture enables data access need to connect with Alluxio to 2013 Apr. released 16 versions orders of magnitudes faster than access data in all your under and rename to Alluxio release 1.0 existing solutions. storage systems. version in 2016 Feb. Fastest growing open source project in big data history with more than 200 contributors from over 50 organizations.
    [Show full text]
  • High Performance File System and I/O Middleware Design for Big Data on HPC Clusters
    High Performance File System and I/O Middleware Design for Big Data on HPC Clusters Dissertation Presented in Partial Fulfillment of the Requirements for the Degree Doctor of Philosophy in the Graduate School of The Ohio State University By Nusrat Sharmin Islam, M.Sc. Graduate Program in Computer Science and Engineering The Ohio State University 2016 Dissertation Committee: Dr. Dhabaleswar K. (DK) Panda, Advisor Dr. Ponnuswamy Sadayappan Dr. Radu Teodorescu Dr. Xiaoyi Lu c Copyright by Nusrat Sharmin Islam 2016 Abstract Hadoop MapReduce and Spark are the two most popular Big Data processing frame- works of the recent time and Hadoop Distributed File System (HDFS) is the underlying file system for MapReduce, Spark, Hadoop Database, HBase as well as SQL query en- gines like Hive and Spark SQL. HDFS along with these upper-level middleware is now extensively being used on High Performance Computing (HPC) systems. The large-scale HPC systems, by necessity, are equipped with high performance interconnects like Infini- Band, heterogeneous storage devices like RAM Disk, SSD, HDD, and parallel file systems like Lustre. Non-Volatile Memory (NVM) is emerging and making its way into the HPC systems. Hence, the performance of HDFS, and in turn, the upper-level middleware and applications, is heavily dependent upon how it has been designed and optimized to take the system resources and architecture into account. But HDFS was initially designed to run over low-speed interconnects and disks on commodity clusters. As a result, it cannot efficiently utilize the resources available in HPC systems. For example, HDFS uses Java Socket for communication that leads to the overhead of multiple data copies and offers little overlapping among different phases of operations.
    [Show full text]
  • Scalable Collaborative Caching and Storage Platform for Data Analytics
    Scalable Collaborative Caching and Storage Platform for Data Analytics by Timur Malgazhdarov A thesis submitted in conformity with the requirements for the degree of Master of Applied Science Edward S. Rogers Sr. Department of Electrical and Computer Engineering University of Toronto c Copyright 2018 by Timur Malgazhdarov Abstract Scalable Collaborative Caching and Storage Platform for Data Analytics Timur Malgazhdarov Master of Applied Science Edward S. Rogers Sr. Department of Electrical and Computer Engineering University of Toronto 2018 The emerging Big Data ecosystem has brought about dramatic proliferation of paradigms for analytics. In the race for the best performance, each new engine enforces tight cou- pling of analytics execution with caching and storage functionalities. This one-for-all ap- proach has led to either oversimplifications where traditional functionality was dropped or more configuration options that created more confusion about optimal settings. We avoid user confusion by following an integrated multi-service approach where we assign responsibilities to decoupled services. In our solution, called Gluon, we build a collab- orative cache tier that connects state-of-art analytics engines with a variety of storage systems. We use both open-source and proprietary technologies to implement our archi- tecture. We show that Gluon caching can achieve 2.5x-3x speedup when compared to uncustomized Spark caching while displaying higher resource utilization efficiency. Fi- nally, we show how Gluon can integrate traditional storage back-ends without significant performance loss when compared to vanilla analytics setups. ii Acknowledgements I would like to thank my supervisor, Professor Cristiana Amza, for her knowledge, guidance and support. It was my privilege and honor to work under Professor Amza's supervision.
    [Show full text]
  • Spark on Docker Solutions
    Weiting Chen [email protected] Zhen Fan [email protected] INTEL NOTICE & DISCLAIMER No license (express or implied, by estoppel or otherwise) to any intellectual property rights is granted by this document. Intel disclaims all express and implied warranties, including without limitation, the implied warranties of merchantability, fitness for a particular purpose, and non-infringement, as well as any warranty arising from course of performance, course of dealing, or usage in trade. This document contains information on products, services and/or processes in development. All information provided here is subject to change without notice. Contact your Intel representative to obtain the latest forecast, schedule, specifications and roadmaps. The products and services described may contain defects or errors known as errata which may cause deviations from published specifications. Current characterized errata are available on request. Copies of documents which have an order number and are referenced in this document may be obtained by calling 1- 800-548-4725 or by visiting www.intel.com/design/literature.htm. Intel, the Intel logo, Intel® are trademarks of Intel Corporation in the U.S. and/or other countries. *Other names and brands may be claimed as the property of others Copyright © 2016 Intel Corporation. System Technologies & Optimization (STO) 2 AGENDA BACKGROUND SPARK ON KUBERNETES - Why Spark-on-K8s - How it works - Current Issues JD.COM CASE STUDY - Architecture - Network Choice - Storage Choice SUMMARY System Technologies & Optimization (STO) 3 System Technologies & Optimization (STO) 4 about spark-on-kubernetes https://github.com/apache-spark-on-k8s/spark Spark* on Kubernetes*(K8s) is a new project proposed by the companies including Bloomberg, Google, Intel, Palantir, Pepperdata, and Red Hat.
    [Show full text]
  • Kyle Bader - Red Hat Yuan Zhou, Yong Fu, Jian Zhang - Intel May, 2018 Agenda
    Kyle Bader - Red Hat Yuan Zhou, Yong Fu, Jian Zhang - Intel May, 2018 Agenda ▪ Background and Motivations ▪ The Workloads, Reference Architecture Evolution and Performance Optimization ▪ Performance Comparison with Remote HDFS ▪ Summary & Next Step Optimization Notice Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. DISCONTINUITY IN BIG DATA INFRASTRUCTURE - WHY ? CONGESTION in busy analytic clusters causing missed SLAs. HADOOP MULTIPLE TEAMS COMPETING and sharing the same big data resources. SPARKSQL HIVE PRESTO KAFKA SPARK MAPREDUCE IMPALA NiFi Optimization Notice Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. MODERN BIG DATA ANALYTICS PIPELINE KEY TERMINOLOGY TRANSFORM, STREAM MERGE, DATA PROCESSING JOIN ANALYTICS DATA INGEST DATA MACHINE GENERATION SCIENCE LEARNING Optimization Notice Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. MODERN BIG DATA ANALYTICS PIPELINE KEY TERMINOLOGY TRANSFORM, STREAM MERGE, DATA PROCESSING JOIN ANALYTICS • Kafka • Hadoop • Spark • Spark • Hadoop DATA INGEST DATA MACHINE GENERATION SCIENCE LEARNING • Sensors • NiFi • Presto • TensorFlow • Click-stream • Kafka • Impala • Transactions • SparkSQL • Call-detail records Optimization Notice Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. DISCONTINUITY IN BIG DATA INFRASTRUCTURE - WHY ? CONGESTION in busy analytic clusters causing missed SLAs. HADOOP MULTIPLE TEAMS COMPETING and sharing the same big data resources. SPARKSQL HIVE PRESTO KAFKA SPARK MAPREDUCE IMPALA NiFi Optimization Notice Copyright © 2018, Intel Corporation.
    [Show full text]
  • Pocket: Elastic Ephemeral Storage for Serverless Analytics
    Pocket: Elastic Ephemeral Storage for Serverless Analytics Ana Klimovic1 Yawen Wang1 Patrick Stuedi 2 Animesh Trivedi2 Jonas Pfefferle2 Christos Kozyrakis1 1 Stanford University 2 IBM Research Abstract Pareto frontier Serverless computing is becoming increasingly popu- lar, enabling users to quickly launch thousands of short- lived tasks in the cloud with high elasticity and fine- grain billing. These properties make serverless comput- ing appealing for interactive data analytics. However exchanging intermediate data between execution stages in an analytics job is a key challenge as direct commu- nication between serverless tasks is difficult. The nat- ural approach is to store such ephemeral data in a re- mote data store. However, existing storage systems are not designed to meet the demands of serverless applica- tions in terms of elasticity, performance, and cost. We present Pocket, an elastic, distributed data store that au- Figure 1: Example of performance-cost trade-off for tomatically scales to provide applications with desired a serverless video analytics job using different storage performance at low cost. Pocket dynamically rightsizes technologies and VM types in Amazon EC2 resources across multiple dimensions (CPU cores, net- work bandwidth, storage capacity) and leverages multi- able parallelism in an analytics job and achieve near real- ple storage technologies to minimize cost while ensuring time performance [32, 45, 27]. In contrast to traditional applications are not bottlenecked on I/O. We show that serverless applications that consist of a single function Pocket achieves similar performance to ElastiCache Re- executed when a new request arrives, analytics jobs typ- dis for serverless analytics applications while reducing ically consist of multiple stages and require sharing of cost by almost 60%.
    [Show full text]