Unification of Temporary Storage in the Nodekernel Architecture

Total Page:16

File Type:pdf, Size:1020Kb

Unification of Temporary Storage in the Nodekernel Architecture Unification of Temporary Storage in the NodeKernel Architecture Patrick Stuedi, IBM Research; Animesh Trivedi, Vrije Universiteit; Jonas Pfefferle, IBM Research; Ana Klimovic, Stanford University; Adrian Schuepbach and Bernard Metzler, IBM Research https://www.usenix.org/conference/atc19/presentation/stuedi This paper is included in the Proceedings of the 2019 USENIX Annual Technical Conference. July 10–12, 2019 • Renton, WA, USA ISBN 978-1-939133-03-8 Open access to the Proceedings of the 2019 USENIX Annual Technical Conference is sponsored by USENIX. Unification of Temporary Storage in the NodeKernel Architecture Patrick Stuedi† Animesh Trivedi‡ Jonas Pfefferle† Ana Klimovic§ Adrian Schuepbach† Bernard Metzler† †IBM Research ‡Vrije Universiteit §Stanford University Abstract may consist of a large number of files which are organized hierarchically, vary widely in size, are written randomly, and Efficiently exchanging temporary data between tasks is criti- read sequentially. While file systems (e.g., HDFS) offer a cal to the end-to-end performance of many data processing convenient hierarchical namespace and efficiently store large frameworks and applications. Unfortunately, the diverse na- datasets for sequential access, distributed key-value stores are ture of temporary data creates storage demands that often fall optimized for scalable access to a large number of small ob- between the sweet spots of traditional storage platforms, such jects. Similarly, DRAM-based key-value stores (e.g., Redis) as file systems or key-value stores. offer the required low latency, but persistent storage platforms We present NodeKernel, a novel distributed storage archi- (e.g, S3) are more suitable for high capacity at low cost. Over- tecture that offers a convenient new point in the design space all, we find that existing storage platforms are not able to by fusing file system and key-value semantics in a common satisfy all the diverse requirements for temporary data storage storage kernel while leveraging modern networking and stor- and sharing in distributed data processing workloads. age hardware to achieve high performance and cost-efficiency. NodeKernel NodeKernel provides hierarchical naming, high scalability, In this paper we present , a new distributed and close to bare-metal performance for a wide range of data storage architecture designed from the ground up to support sizes and access patterns that are characteristic of temporary fast and efficient storage of temporary data. As its most dis- data. We show that storing temporary data in Crail, our con- tinguishing property, the NodeKernel architecture fuses file crete implementation of the NodeKernel architecture which system and key-value semantics while leveraging modern net- uses RDMA networking with tiered DRAM/NVMe-Flash working and storage hardware to achieve high performance. storage, improves NoSQL workload performance by up to NodeKernel is based on two key observations. First, many 4.8× and Spark application performance by up to 3.4×. Fur- features offered by long-term storage platforms, such as dura- thermore, by storing data across NVMe Flash and DRAM bility and fault-tolerance, are not critical when storing tem- storage tiers, Crail reduces storage cost by up to 8× compared porary data. We observe that under such circumstances, the to DRAM-only storage systems. software architectures of file systems and key-value stores begin to look surprisingly similar. The fundamental differ- ence is that file systems require an extra level of indirection 1 Introduction to map offsets in file streams to distributed storage resources, while key-value stores map entire key-value pairs to stor- Managing temporary data efficiently is key to the performance age resources. The second observation is that low-latency of cluster computing workloads. For example, application networking hardware and multi-CPU many-core servers dra- frameworks often cache input data or share intermediate data, matically reduce the cost of this indirection in a distributed both both within a job (e.g., shuffle data in a map-reduce job) setting by enabling scalable RPC communication at latencies and between jobs (e.g., pre-processed images in a machine of a few microseconds. learning training workflow). Temporary data storage is also in- Based on these insights we develop the NodeKernel archi- creasingly important in serverless computing for exchanging tecture by implementing file system and key-value semantics data between different stages of tasks [17]. as thin layers on top of a common storage kernel. The storage Storing temporary data efficiently is challenging as its char- kernel operates on opaque data objects called “nodes” in a acteristics typically lie between the design points of existing unified namespace. Applications can store arbitrary size data storage platforms, such as distributed file systems and key- in nodes, arrange nodes in a hierarchical namespace, and ob- value stores. For instance, shuffle data in a map-reduce job tain file system or key-value semantics through specialized USENIX Association 2019 USENIX Annual Technical Conference 767 node types if needed. For instance, key-value and table nodes 100 permit concurrent creation of nodes with the same name, of- 90 TPC-DS ML-Cocoa fering last-put-wins semantics. On the other hand, file and 80 PR-Twitter directory nodes permit efficient enumeration of data sets at a 70 given level in the storage hierarchy. By splitting functionality 60 in a common storage kernel and custom node types, NodeKer- 50 CDF nel enables applications to use a single platform to store data 40 that may require different semantics, while generally offering 30 20 good performance for a wide range of data sizes and access 10 patterns. 0 NodeKernel is designed explicitly with modern hardware 1 1kB 1MB 1GB in mind. Following strict separation of concerns, the storage data size kernel is composed of a lightweight and scalable metadata plane tailored to low-latency networking hardware and an Figure 1: CDF of the size of intermediate data written or read efficient data plane that provides access to multiple tiers of per compute task in Spark for different workloads. network-attached storage resources. The metadata plane is trimmed down to offer only the most critical functionality, with low overhead. The data plane runs a lightweight software NoSQL workloads. When integrated in Spark’s shuf- stack and leverages modern networking and storage hardware fle and broadcast services, Crail improves application to achieve fast access to arbitrary size data sets while also op- performance up to 3.4× and reduces cost up to 8×. timizing cost efficiency. For instance, data attached to “nodes” may either be pinned to a particular storage technology tier Crail is an open source Apache project [2,3] with the or may spill from one storage tier to another depending on code available for download from the project website as well performance and cost requirements. as directly from GitHub at https://github.com/apache/ Crail is our concrete implementation of the NodeKernel incubator-crail. Further, all benchmarks used in this pa- architecture using RDMA networking and two storage tiers per are open source. based on DRAM and NVMe SSDs respectively. We evaluated Crail on a 100Gb/s RoCE cluster equipped with Intel Optane 2 Background and Motivation NVMe SSDs using raw storage microbenchmarks as well as using the NoSQL YCSB benchmark and different Spark work- Temporary data represent a large and important class of in- loads. Our results show that Crail matches the performance processing data in analytics frameworks. For example, Zhang of current state-of-the-art file systems and key-value stores et al. report that over 50% Spark jobs executed at Facebook when operated in their sweet spot, and outperforms existing contain at least one shuffle operation, generating significant systems up to 3.4× for data accesses outside the sweet spot of amounts of temporary data [37]. file systems and key-value stores. Moreover, Crail creates new We define temporary data as the multitude of all application opportunities to reduce cost and gain flexibility with almost data being created, handled, or consumed during processing, no performance penalties by using NVMe Flash in addition excluding the original input and final output data. Specifically, to DRAM. For instance, using Crail to store shuffle data in we identify three distinct classes of temporary data: intra-job, Spark allows us to adjust the ratio between DRAM and Flash inter-job, and cached input/output datasets. Intra-job tempo- with only a minimal increase in job runtimes. rary data is generated within a framework when executing a In summary, this paper makes the following contributions: single job like page-rank, or a SQL query. Common examples are datasets generated during shuffle or broadcast operations • We propose NodeKernel, a new storage architecture fus- in frameworks like Spark, Hadoop or Flink. Such data is typi- ing file system and key-value semantics to best meet cally generated and consumed by the same job, which puts a the needs of temporary data storage in data processing bound on the lifetime of the data. Inter-job temporary data are workloads. intermediate results in multi-job pipelines. For example, there are many pre-processing and post-processing jobs in a typical • We present Crail, a concrete implementation of the machine learning pipeline [35], where the output of one job NodeKernel architecture using RDMA, DRAM, and becomes the input of another job. Lastly, examples of cached NVMe Flash. input/output data are mostly read-only datasets that are pulled into a cache for fast repetitive processing. For instance, users • We show that storing temporary data in Crail reduces may run many SQL queries on the same table (or a view) over the runtime and cost of data processing workloads. For a short period of time. In this case, a copy of the input table instance, Crail improves performance up to 4.8× for might be cached on a fast storage media.
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]