A Framework for Ebpf-Based Network Functions in an Era of Microservices

Total Page:16

File Type:pdf, Size:1020Kb

A Framework for Ebpf-Based Network Functions in an Era of Microservices IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. 18, NO. 1, MARCH 2021 133 A Framework for eBPF-Based Network Functions in an Era of Microservices Sebastiano Miano , Member, IEEE, Fulvio Risso , Member, IEEE, Mauricio Vásquez Bernal, Matteo Bertrone, and Yunsong Lu Abstract—By moving network functionality from dedicated stores [9], [10]; thanks also to the development and availability hardware to software running on end-hosts, Network Functions of programmable network devices (e.g., SmartNICs) [11]. The Virtualization (NFV) pledges the benefits of cloud computing to increased flexibility (software is intrinsically easier to program packet processing. While most of the NFV frameworks today rely on kernel-bypass approaches, no attention has been given to compared to the hardware), and the recent advances in terms of kernel packet processing, which has always proved hard to evolve speed for the software packet processing have then contributed and to program. In this article, we present Polycube, a software to the proliferation of a myriad of VNFs frameworks that framework whose main goal is to bring the power of NFV to provide implementations of efficient and easily programmable in-kernel packet processing applications, enabling a level of flex- software middleboxes [12], [13], [14], [15], [16], [17], [18]. ibility and customization that was unthinkable before. Polycube enables the creation of arbitrary and complex network function Current solutions to implement the dataplane of those soft- chains, where each function can include an efficient in-kernel data ware packet processing applications rely mostly on kernel plane and a flexible user-space control plane with strong char- bypass approaches, by giving to the user-space direct access acteristics of isolation, persistence, and composability. Polycube to the underlying hardware (e.g., DPDK [19], netmap [20], network functions, called Cubes, can be dynamically generated FD.io [21]) or by following a unikernel approach, where and injected into the kernel networking stack, without requiring custom kernels or specific kernel modules, simplifying the debug- only the minimal set of OS functionalities, required for ging and introspection, which are two fundamental properties in the application to run, are built with the application itself recent cloud environments. We validate the framework by show- (e.g., ClickOS [22], [23], [24]). These approaches have per- ing significant improvements over existing applications, and we fectly served their purposes, with efficient implementations prove the generality of the Polycube programming model through of software network functions that have shown potential for the implementation of complex use cases such as a network provider for Kubernetes. processing 10-100Gbps on a single server [25], [26], [27]. Recently, new technologies such as 5G, edge comput- Index Terms—NFV, eBPF, XDP, linux. ing and IoT among the others, led to a significant increase in the total number of connected devices and consequent I. INTRODUCTION network load, hence originating two new trends. From one ITH the advent of Software Defined Networks (SDN) side, traditional “centralized” appliances (e.g., global datacen- W and Network Functions Virtualization (NFV), a large ter firewalls) are hard to scale, leading to a more distributed number of Network Functions (NFs)1 are becoming pure soft- approach in which network functions are implemented directly ware images executed on general-purpose servers, running on end hosts (e.g., datacenter servers). From the other side, either as virtual machines (VMs) or as cloud native software. cloud-native technologies are used to built NFs packaged in Possible examples include load balancing [1], [2], [3], [4], containers, deployed as microservices, and managed on elastic congestion control [5], [6], [7], and application-specific infrastructure through agile DevOps processes and continu- network workloads such as DDoS Mitigation [8] or key-value ous delivery workflows [28]. These new requirements have also caused a visible change in the type and requirements Manuscript received June 1, 2020; revised October 28, 2020 and January 4, 2021; accepted January 25, 2021. Date of publication January 29, 2021; of network functionalities deployed across the data center. date of current version March 11, 2021. The associate editor coordi- Network applications should be able to continuously adapt nating the review of this article and approving it for publication was to the runtime behavior of cloud-native applications, which T. Zinner. (Corresponding author: Sebastiano Miano.) Sebastiano Miano, Fulvio Risso, Mauricio Vásquez Bernal, and might regularly change or be scheduled by an orchestra- Matteo Bertrone are with the Department of Control and Computer tor, or easily interact with existing “native” applications by Engineering, Politecnico di Torino, 10129 Torino, Italy (e-mail: sebas- leveraging kernel functionalities - all of this without sacri- [email protected]; [email protected]; [email protected]; [email protected]). ficing performance or flexibility. For instance, cloud-native Yunsong Lu was with the Networking and Emerging Technologies platforms, like Kubernetes [29], can exploit different network Group, Futurewei Technologies, Inc., Santa Clara, CA 95050 USA. He plug-ins2 to implement the underlying data plane functionali- is now with the Linux Foundation, San Francisco, CA, USA (e-mail: [email protected]). ties and transparently steer packets between micro-services. Digital Object Identifier 10.1109/TNSM.2021.3055676 1This article uses the term Network Function (NF) to specify compo- nents such as traditional individual appliances (e.g., bridge, router, NAT, etc.), 2A list of network plugins (also known as Container Network Interface while a service defines a more complex scenario in which multiple NFs must (CNI) plug-ins) is available in the Kubernetes Cluster Networking page, cooperate, e.g., through a chain of NFs. https://kubernetes.io/docs/concepts/cluster-administration/networking/. 1932-4537 c 2021 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See https://www.ieee.org/publications/rights/index.html for more information. Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 16,2021 at 18:07:53 UTC from IEEE Xplore. Restrictions apply. 134 IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. 18, NO. 1, MARCH 2021 Unfortunately, the previously mentioned kernel-bypass used to simplify the development of new NFs approaches suffer within this new scenario [30]. First, they (Section VI). require the exclusive allocation of resources (i.e., CPU cores) • We introduce a generic model for the control and man- to achieve good performance; this is perfectly fine when agement plane of each NF that is used to simplify the we have machines dedicated to networking purposes but it manageability and accelerate the development of new becomes overwhelming when this cost has to be paid for network services (Section VII), which complement the every server in the cluster since they permanently steal pre- dataplane-only approach proposed by eBPF. cious CPU cycles to other application tasks. Second, they • Finally, we identify and quantify both the overhead require to re-implement the entire network stack in userspace, introduced by the Polycube programming model and losing all the well-tested configuration, deployment and man- its the data plane abstractions and the performance agement tools developed over the years within the operating improvements brought to existing kernel implementations system. Third, they rely on custom or modified versions of (Section IX). NIC (network interface card) drivers, which may not be avail- Polycube is open-source and available at [34]. able on public cloud platforms, also requiring a non-negligible maintenance cost. Last but not least, they have difficulties (and poor performance) when dealing with existing kernel II. BACKGROUND implementations or communicating with applications that are not implemented using the same approach, requiring them This section lists the main properties that we believe are fun- to adhere to custom-defined APIs (e.g., mTCP [31]) or to damental in today’s environments (Section II-A), it provides change the original application logic (e.g., StackMap [32]). a brief overview of the extended Berkeley Packet Filter sub- As a consequence, most of the existing cloud-native network system (Section II-B) and why we believe this may represent plug-ins for Kubernetes still rely on functionalities and tools a good choice for networking applications (Section II-C). embedded into the operating system network stack (e.g., ipta- bles, ipvs, linuxbridge), while Polycube (and recently, Cilium) being notable exceptions. Unfortunately, the drawbacks of this A. Desired Properties for Cloud-Native NFs approach are also evident. First of all, fixed kernel network Low Overhead: Although efficiency is always a desir- applications are notoriously slow and inefficient given their able property, this assumes even more significance in the generality, which impairs the possibility to specialize them cloud-native context where servers are mostly used to deliver depending on workloads or the type of application that is high-level services (e.g., Web portals, databases, etc.) and running on top. Secondly, software network functions (or networking components are often perceived as an unavoidable the associated kernel modules [33]) that
Recommended publications
  • Informal Data Transformation Considered Harmful
    Informal Data Transformation Considered Harmful Eric Daimler, Ryan Wisnesky Conexus AI out the enterprise, so that data and programs that depend on that data need not constantly be re-validated for ev- ery particular use. Computer scientists have been develop- ing techniques for preserving data integrity during trans- formation since the 1970s (Doan, Halevy, and Ives 2012); however, we agree with the authors of (Breiner, Subrah- manian, and Jones 2018) and others that these techniques are insufficient for the practice of AI and modern IT sys- tems integration and we describe a modern mathematical approach based on category theory (Barr and Wells 1990; Awodey 2010), and the categorical query language CQL2, that is sufficient for today’s needs and also subsumes and unifies previous approaches. 1.1 Outline To help motivate our approach, we next briefly summarize an application of CQL to a data science project undertaken jointly with the Chemical Engineering department of Stan- ford University (Brown, Spivak, and Wisnesky 2019). Then, in Section 2 we review data integrity and in Section 3 we re- view category theory. Finally, we describe the mathematics of our approach in Section 4, and conclude in Section 5. We present no new results, instead citing a line of work summa- rized in (Schultz, Spivak, and Wisnesky 2017). Image used under a creative commons license; original 1.2 Motivating Case Study available at http://xkcd.com/1838/. In scientific practice, computer simulation is now a third pri- mary tool, alongside theory and experiment. Within
    [Show full text]
  • Automating the Capture of Data Transformations from Statistical Scripts in Data Documentation Jie Song George Alter H
    C2Metadata: Automating the Capture of Data Transformations from Statistical Scripts in Data Documentation Jie Song George Alter H. V. Jagadish University of Michigan University of Michigan University of Michigan Ann Arbor, Michigan Ann Arbor, Michigan Ann Arbor, Michigan [email protected] [email protected] [email protected] ABSTRACT CCS CONCEPTS Datasets are often derived by manipulating raw data with • Information systems → Data provenance; Extraction, statistical software packages. The derivation of a dataset transformation and loading. must be recorded in terms of both the raw input and the ma- nipulations applied to it. Statistics packages typically provide KEYWORDS limited help in documenting provenance for the resulting de- data transformation, data documentation, data provenance rived data. At best, the operations performed by the statistical ACM Reference Format: package are described in a script. Disparate representations Jie Song, George Alter, and H. V. Jagadish. 2019. C2Metadata: Au- make these scripts hard to understand for users. To address tomating the Capture of Data Transformations from Statistical these challenges, we created Continuous Capture of Meta- Scripts in Data Documentation. In 2019 International Conference data (C2Metadata), a system to capture data transformations on Management of Data (SIGMOD ’19), June 30-July 5, 2019, Am- in scripts for statistical packages and represent it as metadata sterdam, Netherlands. ACM, New York, NY, USA, 4 pages. https: in a standard format that is easy to understand. We do so by //doi.org/10.1145/3299869.3320241 devising a Structured Data Transformation Algebra (SDTA), which uses a small set of algebraic operators to express a 1 INTRODUCTION large fraction of data manipulation performed in practice.
    [Show full text]
  • What Is a Data Warehouse?
    What is a Data Warehouse? By Susan L. Miertschin “A data warehouse is a subject oriented, integrated, time variant, nonvolatile, collection of data in support of management's decision making process.” https: //www. bus iness.auc. dk/oe kostyr /file /What_ is_a_ Data_ Ware house.pdf 2 What is a Data Warehouse? “A copy of transaction data specifically structured for query and analysis” 3 “Data Warehousing is the coordination, architected, and periodic copying of data from various sources, both inside and outside the enterprise, into an environment optimized for analytical and informational processing” ‐ Alan Simon Data Warehousing for Dummies 4 Business Intelligence (BI) • “…implies thinking abstractly about the organization, reasoning about the business, organizing large quantities of information about the business environment.” p. 6 in Giovinazzo textbook • Purpose of BI is to define and execute a strategy 5 Strategic Thinking • Business strategist – Always looking forward to see how the company can meet the objectives reflected in the mission statement • Successful companies – Do more than just react to the day‐to‐day environment – Understand the past – Are able to predict and adapt to the future 6 Business Intelligence Loop Business Intelligence Figure 1‐1 p. 2 Giovinazzo • Encompasses entire loop shown Business Strategist • Data Storage + ETC = OLAP Data Mining Reports Data Warehouse Data Storage • Data WhWarehouse + Tools (yellow) = Extraction,Transformation, Cleaning DiiDecision Support CRM Accounting Finance HR System 7 The Data Warehouse Decision Support Systems Central Repository Metadata Dependent Data DtData Mar t EtExtrac tion DtData Log Administration Cleansing/Tranformation External Extraction Source Extraction Store Independent Data Mart Operational Environment Figure 1-2 p.
    [Show full text]
  • POLITECNICO DI TORINO Repository ISTITUZIONALE
    POLITECNICO DI TORINO Repository ISTITUZIONALE Rethinking Software Network Data Planes in the Era of Microservices Original Rethinking Software Network Data Planes in the Era of Microservices / Miano, Sebastiano. - (2020 Jul 13), pp. 1-175. Availability: This version is available at: 11583/2841176 since: 2020-07-22T19:49:25Z Publisher: Politecnico di Torino Published DOI: Terms of use: Altro tipo di accesso This article is made available under terms and conditions as specified in the corresponding bibliographic description in the repository Publisher copyright (Article begins on next page) 08 October 2021 Doctoral Dissertation Doctoral Program in Computer and Control Enginering (32nd cycle) Rethinking Software Network Data Planes in the Era of Microservices Sebastiano Miano ****** Supervisor Prof. Fulvio Risso Doctoral examination committee Prof. Antonio Barbalace, Referee, University of Edinburgh (UK) Prof. Costin Raiciu, Referee, Universitatea Politehnica Bucuresti (RO) Prof. Giuseppe Bianchi, University of Rome “Tor Vergata” (IT) Prof. Marco Chiesa, KTH Royal Institute of Technology (SE) Prof. Riccardo Sisto, Polytechnic University of Turin (IT) Politecnico di Torino 2020 This thesis is licensed under a Creative Commons License, Attribution - Noncommercial- NoDerivative Works 4.0 International: see www.creativecommons.org. The text may be reproduced for non-commercial purposes, provided that credit is given to the original author. I hereby declare that, the contents and organisation of this dissertation constitute my own original work and does not compromise in any way the rights of third parties, including those relating to the security of personal data. ........................................ Sebastiano Miano Turin, 2020 Summary With the advent of Software Defined Networks (SDN) and Network Functions Virtualization (NFV), software started playing a crucial role in the computer net- work architectures, with the end-hosts representing natural enforcement points for core network functionalities that go beyond simple switching and routing.
    [Show full text]
  • Data Warehousing on AWS
    Data Warehousing on AWS March 2016 Amazon Web Services – Data Warehousing on AWS March 2016 © 2016, Amazon Web Services, Inc. or its affiliates. All rights reserved. Notices This document is provided for informational purposes only. It represents AWS’s current product offerings and practices as of the date of issue of this document, which are subject to change without notice. Customers are responsible for making their own independent assessment of the information in this document and any use of AWS’s products or services, each of which is provided “as is” without warranty of any kind, whether express or implied. This document does not create any warranties, representations, contractual commitments, conditions or assurances from AWS, its affiliates, suppliers or licensors. The responsibilities and liabilities of AWS to its customers are controlled by AWS agreements, and this document is not part of, nor does it modify, any agreement between AWS and its customers. Page 2 of 26 Amazon Web Services – Data Warehousing on AWS March 2016 Contents Abstract 4 Introduction 4 Modern Analytics and Data Warehousing Architecture 6 Analytics Architecture 6 Data Warehouse Technology Options 12 Row-Oriented Databases 12 Column-Oriented Databases 13 Massively Parallel Processing Architectures 15 Amazon Redshift Deep Dive 15 Performance 15 Durability and Availability 16 Scalability and Elasticity 16 Interfaces 17 Security 17 Cost Model 18 Ideal Usage Patterns 18 Anti-Patterns 19 Migrating to Amazon Redshift 20 One-Step Migration 20 Two-Step Migration 20 Tools for Database Migration 21 Designing Data Warehousing Workflows 21 Conclusion 24 Further Reading 25 Page 3 of 26 Amazon Web Services – Data Warehousing on AWS March 2016 Abstract Data engineers, data analysts, and developers in enterprises across the globe are looking to migrate data warehousing to the cloud to increase performance and lower costs.
    [Show full text]
  • Master Data Simplified
    MASTER THE BEST IN MASTER DATA GOVERNANCE DATA SIMPLIFICATION & MANAGEMENT SIMPLIFIED CHARLIE MASSOGLIA & ANBARASAN MURUGAN ‘A MUST READ FOR DATA ENTHUISIASTS’ - AUSTIN DAVIS About the Authors Charlie Massoglia VP & CIO, Chain-Sys Corporation Former CIO for Dawn Food Products For 13+ years. 25+ years experience with a variety of ERP systems. Extensive experience in system migrations & conversions. Participated in 9 acquisitions ranging from a single US location to 14 sites in 11 countries. Author of numerous technical books, articles, presentations, and seminars globally. Anbarasan Murugan Product Lead, Master Data Management Master Data Simplification & Governance expert. Industry experience of more than 11 years. Chief Technical Architect for more than 10 products TM within the Chain Sys Platform . Has designed complex analytical & transactional Master data processes for Fortune 500 companies. Master Data Simplified An Introduction to Master Data Simplification, Governance, and Management By Charles L. Massoglia VP & CIO Chain●Sys Corporation [email protected] and Anbarasan Murugan Product Manager Chain●Sys Corporation [email protected] No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without written permission of the publisher. For information regarding permission, write to Chain-Sys Corporation, Attention: Permissions Department, 325 S. Clinton Street, Suite 205, Grand Ledge, MI 48837 Trademarks: Chain●Sys Platform is a trademark of Chain-Sys Corporation in the United States and other countries and may not be used without permission.
    [Show full text]
  • Lineage Tracing for General Data Warehouse Transformations
    Lineage Tracing for General Data Warehouse Transformations∗ Yingwei Cui and Jennifer Widom Computer Science Department, Stanford University fcyw, [email protected] Abstract. Data warehousing systems integrate information and managing such transformations as part of the extract- from operational data sources into a central repository to enable transform-load (ETL) process, e.g., [Inf, Mic, PPD, Sag]. analysis and mining of the integrated information. During the The transformations may vary from simple algebraic op- integration process, source data typically undergoes a series of erations or aggregations to complex procedural code. transformations, which may vary from simple algebraic opera- In this paper we consider the problem of lineage trac- tions or aggregations to complex “data cleansing” procedures. ing for data warehouses created by general transforma- In a warehousing environment, the data lineage problem is that tions. Since we no longer have the luxury of a fixed set of of tracing warehouse data items back to the original source items operators or the algebraic properties offered by relational from which they were derived. We formally define the lineage views, the problem is considerably more difficult and tracing problem in the presence of general data warehouse trans- open-ended than previous work on lineage tracing. Fur- formations, and we present algorithms for lineage tracing in this thermore, since transformation graphs in real ETL pro- environment. Our tracing procedures take advantage of known cesses can often be quite complex—containing as many structure or properties of transformations when present, but also as 60 or more transformations—the storage requirements work in the absence of such information.
    [Show full text]
  • Doppiodb 2.0: Hardware Techniques for Improved Integration of Machine Learning Into Databases
    Research Collection Conference Paper doppioDB 2.0: Hardware Techniques for Improved Integration of Machine Learning into Databases Author(s): Kara, Kaan; Wang, Zeke; Zhang, Ce; Alonso, Gustavo Publication Date: 2019-08 Permanent Link: https://doi.org/10.3929/ethz-b-000394510 Originally published in: Proceedings of the VLDB Endowment 12(12), http://doi.org/10.14778/3352063.3352074 Rights / License: Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International This page was generated automatically upon download from the ETH Zurich Research Collection. For more information please consult the Terms of use. ETH Library doppioDB 2.0: Hardware Techniques for Improved Integration of Machine Learning into Databases Kaan Kara Zeke Wang Ce Zhang Gustavo Alonso Systems Group, Department of Computer Science ETH Zurich, Switzerland fi[email protected] ABSTRACT t1 compressed/ Database engines are starting to incorporate machine learning (ML) doppioDB 2.0 encrypted functionality as part of their repertoire. Machine learning algo- Table t1 Iterative Decryption rithms, however, have very different characteristics than those of Execution Decompression relational operators. In this demonstration, we explore the chal- SCD lenges that arise when integrating generalized linear models into a t1 bitweaving t1_model database engine and how to incorporate hardware accelerators into Iterative Quantized Execution SGD the execution, a tool now widely used for ML workloads. t1_model The demo explores two complementary alternatives: (1) how to - Training: INSERT INTO t1_model train models directly on compressed/encrypted column-stores us- SELECT weights FROM TRAIN('t1', step_size, …); ing a specialized coordinate descent engine, and (2) how to use a - Validation: SELECT loss FROM VALIDATE('t1_model', 't1'); bitwise weaving index for stochastic gradient descent on low pre- SELECT prediction FROM INFER('t1_model', 't1_new'); cision input data.
    [Show full text]
  • Extract, Transform, Load | ETL Development
    What is ETL – Extract, Transform, Load | ETL Development ETL development – Pre requisites. 1. Setup Source and Target database. 2. Creation of ODBC connections. 1. Creating source ODBC connection. 2. Creating target ODBC connection. 3. Starting Informatica PowerCenter service. 4. Creating folder. ETL development process. 1. Creation of source metadata. 2. Creation of target metadata. 3. Design mapping without business rules. 4. Creating session for each mapping. 1. Create reader connection (source). 2. Create writer connection (Target). 3. Create workflow. 4. Run workflow. 5. Monitoring ETL process. (view state). What is ETL? ETL stands for Extract-Transform-Load. ETL is the process of extracting the data from different source (Operational databases) systems, integrating the data and Transforming the data into a homogeneous format and loading into the target warehouse database. Simply the overall process of ETL (Extraction, Transformation and Loading) is called Data Acquisition. Extraction : Extraction is the process of reading the data from source databases into staging areas. Transformation : Transformation is the process of converting the source data into required warehouse format. Loading : Loading is the process of writing converted data from staging area into target warehouse systems. What are the GUI based ETL tools? 1. Informatica. 2. DataStage. 3. Data Junction. 4. Oracle Warehouse Builder. 5. Cognos Decision Stream. What are the programmatic based ETL tools? 1. PI/Sql. 2. SAS Base. 3. Tera ACCESS. 4. Tera Data Utilities. 1. BTEQ. 2. Fast Load. 3. Multi Load. 4. T(Trickle) Pump. An Informatica PowerCenter is a GUI based ETL (Extract, Transform, Load) tool from Informatica Corporation which was founded in Redwood city, Los Angels (1993).
    [Show full text]
  • Rethinking Software Network Data Planes in the Era of Microservices
    Doctoral Dissertation Doctoral Program in Computer and Control Enginering (32nd cycle) Rethinking Software Network Data Planes in the Era of Microservices Sebastiano Miano ****** Supervisor Prof. Fulvio Risso Doctoral examination committee Prof. Antonio Barbalace, Referee, University of Edinburgh (UK) Prof. Costin Raiciu, Referee, Universitatea Politehnica Bucuresti (RO) Prof. Giuseppe Bianchi, University of Rome “Tor Vergata” (IT) Prof. Marco Chiesa, KTH Royal Institute of Technology (SE) Prof. Riccardo Sisto, Polytechnic University of Turin (IT) Politecnico di Torino 2020 This thesis is licensed under a Creative Commons License, Attribution - Noncommercial- NoDerivative Works 4.0 International: see www.creativecommons.org. The text may be reproduced for non-commercial purposes, provided that credit is given to the original author. I hereby declare that, the contents and organisation of this dissertation constitute my own original work and does not compromise in any way the rights of third parties, including those relating to the security of personal data. ........................................ Sebastiano Miano Turin, 2020 Summary With the advent of Software Defined Networks (SDN) and Network Functions Virtualization (NFV), software started playing a crucial role in the computer net- work architectures, with the end-hosts representing natural enforcement points for core network functionalities that go beyond simple switching and routing. Recently, there has been a definite shift in the paradigms used to develop and deploy server applications in favor of microservices, which has also brought a visible change in the type and requirements of network functionalities deployed across the data center. Network applications should be able to continuously adapt to the runtime behav- ior of cloud-native applications, which might regularly change or be scheduled by an orchestrator, or easily interact with existing “native” applications by leveraging kernel functionalities - all of this without sacrificing performance or flexibility.
    [Show full text]
  • Doppiodb 2.0: Hardware Techniques for Improved Integration of Machine Learning Into Databases
    doppioDB 2.0: Hardware Techniques for Improved Integration of Machine Learning into Databases Kaan Kara Zeke Wang Ce Zhang Gustavo Alonso Systems Group, Department of Computer Science ETH Zurich, Switzerland fi[email protected] ABSTRACT t1 compressed/ Database engines are starting to incorporate machine learning (ML) doppioDB 2.0 encrypted functionality as part of their repertoire. Machine learning algo- Table t1 Iterative Decryption rithms, however, have very different characteristics than those of Execution Decompression relational operators. In this demonstration, we explore the chal- SCD lenges that arise when integrating generalized linear models into a t1 bitweaving t1_model database engine and how to incorporate hardware accelerators into Iterative Quantized Execution SGD the execution, a tool now widely used for ML workloads. t1_model The demo explores two complementary alternatives: (1) how to - Training: INSERT INTO t1_model train models directly on compressed/encrypted column-stores us- SELECT weights FROM TRAIN('t1', step_size, …); ing a specialized coordinate descent engine, and (2) how to use a - Validation: SELECT loss FROM VALIDATE('t1_model', 't1'); bitwise weaving index for stochastic gradient descent on low pre- SELECT prediction FROM INFER('t1_model', 't1_new'); cision input data. We present these techniques as implemented in - Inference: our prototype database doppioDB 2.0 and show how the new func- tionality can be used from SQL. Figure 1: Overview of an ML workflow in doppioDB 2.0. PVLDB Reference Format: Kaan Kara, Zeke Wang, Ce Zhang, Gustavo Alonso. doppioDB 2.0: Hard- and compress data for better memory bandwidth utilization and de- ware Techniques for Improved Integration of Machine Learning into Databases.
    [Show full text]
  • Automating the Capture of Data Transformation Metadata
    Automating the Capture of Data Transformation Metadata H.V. Jagadish Univ. of Michigan http://www.eecs.umich.edu/~jag George Alter, University of Michigan Why Metadata? • Data are useless without Metadata – “data about data” • Metadata should: – Include all information about data creation – Describe transformations to variables – Be easy to create • Our goal: Automated capture of metadata A few words about ICPSR • World’s largest archive of social science data • Consortium established 1962 • 760+ member institutions around the world • Founding member and home office for the DDI Alliance Powered by DDI Metadata ICPSR is building search tools based upon Data Documentation Initiative (DDI) XML Codebooks (pdf and online) are rendered from the DDI. Searchable database of 4.5M variables Click here for online codebook What question Online codebook shows was asked? variable in context of dataset How was the Link to online question coded? graph tool Link to online crosstab tool Searchable database of 4.5M variables Click here for variable comparison Variable comparison display Click here for online codebook Metadata for the American National Election Study What question Who answered was asked? this question? How was the question coded? Who answered this question? Metadata for the American National Election Study Who answered this question? How do we know who answered the question? It’s in the pdf. Who answered this question? When data arrive at the archive… • No question text • No interview flow (question order, skip pattern) • No variable provenance • Data transformations are not documented. How is research data created? • Most surveys are conducted with computer assisted interview software (CAI) – CATI – Computer-assisted Telephone Interview – CAPI – Computer-assisted Personal Interview – CAWI – Computer Aided Web Interview • There is no paper questionnaire • The CAI program is the questionnaire – i.e.
    [Show full text]