Rethinking Software Network Data Planes in the Era of Microservices

Total Page:16

File Type:pdf, Size:1020Kb

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. In this dissertation, we explore the design space of software packet processing applications within the new “cloud-native” era, and we propose a novel paradigm to design, run, and manage software network functions that follow the same approach of micro-services. We present Polycube, a software framework that enables the creation of efficient, modular, and dynamically reconfigurable in-kernel networking components available with vanilla Linux. Polycube exploits the extended Berkeley Packet Filter (eBPF) framework to execute the data plane of those network func- tions and introduces a set of additional components and common APIs that make it easier to develop and manage those services. We design and evaluate the use of this paradigm through bpf-iptables, a clone of iptables characterized by improved performance and scalability. Then, we explore the possibility of enhancing the ca- pabilities of end-hosts through the use of programmable network interface cards (SmartNICs) to offload partially (of fully) existing packet processing applications, in particular in the domain of DDoS Mitigation. In the last part of the dissertation, we present Kecleon, a compiler framework that can be used to dynamically opti- mize generic software data planes, taking into account the runtime characteristics and packet processing behavior of the original network function. We believe that the combination of these works can lay the foundation for a new model of packet processing applications that is better suited for modern cloud environments, hav- ing the capability to be dynamically re-combined, re-generated, and re-optimized without sacrificing programmability, extensibility and performance. ii Acknowledgements This Ph.D. has totally changed my personality and way of thinking, thanks to all the wonderful (and, sometimes bad) experiences that I got and the amazing people that I met and worked with. It was a journey that I would always remember and something that I will definitely start again if I could. Many people have assisted me during this journey and I would like to express my gratitude to all of them for helping me become a researcher and the person that I am today. First of all, I would like to thanks my advisor, Prof. Fulvio Risso for all the lessons that I learned from him, for his patience, his immense love in the field, and his capacity to drive me in the right directions when it was necessary. I will be always grateful to him. My colleagues and friends Matteo Bertrone and Mauricio Vasquez (the initial Polycube team), with whom I have shared all the years of my Ph.D. and who helped me to refine my research and provided invaluable help when I needed it most.It is also thanks to them that I was able to reach a certain level of maturity and robustness of the works presented in this thesis. All the people and friends that I have met in Cambridge. Prof. Andrew Moore for giving me the chance to do this wonderful experience, and Christos, Hilda, Salvador, Yuta, and Marcin for all the interesting discussions that we had and for helping me (a poor Sicilian guy) to survive in the UK during the entire summer. A huge thanks go to Prof. Gianni Antichi, from having welcomed me in Cambridge and for teaching me a lot in the last year. He became a real role model for me and a great friend. A great thanks to my parents that gave me the change to do a Ph.D. and bring me up to love school and science, and that always supported me during the entire Ph.D. A special thanks to my sister, Debora for all the suggestions and support that she gave me and for being always present when needed. She was the first person that I always called when, in panic, I was looking for advice. Last but not least, my biggest thanks to Valentina. Although sometimes I neglected her to focus on the Ph.D., she has been always on my side and supported me in any choice I have made, even if this sometimes took me away from her. iv Contents List of Tables ix List of Figures x 1 Introduction 1 1.1 Summary of Contributions.......................5 1.2 Outline..................................8 1.3 Research Projects Not Included in This Dissertation.........8 2 Background and Motivations 10 2.1 Userspace vs. Kernelspace networking................. 10 2.2 The extended Berkley Packet Filter (eBPF)............. 12 2.2.1 eBPF for Network Functions.................. 14 3 Creating Network Service with eBPF: Experience and Lessons Learned 16 3.1 Introduction............................... 16 3.2 Experiences and Insights........................ 17 3.2.1 eBPF limitations........................ 17 3.2.2 Enabling more aggressive service optimization........ 21 3.2.3 Data structures......................... 22 3.2.4 High performance processing with XDP............ 24 3.2.5 Service function chaining.................... 26 3.3 Experimental Evaluation........................ 26 3.3.1 Test environment and evaluation metrics........... 26 3.3.2 Overcoming eBPF limitations................. 27 3.3.3 Enabling more aggressive service optimization........ 29 3.3.4 High performance processing with XDP............ 31 3.3.5 Service function chaining.................... 31 3.4 Conclusions............................... 32 v 4 Polycube: A Framework for Flexible and Efficient In-Kernel Net- work Services 34 4.1 Introduction............................... 34 4.2 Design Goals and Challenges...................... 36 4.3 Architecture Overview......................... 37 4.3.1 Unified Point of Control.................... 37 4.3.2 Structure of Polycube services................. 37 4.3.3 Remote vs Local services.................... 40 4.4 APIs and Abstractions......................... 40 4.4.1 Transparent port handling................... 41 4.4.2 Fast-slow path interaction................... 42 4.4.3 Debug mechanism........................ 44 4.4.4 Table abstractions....................... 44 4.4.5 Transparent Support for Multiple Hook Points........ 44 4.4.6 Transparent Services...................... 45 4.5 Service Chaining Design........................ 46 4.6 Management and Control Plane.................... 49 4.6.1 Model-driven service abstraction................ 49 4.7 Implementation............................. 51 4.7.1 Polycube Core.......................... 51 4.7.2 Polycube Services........................ 53 4.8 Evaluation................................ 57 4.8.1 Setup.............................. 57 4.8.2 Test Applications........................ 58 4.8.3 Framework Overheads..................... 64 4.8.4 Polycube vs Userspace Frameworks.............. 65 4.9 Conclusions............................... 66 5 Accelerating Linux Security with eBPF iptables 67 5.1 Introduction............................... 67 5.2 Design Challenges and Assumptions.................. 69 5.2.1 Guaranteeing filtering semantic................ 69 5.2.2 Efficient classification algorithm in eBPF........... 70 5.2.3 Support for stateful filters (conntrack)............ 71 5.2.4 Working with upstream Linux kernel............. 71 5.3 Overall Architecture.......................... 71 5.4 Data plane................................ 73 5.4.1 Header Parser.......................... 73 5.4.2 Chain Selector.......................... 73 5.4.3 Matching algorithm....................... 74 5.4.4 Classification Pipeline..................... 74 5.4.5 Connection Tracking...................... 79 vi 5.5 Control plane.............................. 83 5.6 Evaluation................................ 85 5.6.1 Test environment.......................
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]
  • 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]
  • Biological Data Transformation in Pathway Simulation∗
    Biological Data Transformation in Pathway Simulation∗ Abel Gómez,1 Artur Boronat,1 Jose Á. Carsí,1 and Isidro Ramos1 1Departament de Sistemes Informàtics i Computació. Universitat Politècnica de València. Camino de Vera, s/n. 46022 València. España. This work shows how Model-Driven Software Development (MDSD) can be applied in the bioinformatics field since biological data structures can be easily expressed by means of models. The existence of several heterogeneous data sources is usual in the bioinformatics context. In order to validate the information stored in these data sources, several formalisms and simulation tools have been adopted. The process of importing data from the source databases and introducing it in the simulation tools is usually done by hand. This work describes how to overcome this drawback by applying MDSD techniques (e.g. model trans- formations). Such techniques allow us to automate the data migration process between source databases and simulation tools, making the transformation process independent of the data persistence format, obtaining more modular tools and generating traceability information automatically. MOTIVATION The traditional sequence of “experiment ! analysis ! publication” is changing to “experiment ! data organization ! analysis ! publication” [6]. This is because, nowadays, data is not only obtained from experiments, but also from simulations. The great amount of new data that can be generated from these experiments is not always homogeneous and may be stored in different databases. This scenario is found especially when analyzing and simulating cell-signaling mechanisms (Sig- nal Transduction Pathways). In studies of this type, it is very common to find both independent databases and modeling tools. Thus, the data of the databases must be converted from the source databases to the simulation tools in order to be used.
    [Show full text]