Functorial Data Migration. Categorical Informatics, Inc. December 1, C i

Size: px
Start display at page:

Download "Functorial Data Migration. Categorical Informatics, Inc. info@catinf.com. December 1, 2015. C i"

Transcription

1 Functorial Data Migration Categorical Informatics, Inc. December 1, 2015 C i

2 Outline The Functorial Data Model (FDM) The FDM is based on category theory, which was designed to migrate theorems from one area of mathematics to another. Functorial Data Migration Now, researchers at MIT use category theory to migrate data from one computer system to another. The Functorial Query Language (FQL) tool The FDM research has culminated in a prototype ETL software tool, FQL, available at catinf.com. Categorical Informatics (C i ) Because the FQL tool is based on a principled theoretical foundation, it gives the best possible answer to many ETL problems, and is being commercialized by C i. 2 / 1

3 Category theory Knowledge of category theory is not required to understand this talk, functorial data migration, or use the FQL tool. But for completeness we include a brief description of category theory. A category is an algebraic structure similar to a group, ring, or field. A category is a multi-sorted monoid and an algebra of functions. A functor is a homomorphism of categories. In the FDM, schemas, instances, schema mappings, and even data migration operations are expressed as categories and functors. Category theory has informed the design of: Functional programming languages (Haskell, ML, Scala) Query languages (nested relational calculus, LINQ) Proof assistants (Coq, Agda, HoTT) Mathematics itself (algebraic topology, set theory, model theory) 3 / 1

4 Category theory A category C consists of a set of objects for all objects X, Y a set CpX, Y q of arrows for all objects X an arrow id P CpX, Xq for all objects X, Y, Z a function : CpY, Zq ˆ CpX, Y q Ñ CpX, Zq such that f id id and id f f and pf gq h f pg hq A functor F : C Ñ D is a function taking objects in C to objects in D and arrows f : X Ñ Y in C to arrows F pfq: F pxq Ñ F py q in D such that F pidq id and F pf gq F pfq F pgq. A category presentation C consists of a set of nodes for all nodes X, Y a set CpX, Y q of edges a set of path equations A functor presentation F : C Ñ D is a function taking nodes in C to nodes in D and edges f : X Ñ Y in C to paths F pfq: F pxq Ñ F py q in D such that C $ p q implies D $ F ppq F pqq. 4 / 1

5 The Functorial Data Model manager Emp works secretary Dept last first Dom name Emp ID mgr works first last q10 Al Akin x02 Bob Bo q10 Carl Cork Emp.manager.works Emp.works Dept.secretary.works Dept Dept ID sec name q CS x Math Dom ID Al Akin Bob Bo Carl Cork CS Math 5 / 1

6 Attributes Omit Dom table, and draw edges Ñ f Dom as f : manager Emp works secretary Dept last first Dom name manager Emp works secretary Dept first last name 6 / 1

7 The Functorial Data Model manager Emp works secretary Dept first last name Emp.manager.works Emp.works Dept.secretary.works Dept Emp ID mgr works first last q10 Al Akin x02 Bob Bo q10 Carl Cork Dept ID sec name q CS x Math 7 / 1

8 Functorial Data Migration A functor F : S Ñ T is a constraint-respecting mapping: nodespsq Ñ nodespt q edgespsq Ñ pathspt q and it induces three adjoint data migration functors: F : T -inst Ñ S-inst (like project) S F T I F piq : IF Set ΠF : S-inst Ñ T -inst (like join) F % Π F Σ F : S-inst Ñ T -inst (like outer disjoint union then quotient) Σ F % F 8 / 1

9 (Project) Name Name Salary N1 N2 F ÝÝÝÑ N Salary Age Age N1 ID Name Salary 1 Alice $100 2 Bob $250 3 Sue $300 N2 ID Age F ÐÝÝ N ID Name Salary Age a Alice $ b Bob $ c Sue $ / 1

10 Π (Join) Name Name Salary N1 N2 F ÝÝÝÑ N Salary Age Age N1 ID Name Salary 1 Alice $100 2 Bob $250 3 Sue $300 N2 ID Age Π F ÝÝÑ N ID Name Salary Age a Alice $ b Alice $ c Alice $ d Bob $ e Bob $ f Bob $ g Sue $ h Sue $ i Sue $ / 1

11 Σ (Union) Name Name Salary N1 N2 F ÝÝÝÑ N Salary Age Age N1 ID Name Salary 1 Alice $100 2 Bob $250 3 Sue $300 N2 ID Age Σ F ÝÝÑ N ID Name Salary Age a Alice $100 null 1 b Bob $250 null 2 c Sue $300 null 3 d null 4 null 5 20 e null 6 null 7 20 f null 8 null / 1

12 Foreign keys Name Name Salary N1 f N2 F ÝÝÝÑ N Salary Age Age N1 ID Name Salary f 1 Alice $ Bob $ Sue $300 6 N2 ID Age F ÐÝÝ Π F,Σ F ÝÝÝÝÑ N ID Name Salary Age a Alice $ b Bob $ c Sue $ / 1

13 Expressivity of Functorial Data Migration - Example mgr Emp F ÝÝÝÑ SelfMgr F will copy SelfMgr into Emp, and put the identity into mgr. Π F will migrate into SelfMgr those Emps who are their own mgr. Σ F will migrate into SelfMgr representatives of the management groups of Emp, i.e. equivalence classes of Emps modulo the equivalence relation generated by mgr. 13 / 1

14 Pivot (Instance ô Schema) CS q name first works last Al Akin Math name x02 works mgr works first mgr first last Bob last Carl Bo Cork mgr Emp ID mgr works first last q10 Al Akin x02 Bob Bo q10 Carl Cork Dept ID name q10 CS x02 Math 14 / 1

15 Positives of the functorial data model The category of categories is bi-cartesian closed (model of STLC). Schemas support 0, 1, `, ˆ,p. For each category C, the category C-inst is a topos (model of HOL). Instances support 0, 1, `, ˆ,p D, ^, _,, Ñ, J, K. Data integrity constraints (path equations) are built-in to schemas. In progress: more expressive constraints ( EDs ) in schemas. Data migrations transform entire instances. Easy to pivot. Σ has better semantics than TGD-only systems (e.g., Clio). 15 / 1

16 FQL - A Functorial Query Language FQL is an open-source, graphical IDE available at catinf.com. It translates data migrations of the form Σ F Π G H into SQL and executes via JDBC whenever possible. Otherwise, FQL executes the migration directly. FQL also includes a (partial) translator SQL Ñ FQL, as well as RDF/JSON input/output. Some FQL queries can be written using built-in SELECT-FROM-WHERE syntax. Demo 16 / 1

17 Conclusion There are deep connections between the FDM and other data models, including relational, RDF, and XML. MIT and C i have had initial success using FQL on a data integration scenario identified by the National Institute of Standards and Technology (NIST) and are looking for academic collaborators, customers, test cases, and employees. Visit catinf.com for more information. See categoricaldata.net and appliedcategorytheory.org for other interesting categorical projects. 17 / 1

Relational Foundations for Functorial Data Migration

Relational Foundations for Functorial Data Migration Relational Foundations for Functorial Data Migration David Spivak, Ryan Wisnesky Department of Mathematics Massachusetts Institute of Technology {dspivak, wisnesky}@math.mit.edu DBPL October 27, 2015 Introduction

More information

FUNCTORIAL DATA MIGRATION

FUNCTORIAL DATA MIGRATION FUNCTORIAL DATA MIGRATION DAVID I. SPIVAK Abstract. In this paper we present a simple database definition language: that of categories and functors. A database schema is a small category and an instance

More information

Using Temporary Tables to Improve Performance for SQL Data Services

Using Temporary Tables to Improve Performance for SQL Data Services Using Temporary Tables to Improve Performance for SQL Data Services 2014- Informatica Corporation. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying,

More information

Data Integration and Exchange. L. Libkin 1 Data Integration and Exchange

Data Integration and Exchange. L. Libkin 1 Data Integration and Exchange Data Integration and Exchange L. Libkin 1 Data Integration and Exchange Traditional approach to databases A single large repository of data. Database administrator in charge of access to data. Users interact

More information

From Databases to Natural Language: The Unusual Direction

From Databases to Natural Language: The Unusual Direction From Databases to Natural Language: The Unusual Direction Yannis Ioannidis Dept. of Informatics & Telecommunications, MaDgIK Lab University of Athens, Hellas (Greece) yannis@di.uoa.gr http://www.di.uoa.gr/

More information

Database Design. Database Design I: The Entity-Relationship Model. Entity Type (con t) Chapter 4. Entity: an object that is involved in the enterprise

Database Design. Database Design I: The Entity-Relationship Model. Entity Type (con t) Chapter 4. Entity: an object that is involved in the enterprise Database Design Database Design I: The Entity-Relationship Model Chapter 4 Goal: specification of database schema Methodology: Use E-R R model to get a high-level graphical view of essential components

More information

SPARQL: Un Lenguaje de Consulta para la Web

SPARQL: Un Lenguaje de Consulta para la Web SPARQL: Un Lenguaje de Consulta para la Web Semántica Marcelo Arenas Pontificia Universidad Católica de Chile y Centro de Investigación de la Web M. Arenas SPARQL: Un Lenguaje de Consulta para la Web Semántica

More information

WORKSHOP ON TOPOLOGY AND ABSTRACT ALGEBRA FOR BIOMEDICINE

WORKSHOP ON TOPOLOGY AND ABSTRACT ALGEBRA FOR BIOMEDICINE WORKSHOP ON TOPOLOGY AND ABSTRACT ALGEBRA FOR BIOMEDICINE ERIC K. NEUMANN Foundation Medicine, Cambridge, MA 02139, USA Email: eneumann@foundationmedicine.com SVETLANA LOCKWOOD School of Electrical Engineering

More information

Number of hours in the semester L Ex. Lab. Projects SEMESTER I 1. Economy 45 18 27. 2. Philosophy 18 18. 4. Mathematical Analysis 45 18 27 Exam

Number of hours in the semester L Ex. Lab. Projects SEMESTER I 1. Economy 45 18 27. 2. Philosophy 18 18. 4. Mathematical Analysis 45 18 27 Exam Year 1 Lp. Course name Number of hours in the semester L Ex. Lab. Projects SEMESTER I 1. Economy 45 18 7. Philosophy 18 18 3. Linear Algebra 45 18 7 Exam 4. Mathematical Analysis 45 18 7 Exam 5. Economical

More information

Elena Baralis, Silvia Chiusano Politecnico di Torino. Pag. 1. Query optimization. DBMS Architecture. Query optimizer. Query optimizer.

Elena Baralis, Silvia Chiusano Politecnico di Torino. Pag. 1. Query optimization. DBMS Architecture. Query optimizer. Query optimizer. DBMS Architecture INSTRUCTION OPTIMIZER Database Management Systems MANAGEMENT OF ACCESS METHODS BUFFER MANAGER CONCURRENCY CONTROL RELIABILITY MANAGEMENT Index Files Data Files System Catalog BASE It

More information

ISU Department of Mathematics. Graduate Examination Policies and Procedures

ISU Department of Mathematics. Graduate Examination Policies and Procedures ISU Department of Mathematics Graduate Examination Policies and Procedures There are four primary criteria to be used in evaluating competence on written or oral exams. 1. Knowledge Has the student demonstrated

More information

Data exchange. L. Libkin 1 Data Integration and Exchange

Data exchange. L. Libkin 1 Data Integration and Exchange Data exchange Source schema, target schema; need to transfer data between them. A typical scenario: Two organizations have their legacy databases, schemas cannot be changed. Data from one organization

More information

Part A: Data Definition Language (DDL) Schema and Catalog CREAT TABLE. Referential Triggered Actions. CSC 742 Database Management Systems

Part A: Data Definition Language (DDL) Schema and Catalog CREAT TABLE. Referential Triggered Actions. CSC 742 Database Management Systems CSC 74 Database Management Systems Topic #0: SQL Part A: Data Definition Language (DDL) Spring 00 CSC 74: DBMS by Dr. Peng Ning Spring 00 CSC 74: DBMS by Dr. Peng Ning Schema and Catalog Schema A collection

More information

Data Exchange: Semantics and Query Answering

Data Exchange: Semantics and Query Answering Data Exchange: Semantics and Query Answering Ronald Fagin a Phokion G. Kolaitis b,1 Renée J. Miller c,1 Lucian Popa a a IBM Almaden Research Center {fagin,lucian}@almaden.ibm.com b University of California

More information

Schema Mappings and Data Exchange

Schema Mappings and Data Exchange Schema Mappings and Data Exchange Phokion G. Kolaitis University of California, Santa Cruz & IBM Research-Almaden EASSLC 2012 Southwest University August 2012 1 Logic and Databases Extensive interaction

More information

Left-Handed Completeness

Left-Handed Completeness Left-Handed Completeness Dexter Kozen Computer Science Department Cornell University RAMiCS, September 19, 2012 Joint work with Alexandra Silva Radboud University Nijmegen and CWI Amsterdam Result A new

More information

Foundations of Query Languages

Foundations of Query Languages Foundations of Query Languages SS 2011 2. 2. Foundations of Query Languages Dr. Fang Wei Lehrstuhl für Datenbanken und Informationssysteme Universität Freiburg SS 2011 Dr. Fang Wei 22. Mai 2011 Seite 1

More information

Relational Databases

Relational Databases Relational Databases Jan Chomicki University at Buffalo Jan Chomicki () Relational databases 1 / 18 Relational data model Domain domain: predefined set of atomic values: integers, strings,... every attribute

More information

Chapter 9 Joining Data from Multiple Tables. Oracle 10g: SQL

Chapter 9 Joining Data from Multiple Tables. Oracle 10g: SQL Chapter 9 Joining Data from Multiple Tables Oracle 10g: SQL Objectives Identify a Cartesian join Create an equality join using the WHERE clause Create an equality join using the JOIN keyword Create a non-equality

More information

Objectives. Distributed Databases and Client/Server Architecture. Distributed Database. Data Fragmentation

Objectives. Distributed Databases and Client/Server Architecture. Distributed Database. Data Fragmentation Objectives Distributed Databases and Client/Server Architecture IT354 @ Peter Lo 2005 1 Understand the advantages and disadvantages of distributed databases Know the design issues involved in distributed

More information

Parametric Domain-theoretic models of Linear Abadi & Plotkin Logic

Parametric Domain-theoretic models of Linear Abadi & Plotkin Logic Parametric Domain-theoretic models of Linear Abadi & Plotkin Logic Lars Birkedal Rasmus Ejlers Møgelberg Rasmus Lerchedahl Petersen IT University Technical Report Series TR-00-7 ISSN 600 600 February 00

More information

University of Massachusetts Amherst Department of Computer Science Prof. Yanlei Diao

University of Massachusetts Amherst Department of Computer Science Prof. Yanlei Diao University of Massachusetts Amherst Department of Computer Science Prof. Yanlei Diao CMPSCI 445 Midterm Practice Questions NAME: LOGIN: Write all of your answers directly on this paper. Be sure to clearly

More information

Data Modeling using XML. Murali Mani, WPI Antonio Badia, University of Louisville Oct 13, 2003

Data Modeling using XML. Murali Mani, WPI Antonio Badia, University of Louisville Oct 13, 2003 Data Modeling using XML Murali Mani, WPI Antonio Badia, University of Louisville Outline Part I: How to come up with good XML designs for real world database applications? Part II: Translation between

More information

MOC 20461C: Querying Microsoft SQL Server. Course Overview

MOC 20461C: Querying Microsoft SQL Server. Course Overview MOC 20461C: Querying Microsoft SQL Server Course Overview This course provides students with the knowledge and skills to query Microsoft SQL Server. Students will learn about T-SQL querying, SQL Server

More information

Chapter 5: Overview of Query Processing

Chapter 5: Overview of Query Processing Chapter 5: Overview of Query Processing Query Processing Overview Query Optimization Distributed Query Processing Steps Acknowledgements: I am indebted to Arturas Mazeika for providing me his slides of

More information

Introducing Formal Methods. Software Engineering and Formal Methods

Introducing Formal Methods. Software Engineering and Formal Methods Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended

More information

The composition of Mappings in a Nautural Interface

The composition of Mappings in a Nautural Interface Composing Schema Mappings: Second-Order Dependencies to the Rescue Ronald Fagin IBM Almaden Research Center fagin@almaden.ibm.com Phokion G. Kolaitis UC Santa Cruz kolaitis@cs.ucsc.edu Wang-Chiew Tan UC

More information

Creating an RDF Graph from a Relational Database Using SPARQL

Creating an RDF Graph from a Relational Database Using SPARQL Creating an RDF Graph from a Relational Database Using SPARQL Ayoub Oudani, Mohamed Bahaj*, Ilias Cherti Department of Mathematics and Informatics, University Hassan I, FSTS, Settat, Morocco. * Corresponding

More information

MySQL for Beginners Ed 3

MySQL for Beginners Ed 3 Oracle University Contact Us: 1.800.529.0165 MySQL for Beginners Ed 3 Duration: 4 Days What you will learn The MySQL for Beginners course helps you learn about the world's most popular open source database.

More information

CHAPTER 4: BUSINESS ANALYTICS

CHAPTER 4: BUSINESS ANALYTICS Chapter 4: Business Analytics CHAPTER 4: BUSINESS ANALYTICS Objectives Introduction The objectives are: Describe Business Analytics Explain the terminology associated with Business Analytics Describe the

More information

Oracle Database 10g Express

Oracle Database 10g Express Oracle Database 10g Express This tutorial prepares the Oracle Database 10g Express Edition Developer to perform common development and administrative tasks of Oracle Database 10g Express Edition. Objectives

More information

SQL DDL. DBS Database Systems Designing Relational Databases. Inclusion Constraints. Key Constraints

SQL DDL. DBS Database Systems Designing Relational Databases. Inclusion Constraints. Key Constraints DBS Database Systems Designing Relational Databases Peter Buneman 12 October 2010 SQL DDL In its simplest use, SQL s Data Definition Language (DDL) provides a name and a type for each column of a table.

More information

3. Relational Model and Relational Algebra

3. Relational Model and Relational Algebra ECS-165A WQ 11 36 3. Relational Model and Relational Algebra Contents Fundamental Concepts of the Relational Model Integrity Constraints Translation ER schema Relational Database Schema Relational Algebra

More information

Tackling The Challenges of Big Data. Tackling The Challenges of Big Data Big Data Systems. Security is a Negative Goal. Nickolai Zeldovich

Tackling The Challenges of Big Data. Tackling The Challenges of Big Data Big Data Systems. Security is a Negative Goal. Nickolai Zeldovich Introduction is a Negative Goal No way for adversary to violate security policy Difficult to achieve: many avenues of attack 1 Example: Confidential Database Application server Database server Approach:

More information

Formalization of the CRM: Initial Thoughts

Formalization of the CRM: Initial Thoughts Formalization of the CRM: Initial Thoughts Carlo Meghini Istituto di Scienza e Tecnologie della Informazione Consiglio Nazionale delle Ricerche Pisa CRM SIG Meeting Iraklio, October 1st, 2014 Outline Overture:

More information

1 File Processing Systems

1 File Processing Systems COMP 378 Database Systems Notes for Chapter 1 of Database System Concepts Introduction A database management system (DBMS) is a collection of data and an integrated set of programs that access that data.

More information

SUBQUERIES AND VIEWS. CS121: Introduction to Relational Database Systems Fall 2015 Lecture 6

SUBQUERIES AND VIEWS. CS121: Introduction to Relational Database Systems Fall 2015 Lecture 6 SUBQUERIES AND VIEWS CS121: Introduction to Relational Database Systems Fall 2015 Lecture 6 String Comparisons and GROUP BY 2! Last time, introduced many advanced features of SQL, including GROUP BY! Recall:

More information

G-SPARQL: A Hybrid Engine for Querying Large Attributed Graphs

G-SPARQL: A Hybrid Engine for Querying Large Attributed Graphs G-SPARQL: A Hybrid Engine for Querying Large Attributed Graphs Sherif Sakr National ICT Australia UNSW, Sydney, Australia ssakr@cse.unsw.edu.eu Sameh Elnikety Microsoft Research Redmond, WA, USA samehe@microsoft.com

More information

Introduction to SQL C H A P T E R3. Exercises

Introduction to SQL C H A P T E R3. Exercises C H A P T E R3 Introduction to SQL Exercises 3.1 Write the following queries in SQL, using the university schema. (We suggest you actually run these queries on a database, using the sample data that we

More information

NOTES ON CATEGORIES AND FUNCTORS

NOTES ON CATEGORIES AND FUNCTORS NOTES ON CATEGORIES AND FUNCTORS These notes collect basic definitions and facts about categories and functors that have been mentioned in the Homological Algebra course. For further reading about category

More information

CHAPTER 5: BUSINESS ANALYTICS

CHAPTER 5: BUSINESS ANALYTICS Chapter 5: Business Analytics CHAPTER 5: BUSINESS ANALYTICS Objectives The objectives are: Describe Business Analytics. Explain the terminology associated with Business Analytics. Describe the data warehouse

More information

Relational Algebra. Basic Operations Algebra of Bags

Relational Algebra. Basic Operations Algebra of Bags Relational Algebra Basic Operations Algebra of Bags 1 What is an Algebra Mathematical system consisting of: Operands --- variables or values from which new values can be constructed. Operators --- symbols

More information

INTRODUCTORY COURSES IN CALCULUS, STATISTICS, AND COMPUTER SCIENCE

INTRODUCTORY COURSES IN CALCULUS, STATISTICS, AND COMPUTER SCIENCE Chapter 4 INTRODUCTORY COURSES IN CALCULUS, STATISTICS, AND COMPUTER SCIENCE The five tables in this chapter give detailed enrollment and section size in calculus-level courses, instructional formats for

More information

IBM DB2 XML support. How to Configure the IBM DB2 Support in oxygen

IBM DB2 XML support. How to Configure the IBM DB2 Support in oxygen Table of Contents IBM DB2 XML support About this Tutorial... 1 How to Configure the IBM DB2 Support in oxygen... 1 Database Explorer View... 3 Table Explorer View... 5 Editing XML Content of the XMLType

More information

Using OpenMath Servers for Distributing Mathematical Computations

Using OpenMath Servers for Distributing Mathematical Computations Using OpenMath Servers for Distributing Mathematical Computations O. Caprotti A. M. Cohen H. Cuypers M. N. Riem H. Sterk Department of Mathematics and Computer Science Eindhoven University of Technology,

More information

Database Systems. Lecture Handout 1. Dr Paolo Guagliardo. University of Edinburgh. 21 September 2015

Database Systems. Lecture Handout 1. Dr Paolo Guagliardo. University of Edinburgh. 21 September 2015 Database Systems Lecture Handout 1 Dr Paolo Guagliardo University of Edinburgh 21 September 2015 What is a database? A collection of data items, related to a specific enterprise, which is structured and

More information

CMU - SCS 15-415/15-615 Database Applications Spring 2013, C. Faloutsos Homework 1: E.R. + Formal Q.L. Deadline: 1:30pm on Tuesday, 2/5/2013

CMU - SCS 15-415/15-615 Database Applications Spring 2013, C. Faloutsos Homework 1: E.R. + Formal Q.L. Deadline: 1:30pm on Tuesday, 2/5/2013 CMU - SCS 15-415/15-615 Database Applications Spring 2013, C. Faloutsos Homework 1: E.R. + Formal Q.L. Deadline: 1:30pm on Tuesday, 2/5/2013 Reminders - IMPORTANT: Like all homeworks, it has to be done

More information

Graham Kemp (telephone 772 54 11, room 6475 EDIT) The examiner will visit the exam room at 15:00 and 17:00.

Graham Kemp (telephone 772 54 11, room 6475 EDIT) The examiner will visit the exam room at 15:00 and 17:00. CHALMERS UNIVERSITY OF TECHNOLOGY Department of Computer Science and Engineering Examination in Databases, TDA357/DIT620 Tuesday 17 December 2013, 14:00-18:00 Examiner: Results: Exam review: Grades: Graham

More information

Explainable Security for Relational Databases

Explainable Security for Relational Databases Explainable Security for Relational Databases Gabriel Bender Cornell University Ithaca, NY 14853, USA gbender@cs.cornell.edu Łucja Kot Cornell University Ithaca, NY 14853, USA lucja@cs.cornell.edu Johannes

More information

Lecture 6. SQL, Logical DB Design

Lecture 6. SQL, Logical DB Design Lecture 6 SQL, Logical DB Design Relational Query Languages A major strength of the relational model: supports simple, powerful querying of data. Queries can be written intuitively, and the DBMS is responsible

More information

5 Directed acyclic graphs

5 Directed acyclic graphs 5 Directed acyclic graphs (5.1) Introduction In many statistical studies we have prior knowledge about a temporal or causal ordering of the variables. In this chapter we will use directed graphs to incorporate

More information

A CONSTRUCTION OF THE UNIVERSAL COVER AS A FIBER BUNDLE

A CONSTRUCTION OF THE UNIVERSAL COVER AS A FIBER BUNDLE A CONSTRUCTION OF THE UNIVERSAL COVER AS A FIBER BUNDLE DANIEL A. RAMRAS In these notes we present a construction of the universal cover of a path connected, locally path connected, and semi-locally simply

More information

www.gr8ambitionz.com

www.gr8ambitionz.com Data Base Management Systems (DBMS) Study Material (Objective Type questions with Answers) Shared by Akhil Arora Powered by www. your A to Z competitive exam guide Database Objective type questions Q.1

More information

= 2 + 1 2 2 = 3 4, Now assume that P (k) is true for some fixed k 2. This means that

= 2 + 1 2 2 = 3 4, Now assume that P (k) is true for some fixed k 2. This means that Instructions. Answer each of the questions on your own paper, and be sure to show your work so that partial credit can be adequately assessed. Credit will not be given for answers (even correct ones) without

More information

Answer Key. UNIVERSITY OF CALIFORNIA College of Engineering Department of EECS, Computer Science Division

Answer Key. UNIVERSITY OF CALIFORNIA College of Engineering Department of EECS, Computer Science Division Answer Key UNIVERSITY OF CALIFORNIA College of Engineering Department of EECS, Computer Science Division CS186 Fall 2003 Eben Haber Midterm Midterm Exam: Introduction to Database Systems This exam has

More information

XML Data Integration

XML Data Integration XML Data Integration Lucja Kot Cornell University 11 November 2010 Lucja Kot (Cornell University) XML Data Integration 11 November 2010 1 / 42 Introduction Data Integration and Query Answering A data integration

More information

LiTH, Tekniska högskolan vid Linköpings universitet 1(7) IDA, Institutionen för datavetenskap Juha Takkinen 2007-05-24

LiTH, Tekniska högskolan vid Linköpings universitet 1(7) IDA, Institutionen för datavetenskap Juha Takkinen 2007-05-24 LiTH, Tekniska högskolan vid Linköpings universitet 1(7) IDA, Institutionen för datavetenskap Juha Takkinen 2007-05-24 1. A database schema is a. the state of the db b. a description of the db using a

More information

Theory of Relational Database Design and Normalization

Theory of Relational Database Design and Normalization Theory of Relational Database Design and Normalization (Based on Chapter 14 and some part of Chapter 15 in Fundamentals of Database Systems by Elmasri and Navathe) 1 Informal Design Guidelines for Relational

More information

Database Design Overview. Conceptual Design ER Model. Entities and Entity Sets. Entity Set Representation. Keys

Database Design Overview. Conceptual Design ER Model. Entities and Entity Sets. Entity Set Representation. Keys Database Design Overview Conceptual Design. The Entity-Relationship (ER) Model CS430/630 Lecture 12 Conceptual design The Entity-Relationship (ER) Model, UML High-level, close to human thinking Semantic

More information

A Logic-Based Approach to Cloud Computing

A Logic-Based Approach to Cloud Computing A Logic-Based Approach to Cloud Computing Jan Van den Bussche (Hasselt University, Belgium) joint work with Tom Ameloot and Frank Neven 1 Origins of Cloud Computing Large websites (Amazon, Google, Facebook)

More information

A Workbench for Prototyping XML Data Exchange (extended abstract)

A Workbench for Prototyping XML Data Exchange (extended abstract) A Workbench for Prototyping XML Data Exchange (extended abstract) Renzo Orsini and Augusto Celentano Università Ca Foscari di Venezia, Dipartimento di Informatica via Torino 155, 30172 Mestre (VE), Italy

More information

There are five fields or columns, with names and types as shown above.

There are five fields or columns, with names and types as shown above. 3 THE RELATIONAL MODEL Exercise 3.1 Define the following terms: relation schema, relational database schema, domain, attribute, attribute domain, relation instance, relation cardinality, andrelation degree.

More information

OWL based XML Data Integration

OWL based XML Data Integration OWL based XML Data Integration Manjula Shenoy K Manipal University CSE MIT Manipal, India K.C.Shet, PhD. N.I.T.K. CSE, Suratkal Karnataka, India U. Dinesh Acharya, PhD. ManipalUniversity CSE MIT, Manipal,

More information

Databases Model the Real World. The Entity- Relationship Model. Conceptual Design. Steps in Database Design. ER Model Basics. ER Model Basics (Contd.

Databases Model the Real World. The Entity- Relationship Model. Conceptual Design. Steps in Database Design. ER Model Basics. ER Model Basics (Contd. The Entity- Relationship Model R &G - Chapter 2 A relationship, I think, is like a shark, you know? It has to constantly move forward or it dies. And I think what we got on our hands is a dead shark. Woody

More information

The Relational Model. Ramakrishnan&Gehrke, Chapter 3 CS4320 1

The Relational Model. Ramakrishnan&Gehrke, Chapter 3 CS4320 1 The Relational Model Ramakrishnan&Gehrke, Chapter 3 CS4320 1 Why Study the Relational Model? Most widely used model. Vendors: IBM, Informix, Microsoft, Oracle, Sybase, etc. Legacy systems in older models

More information

Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification

Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 Outline More Complex SQL Retrieval Queries

More information

Database Design Patterns. Winter 2006-2007 Lecture 24

Database Design Patterns. Winter 2006-2007 Lecture 24 Database Design Patterns Winter 2006-2007 Lecture 24 Trees and Hierarchies Many schemas need to represent trees or hierarchies of some sort Common way of representing trees: An adjacency list model Each

More information

CS & Applied Mathematics Dual Degree Curriculum Content

CS & Applied Mathematics Dual Degree Curriculum Content CS & Applied Mathematics Dual Degree Curriculum Content General Education (41 credits) COMM 101: Written and Oral Communication I COMM 301: Written and Oral Communication II ECON 201: Economic Principles

More information

SQLMutation: A tool to generate mutants of SQL database queries

SQLMutation: A tool to generate mutants of SQL database queries SQLMutation: A tool to generate mutants of SQL database queries Javier Tuya, Mª José Suárez-Cabal, Claudio de la Riva University of Oviedo (SPAIN) {tuya cabal claudio} @ uniovi.es Abstract We present a

More information

A NOTE ON TRIVIAL FIBRATIONS

A NOTE ON TRIVIAL FIBRATIONS A NOTE ON TRIVIAL FIBRATIONS Petar Pavešić Fakulteta za Matematiko in Fiziko, Univerza v Ljubljani, Jadranska 19, 1111 Ljubljana, Slovenija petar.pavesic@fmf.uni-lj.si Abstract We study the conditions

More information

CSC 742 Database Management Systems

CSC 742 Database Management Systems CSC 742 Database Management Systems Topic #4: Data Modeling Spring 2002 CSC 742: DBMS by Dr. Peng Ning 1 Phases of Database Design Requirement Collection/Analysis Functional Requirements Functional Analysis

More information

The Recovery of a Schema Mapping: Bringing Exchanged Data Back

The Recovery of a Schema Mapping: Bringing Exchanged Data Back The Recovery of a Schema Mapping: Bringing Exchanged Data Back MARCELO ARENAS and JORGE PÉREZ Pontificia Universidad Católica de Chile and CRISTIAN RIVEROS R&M Tech Ingeniería y Servicios Limitada A schema

More information

Datavetenskapligt Program (kandidat) Computer Science Programme (master)

Datavetenskapligt Program (kandidat) Computer Science Programme (master) Datavetenskapligt Program (kandidat) Computer Science Programme (master) Wolfgang Ahrendt Director Datavetenskap (BSc), Computer Science (MSc) D&IT Göteborg University, 30/01/2009 Part I D&IT: Computer

More information

Translating between XML and Relational Databases using XML Schema and Automed

Translating between XML and Relational Databases using XML Schema and Automed Imperial College of Science, Technology and Medicine (University of London) Department of Computing Translating between XML and Relational Databases using XML Schema and Automed Andrew Charles Smith acs203

More information

Applying Model Management to Classical Meta Data Problems

Applying Model Management to Classical Meta Data Problems Applying Model Management to Classical Meta Data Problems Philip A. Bernstein Microsoft Research One Microsoft Way Redmond, WA 98052-6399 philbe@microsoft.com Abstract Model management is a new approach

More information

Database Management System

Database Management System UNIT -6 Database Design Informal Design Guidelines for Relation Schemas; Functional Dependencies; Normal Forms Based on Primary Keys; General Definitions of Second and Third Normal Forms; Boyce-Codd Normal

More information

XML with Incomplete Information

XML with Incomplete Information XML with Incomplete Information Pablo Barceló Leonid Libkin Antonella Poggi Cristina Sirangelo Abstract We study models of incomplete information for XML, their computational properties, and query answering.

More information

Fibrations and universal view updatability

Fibrations and universal view updatability Fibrations and universal view updatability Michael Johnson Computing Department, Macquarie University NSW 2109, Australia mike@ics.mq.edu.au Robert Rosebrugh Department of Mathematics and Computer Science,

More information

RDF y SPARQL: Dos componentes básicos para la Web de datos

RDF y SPARQL: Dos componentes básicos para la Web de datos RDF y SPARQL: Dos componentes básicos para la Web de datos Marcelo Arenas PUC Chile & University of Oxford M. Arenas RDF y SPARQL: Dos componentes básicos para la Web de datos Valladolid 2013 1 / 61 Semantic

More information

XML and Data Integration

XML and Data Integration XML and Data Integration Week 11-12 Week 11-12 MIE253-Consens 1 Schedule Week Date Lecture Topic 1 Jan 9 Introduction to Data Management 2 Jan 16 The Relational Model 3 Jan. 23 Constraints and SQL DDL

More information

POSTECH SUMMER SCHOOL 2013 LECTURE 4 INTRODUCTION TO THE TRACE FORMULA

POSTECH SUMMER SCHOOL 2013 LECTURE 4 INTRODUCTION TO THE TRACE FORMULA POSTECH SUMMER SCHOOL 2013 LECTURE 4 INTRODUCTION TO THE TRACE FORMULA 1. Kernel and the trace formula Beginning from this lecture, we will discuss the approach to Langlands functoriality conjecture based

More information

Dedekind s forgotten axiom and why we should teach it (and why we shouldn t teach mathematical induction in our calculus classes)

Dedekind s forgotten axiom and why we should teach it (and why we shouldn t teach mathematical induction in our calculus classes) Dedekind s forgotten axiom and why we should teach it (and why we shouldn t teach mathematical induction in our calculus classes) by Jim Propp (UMass Lowell) March 14, 2010 1 / 29 Completeness Three common

More information

Object-Relational Query Processing

Object-Relational Query Processing Object-Relational Query Processing Johan Petrini Department of Information Technology Uppsala University, Sweden Johan.Petrin@it.uu.se 1. Introduction In the beginning, there flat files of data with no

More information

5.1 Database Schema. 5.1.1 Schema Generation in SQL

5.1 Database Schema. 5.1.1 Schema Generation in SQL 5.1 Database Schema The database schema is the complete model of the structure of the application domain (here: relational schema): relations names of attributes domains of attributes keys additional constraints

More information

CURVES WHOSE SECANT DEGREE IS ONE IN POSITIVE CHARACTERISTIC. 1. Introduction

CURVES WHOSE SECANT DEGREE IS ONE IN POSITIVE CHARACTERISTIC. 1. Introduction Acta Math. Univ. Comenianae Vol. LXXXI, 1 (2012), pp. 71 77 71 CURVES WHOSE SECANT DEGREE IS ONE IN POSITIVE CHARACTERISTIC E. BALLICO Abstract. Here we study (in positive characteristic) integral curves

More information

Leveraging the Power of SOLR with SPARK. Johannes Weigend QAware GmbH Germany pache Big Data Europe September 2015

Leveraging the Power of SOLR with SPARK. Johannes Weigend QAware GmbH Germany pache Big Data Europe September 2015 Leveraging the Power of SOLR with SPARK Johannes Weigend QAware GmbH Germany pache Big Data Europe September 2015 Welcome Johannes Weigend - CTO QAware GmbH - Software architect / developer - 25 years

More information

Chapter 10. Functional Dependencies and Normalization for Relational Databases. Copyright 2007 Ramez Elmasri and Shamkant B.

Chapter 10. Functional Dependencies and Normalization for Relational Databases. Copyright 2007 Ramez Elmasri and Shamkant B. Chapter 10 Functional Dependencies and Normalization for Relational Databases Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Chapter Outline 1 Informal Design Guidelines for Relational Databases

More information

Big Data Analytics. Rasoul Karimi

Big Data Analytics. Rasoul Karimi Big Data Analytics Rasoul Karimi Information Systems and Machine Learning Lab (ISMLL) Institute of Computer Science University of Hildesheim, Germany Big Data Analytics Big Data Analytics 1 / 1 Introduction

More information

Data Models and Database Management Systems (DBMSs) Dr. Philip Cannata

Data Models and Database Management Systems (DBMSs) Dr. Philip Cannata Data Models and Database Management Systems (DBMSs) Dr. Philip Cannata 1 Data Models in the 1960s, 1970s, and 1980s Hierarchical Network (Graph) Relational Schema (Model) - first 1956 Vern Watts was IMS's

More information

Probability Concepts Probability Distributions. Margaret Priest (margaret.priest@wgc.school.nz) Nokuthaba Sibanda (nokuthaba.sibanda@vuw.ac.

Probability Concepts Probability Distributions. Margaret Priest (margaret.priest@wgc.school.nz) Nokuthaba Sibanda (nokuthaba.sibanda@vuw.ac. Probability Concepts Probability Distributions Margaret Priest (margaret.priest@wgc.school.nz) Nokuthaba Sibanda (nokuthaba.sibanda@vuw.ac.nz) Our Year 13 students who are most likely to want to continue

More information

Theory of Relational Database Design and Normalization

Theory of Relational Database Design and Normalization Theory of Relational Database Design and Normalization (Based on Chapter 14 and some part of Chapter 15 in Fundamentals of Database Systems by Elmasri and Navathe, Ed. 3) 1 Informal Design Guidelines for

More information

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science Program Schedule CTech Computer Science Credits CS101 Computer Science I 3 MATH100 Foundations of Mathematics and

More information

Software Modeling and Verification

Software Modeling and Verification Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system

More information

CS 377 Database Systems. Database Design Theory and Normalization. Li Xiong Department of Mathematics and Computer Science Emory University

CS 377 Database Systems. Database Design Theory and Normalization. Li Xiong Department of Mathematics and Computer Science Emory University CS 377 Database Systems Database Design Theory and Normalization Li Xiong Department of Mathematics and Computer Science Emory University 1 Relational database design So far Conceptual database design

More information

ETL-EXTRACT, TRANSFORM & LOAD TESTING

ETL-EXTRACT, TRANSFORM & LOAD TESTING ETL-EXTRACT, TRANSFORM & LOAD TESTING Rajesh Popli Manager (Quality), Nagarro Software Pvt. Ltd., Gurgaon, INDIA rajesh.popli@nagarro.com ABSTRACT Data is most important part in any organization. Data

More information

Computer Science @ UMass Hanna M. Wallach

Computer Science @ UMass Hanna M. Wallach Computer Science @ UMass University of Massachusetts Amherst wallach@cs.umass.edu Computer Scientists? 2 Computer Scientists! 3 Computer Science? a 4 Computer Science! 5 Life as a Computer Scientist Not

More information

HTSQL is a comprehensive navigational query language for relational databases.

HTSQL is a comprehensive navigational query language for relational databases. http://htsql.org/ HTSQL A Database Query Language HTSQL is a comprehensive navigational query language for relational databases. HTSQL is designed for data analysts and other accidental programmers who

More information

Relational Algebra. Query Languages Review. Operators. Select (σ), Project (π), Union ( ), Difference (-), Join: Natural (*) and Theta ( )

Relational Algebra. Query Languages Review. Operators. Select (σ), Project (π), Union ( ), Difference (-), Join: Natural (*) and Theta ( ) Query Languages Review Relational Algebra SQL Set operators Union Intersection Difference Cartesian product Relational Algebra Operators Relational operators Selection Projection Join Division Douglas

More information

Relational Databases for Querying XML Documents: Limitations and Opportunities. Outline. Motivation and Problem Definition Querying XML using a RDBMS

Relational Databases for Querying XML Documents: Limitations and Opportunities. Outline. Motivation and Problem Definition Querying XML using a RDBMS Relational Databases for Querying XML Documents: Limitations and Opportunities Jayavel Shanmugasundaram Kristin Tufte Gang He Chun Zhang David DeWitt Jeffrey Naughton Outline Motivation and Problem Definition

More information