Lyublena Antova, Christoph Koch, and Dan Olteanu Saarland University Database Group Saarbr ucken, Germany Presented By: Rana Daud

Size: px
Start display at page:

Download "Lyublena Antova, Christoph Koch, and Dan Olteanu Saarland University Database Group Saarbr ucken, Germany Presented By: Rana Daud"

Transcription

1 Lyublena Antova, Christoph Koch, and Dan Olteanu Saarland University Database Group Saarbr ucken, Germany Presented By: Rana Daud

2 Introduction Application Scenarios I-SQL World-Set Algebra Algebraic Equivalences Conclusion & Future work 2

3 INTRODUCTION SID CID GradeA GradeB NULL NULL NULL NULL 3

4 There is no agreement in the literature on the semantics of null values in relational databases: One of the reasons why it is difficult to agree on a semantics is that a null value can be interpreted as an unknown, inapplicable, etc. 4

5 Since each occurrence of a null value can substituted by a non null value, the relation containing nulls can be seen as a shorthand for a set of relations, each obtained by different substitutions. This will be our basic semantic assumption: An incomplete relation represents a set of (complete) relation. 5

6 Incomplete information arises naturally in numerous data management applications like data integration, data cleaning, and data exchange. Recently, research community has shown a vivid interest in efficiently managing incomplete information viewed as a set of possible worlds. A significant amount of research has attempted to find the right balance between the succinctness of world-set representations and the efficiency of query evaluation on top of them. However there is a lack of expressive query languages which are well tailored for sets of possible worlds. 6

7 A query language for incomplete information should at least the following demands Generic Expressive Conservative Efficient evaluation To the date of publication this article, no proposal for a query language for incomplete information has been made that satisfies all of them SQL lacks explicit constructs for dealing with uncertainty, though there are queries on incomplete information that can be expressed as SQL queries on relational representations of incomplete databases with complicated nesting and aggregations. Extensions of RA or SQL with limited constructs (such as certain or top-k) are not expressive enough, as they do not allow for the convenient construction of new worlds. 7

8 APPLICATION SCENARIOS 8

9 Example 1: Business decision support Company_Emp CID EID ACME e1 ACME e2 HAL e3 HAL e4 HAL e5 Emp_Skills EID Skills e1 Web e2 Web e3 Java e3 Web e4 SQL e5 Java 9

10 SELECT * FROM Company Emp choice of CID; U1 U 2 CID EID CID ACME e1 HAL ACME e2 HAL HAL EID e3 e4 e5 10

11 SELECT R1.CID, R1.EID FROM Company_Emp R1, (select * from U choice of EID) R2 WHERE R1.CID = R2.CID and R1.EID!=R2.EID; 11

12 CID V 1.1 EID CID V 1.2 EID ACME e1 ACME e2 CID V 2.1 EID CID V 2.2 EID CID V 2.3 EID HAL e3 HAL e3 HAL e4 HAL e4 HAL e5 HAL e5 12

13 Emp_Skills EID Skills e1 Web e2 Web e3 Java e3 Web e4 SQL e5 Java SELECT certain CID, Skill FROM V, Emp_Skill WHERE V.EID = Emp_Skill.EID Group worlds by (SELECT CID FROM V); 1.* 2. * W CID Skill ACME Web CID HAL W Skill Java 13

14 SELECT possible CID FROM W WHERE Skill= Web ; CID ACME 14

15 Example 2: Trip Planning Flights(Fid,Dep,Arr,Dtime,Atime) Hometowns(City) Flights Dep Arr FRA BCN FRA ATL PAR ATL PAR BCN PHL ATL HomeTowns City FRA PAR PHL... 15

16 create view HFlights as select * from Flights where Dep in Hometowns; select certain Arr from HFlights choice of Dep; Assuming the exsistence of a division operator in SQL: select Arr from (select Arr, Dep from HFlights) as F1 divide by (select Dep from HFlights) as F2 on F1.Dep = F2.Dep; 16

17 REMINDER- DIVISION: R = A B C D S= B 1 2 C 1 2 R S = A 2 D

18 Note: Division can be simulated in SQL using a nested sub-query with two not-exists constructs: select Arr from HFlights F1 where not exists (select * from HFlights F2 where not exists (select * from HFlights F3 where F3.Dep = F2.Dep and F3.Arr = F1.Arr)); This shows that at least in certain cases, I-SQL allows to phrase decision support queries more concisely than plain SQL. 18

19 o We will treat I-SQL informally, mostly in examples. o The structure of an I-SQL query: 19

20 Main motivation is to find a natural extension of RA and SQL to the context of incomplete information. We next detail on the syntax and semantics of the Constructs separated to four groups. Standard SQL constructs Merging worlds Splitting up worlds Data manipulation 20

21 BACK TO FLIGHTS Flights Dep Arr FRA BCN FRA ATL PAR ATL PAR BCN PHL ATL 21

22 Standard SQL constructs: a query is evaluated in each world independently and the result is added as a new relation to that world. Example: SELECT * FROM Flights WHERE Arr = BCN 22

23 Merging worlds: constructs that goes across When the query is a world borders to collect information that appears in other worlds as well. projection on a set of attributes, we will write the set of attributes Possible and certain: compute the tuples that appear in some, respectively all worlds. The result is then group-by in SQL added to each world of the input world-set. directly as is done in the Group-worlds-by: used in combination with possible and certain and allows specifying a condition on which the worlds are grouped. The condition is given in form of an SQL query; worlds that produce the same result of that query are then put into the same group. Then, possible or certain respectively, are computes within each of the created groups. 23

24 A Flights Dep FRA FRA Arr BCN ATL B Flights Dep PAR Arr ATL PAR BCN C Flights Dep PHL Arr ATL Example: SELECT certain Arr FROM Flights Result: F A Arr ATL F B Arr ATL F C Arr ATL 24

25 Note: Even though we used the closing construct certain, the result is again the set of three input worlds, where each of them is extended with a new relation F. Only if the input is a single world, or if one is interested only in the result of the operation and not in the input relations, will a possible or certain construct produce a single world. 25

26 Splitting up worlds: creation of new worlds using the operations: choice-of: freezing the values of the given set of attributes and create separate world for every combination. repair-by-key: Generates the possible repairs that violates a uniqueness constraint for the values of a given set of attributes. Generates possible configurations of items where each configuration contains only one item of a type. naturally fits Data cleaning scenarios ( For example: De-duplication based on keys constraints). 26

27 Flights Dep Arr FRA BCN FRA ATL PAR ATL PAR BCN PHL ATL Example: SELECT * FROM Flights choice of Dep; Result: A Flights Dep Arr B Flights Dep Arr C Flights Dep Arr FRA BCN PAR ATL PHL ATL 27 FRA ATL PAR BCN

28 REPAIR-BY-KEY EXAMPLE: Census(SSN, Name, POB, POW) social security number place of birth place of work Functional Dependency: SSN Name, POB, POW 28

29 SELECT * FROM Census repair by key SSN all possible relations that are consistent with regard to the functional dependency and are contained in the relation Census. Note: This query can produce exponentially many worlds, and is thus not expressible in SQL (or RA). In fact, NP-hard problems can be expressed as queries with repair-by-key. 29

30 Data Manipulation: insert update delete The query is executed in each world of the world-set independently. In case that inserting or updating the tuple violates a constraint in some worlds, the update is discarded in all worlds. Example: DELETE FROM Flights WHERE Arr = ATL Result: A Flights B Flights C Flights Dep Arr Dep Arr Dep Arr 30 FRA BCN PAR BCN

31 Order of evaluation: (1) Computing the product of the relations produced by the sub-queries in the from-clause. (2) Applying the conditions of the where-clause on top. (3) If any of the new operators choice-of, repair-by-key and groupworlds-by are specified, they are applied in the order given by structure of the query in I-SQL : (3.1) choice-of to create a world for each combination of values for the specified attributes. (3.2) repair-by-key in each of the created worlds. (3.3) group-worlds-by operation is applied on the world-set created after the repair-by-key. (4) Projecting on the attributes given in the select list, and if possible or certain are present we union, respectively intersect, the tuples in that projection. 31

32 WORLD-SET ALGEBRA Now we will focus on World-set Algebra in the formal treatment. It is for the fragment of I-SQL without SQL grouping and aggregation constructs. World-set Algebra is an extension of RA with new constructs. It is generic: the semantics of a query is independent of the world-set representation. This is fundamental property. 32

33 Syntax and Semantics: Selection Projection Cartesian Product Union Difference Renaming Intersect Division Base operators r s R\S (r) \ R\S (( R\S (r) s) \ r) 33

34 New constructs: poss cert choice-of U possible group-worlds-by certain group-worlds-by V p U V c U 34

35 SEMANTICS OF THE OPERATORS: World-set A contain worlds over schema R, 1 R2,..., R k Apply a query q World-set contain worlds over schema R Relation that represents the answer to q in each world,..., R k Rk 1,, 1 35

36 Semantics of world-set algebra defines as a function mapping between world-sets оif q is the identity on a relation (i.e., of the form R i ), we add a copy of that relation to each world. Unary operator Evaluate q f f R k1,, in each world is evaluated on and the answer replaces Rk1 R k 1 36

37 Binary operators (,,,, ) Evaluate the operands two world-sets A and A Perform the binary operation in those combinations of one world from A and one world from A that agree on the relation. R,..., 1 R k Forbid operations between relations that occur in different worlds in the original world-set 37

38 choice-of U creates a new world for each choice of the values in the U R k 1 projection on in each world. R k1 The relation is then replaced in each of the new worlds by the subset of R consisting of those tuples that agree on the values Each k1 of U. newly Thus there created are world no two new worlds created from the also same contains world with the relations the same R values of U. 1,..., R k of the world from which it was derived. When applied to the empty This relation, assure choice-of compositionality. produces an empty relation. 38

39 Auxiliary definitions: condition 39

40 group-worlds-by: & The group-worlds-by operators and group worlds in a world-set such that all worlds in a group agree on. We then replace by in each world. In the case of, in each world B is replaced by the union of the relations with B. p U V p U R k1 V R k1 R k1 V c U ( R ) V k1 from the group of worlds associated V c U Analogously, in the case, the new relation in a world p V U V c U R k1 ( R ) U k1 B becomes the intersection of the relations R k1 from the group of worlds associated with B. 40

41 41

42 poss: R k1 is replaced by the union of all its instances across all worlds cert: R k1 is replaced by the intersection of all its instances across all worlds. 42

43 The first query asking for possible acquisition targets can be expressed in world set algebra as: poss( CID ( Skill ' W eb' 1. CID2. CID1. EID2. EID * ( c CID ( 1. CID,1. EID ( CID, EID ( Company _ Emp ) Company _ Emp Emp _ Skills)))) 43

44 GENERICITY Genericity is a fundamental property of query languages. It guarantees that query results are independent from the representation of the data and interpretation of domain values. RA and SQL are generic. World-set algebra is generic: its semantics does not depend on the world-set representation. 44

45 FROM WORLD-SET ALGEBRA TO RA Any world-set algebra query can be efficiently translated to an equivalent relational algebra query over a complete representation of the input world-set. Propose the inlined representation, where the tuples of a relation over all worlds are represented in one table that has special attributes to denote the identifier of the world each tuple belongs to. 45

46 Main contributes of this section: World-set algebra is conservative over RA. This means that any world-set algebra query that maps from a complete database to a complete database (a complete-to-complete query) is equivalent to a RA query An efficient algorithm for effecting this translation. It follows that complete-to-complete world-set algebra queries have the same low data complexity as RA. 46

47 ALGEBRAIC EQUIVALENCES The goal of equivalence is optimization. They defined two classes of equivalences: Commute rules: covers pairs of operators that commute. Reduce rules: covers simplifications of operator compositions. 47

48 Commute Rules: Pushing down of the new operators poss and cert even across projection and selection where this is possible. This usually bears even greater potential for optimization. Some pairs of operators do not commute, for example: Selection & Choice-of Product & poss 48

49 Commute rules 49

50 Reduce rules-examples: Equivalence (11): the operator poss eliminates choice-of operator, because choice-of distributes tuples into a set of disjoint worlds, which latter flattened by the operator poss. Equivalence(15): poss can undo world grouping. Equivalence(20)+(21): in the presence of choice-of operators, the group-worlds-by operators are reduced to simple projections in case the choice attributes occur as both grouping and projecting attributes. Equivalence(22)+(23): redundant poss or cert operations. 50

51 Reduce rules 51

52 EXAMPLE: Consider a possibly incomplete version of our HFlights database from example 2, where additionally we have information on Hotels. HFlights Hotels Dep Arr Name City Price * q1 cert( City( ArrCity( Dep( Dep, City( HFlights Hotels))))) 52

53 53 ))))) ( ( ( ( (, * Hotels HFlights cert City Dep Dep City Arr City ))))) ( ( ( ( ( * Hotels HFlights cert Dep City Arr City q 1 )))) ) ( ( ( ( ( * Hotels HFlights cert Dep City Arr City )) ) ( ( ( Hotels HFlights cert City Arr Dep City q

54 q1 q 1 54

55 CONCLUSION & FUTURE WORK Two application scenarios to motivate I-SQL. I-SQL, an analog to SQL for the case of incomplete information. World-set algebra Genericity Conservativity over RA Expressive Set of equivalences in world-set algebra, which produce more efficient queries. Efficient evaluation 55

56 Future work: generalization to bag semantics implementation of I-SQL on top of a relational engine. To implement I-SQL on top of an existing representation system for finite world-sets, like data bases with lineage and uncertainty. 56

57 Thank you & Good luck 57

Uncertain Data Models

Uncertain Data Models Uncertain Data Models Christoph Koch EPFL Dan Olteanu University of Oxford SYNOMYMS data models for incomplete information, probabilistic data models, representation systems DEFINITION An uncertain data

More information

CS 377 Database Systems

CS 377 Database Systems CS 377 Database Systems Relational Algebra and Calculus Li Xiong Department of Mathematics and Computer Science Emory University 1 ER Diagram of Company Database 2 3 4 5 Relational Algebra and Relational

More information

Relational Databases

Relational Databases Relational Databases Jan Chomicki University at Buffalo Jan Chomicki () Relational databases 1 / 49 Plan of the course 1 Relational databases 2 Relational database design 3 Conceptual database design 4

More information

The Relational Algebra

The Relational Algebra The Relational Algebra Relational Algebra Relational algebra is the basic set of operations for the relational model These operations enable a user to specify basic retrieval requests (or queries) 27-Jan-14

More information

Chapter 6 The Relational Algebra and Calculus

Chapter 6 The Relational Algebra and Calculus Chapter 6 The Relational Algebra and Calculus 1 Chapter Outline Example Database Application (COMPANY) Relational Algebra Unary Relational Operations Relational Algebra Operations From Set Theory Binary

More information

Fundamentals of Database Systems

Fundamentals of Database Systems Fundamentals of Database Systems Assignment: 1 Due Date: 8th August, 2017 Instructions This question paper contains 15 questions in 5 pages. Q1: The users are allowed to access different parts of data

More information

Relational Model History. COSC 304 Introduction to Database Systems. Relational Model and Algebra. Relational Model Definitions.

Relational Model History. COSC 304 Introduction to Database Systems. Relational Model and Algebra. Relational Model Definitions. COSC 304 Introduction to Database Systems Relational Model and Algebra Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Relational Model History The relational model was

More information

Relational Model: History

Relational Model: History Relational Model: History Objectives of Relational Model: 1. Promote high degree of data independence 2. Eliminate redundancy, consistency, etc. problems 3. Enable proliferation of non-procedural DML s

More information

Chapter 6 Part I The Relational Algebra and Calculus

Chapter 6 Part I The Relational Algebra and Calculus Chapter 6 Part I The Relational Algebra and Calculus Copyright 2004 Ramez Elmasri and Shamkant Navathe Database State for COMPANY All examples discussed below refer to the COMPANY database shown here.

More information

CMP-3440 Database Systems

CMP-3440 Database Systems CMP-3440 Database Systems Relational DB Languages Relational Algebra, Calculus, SQL Lecture 05 zain 1 Introduction Relational algebra & relational calculus are formal languages associated with the relational

More information

Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 6 Outline. Unary Relational Operations: SELECT and

Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 6 Outline. Unary Relational Operations: SELECT and Chapter 6 The Relational Algebra and Relational Calculus Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 6 Outline Unary Relational Operations: SELECT and PROJECT Relational

More information

Relational Algebra. Procedural language Six basic operators

Relational Algebra. Procedural language Six basic operators Relational algebra Relational Algebra Procedural language Six basic operators select: σ project: union: set difference: Cartesian product: x rename: ρ The operators take one or two relations as inputs

More information

RELATIONAL DATA MODEL: Relational Algebra

RELATIONAL DATA MODEL: Relational Algebra RELATIONAL DATA MODEL: Relational Algebra Outline 1. Relational Algebra 2. Relational Algebra Example Queries 1. Relational Algebra A basic set of relational model operations constitute the relational

More information

elements of a relation are called tuples. Every tuple represents an entity or a relationship. Country name code population area...

elements of a relation are called tuples. Every tuple represents an entity or a relationship. Country name code population area... 2.2.1 Relations A (database) state associates each relation schema to a relation. elements of a relation are called tuples. Every tuple represents an entity or a relationship. (: Asia, area: 4.5E7) relations

More information

Relational Algebra. Relational Algebra Overview. Relational Algebra Overview. Unary Relational Operations 8/19/2014. Relational Algebra Overview

Relational Algebra. Relational Algebra Overview. Relational Algebra Overview. Unary Relational Operations 8/19/2014. Relational Algebra Overview The Relational Algebra Relational Algebra Relational algebra is the basic set of operations for the relational model These operations enable a user to specify basic retrieval requests (or queries) Relational

More information

RAQUEL s Relational Operators

RAQUEL s Relational Operators Contents RAQUEL s Relational Operators Introduction 2 General Principles 2 Operator Parameters 3 Ordinary & High-Level Operators 3 Operator Valency 4 Default Tuples 5 The Relational Algebra Operators in

More information

QUERY PROCESSING & OPTIMIZATION CHAPTER 19 (6/E) CHAPTER 15 (5/E)

QUERY PROCESSING & OPTIMIZATION CHAPTER 19 (6/E) CHAPTER 15 (5/E) QUERY PROCESSING & OPTIMIZATION CHAPTER 19 (6/E) CHAPTER 15 (5/E) 2 LECTURE OUTLINE Query Processing Methodology Basic Operations and Their Costs Generation of Execution Plans 3 QUERY PROCESSING IN A DDBMS

More information

II. Structured Query Language (SQL)

II. Structured Query Language (SQL) II. Structured Query Language (SQL) Lecture Topics ffl Basic concepts and operations of the relational model. ffl The relational algebra. ffl The SQL query language. CS448/648 II - 1 Basic Relational Concepts

More information

Relational Query Languages. Preliminaries. Formal Relational Query Languages. Example Schema, with table contents. Relational Algebra

Relational Query Languages. Preliminaries. Formal Relational Query Languages. Example Schema, with table contents. Relational Algebra Note: Slides are posted on the class website, protected by a password written on the board Reading: see class home page www.cs.umb.edu/cs630. Relational Algebra CS430/630 Lecture 2 Relational Query Languages

More information

Relational Algebra. Relational Algebra. 7/4/2017 Md. Golam Moazzam, Dept. of CSE, JU

Relational Algebra. Relational Algebra. 7/4/2017 Md. Golam Moazzam, Dept. of CSE, JU Relational Algebra 1 Structure of Relational Databases A relational database consists of a collection of tables, each of which is assigned a unique name. A row in a table represents a relationship among

More information

Lecture Query evaluation. Combining operators. Logical query optimization. By Marina Barsky Winter 2016, University of Toronto

Lecture Query evaluation. Combining operators. Logical query optimization. By Marina Barsky Winter 2016, University of Toronto Lecture 02.03. Query evaluation Combining operators. Logical query optimization By Marina Barsky Winter 2016, University of Toronto Quick recap: Relational Algebra Operators Core operators: Selection σ

More information

Relational Model, Relational Algebra, and SQL

Relational Model, Relational Algebra, and SQL Relational Model, Relational Algebra, and SQL August 29, 2007 1 Relational Model Data model. constraints. Set of conceptual tools for describing of data, data semantics, data relationships, and data integrity

More information

Chapter 6 The Relational Algebra and Relational Calculus

Chapter 6 The Relational Algebra and Relational Calculus Chapter 6 The Relational Algebra and Relational Calculus Fundamentals of Database Systems, 6/e The Relational Algebra and Relational Calculus Dr. Salha M. Alzahrani 1 Fundamentals of Databases Topics so

More information

Relational Algebra. Lecture 4A Kathleen Durant Northeastern University

Relational Algebra. Lecture 4A Kathleen Durant Northeastern University Relational Algebra Lecture 4A Kathleen Durant Northeastern University 1 Relational Query Languages Query languages: Allow manipulation and retrieval of data from a database. Relational model supports simple,

More information

RELATIONAL ALGEBRA. CS 564- Fall ACKs: Dan Suciu, Jignesh Patel, AnHai Doan

RELATIONAL ALGEBRA. CS 564- Fall ACKs: Dan Suciu, Jignesh Patel, AnHai Doan RELATIONAL ALGEBRA CS 564- Fall 2016 ACKs: Dan Suciu, Jignesh Patel, AnHai Doan RELATIONAL QUERY LANGUAGES allow the manipulation and retrieval of data from a database two types of query languages: Declarative:

More information

Lecture 3 SQL. Shuigeng Zhou. September 23, 2008 School of Computer Science Fudan University

Lecture 3 SQL. Shuigeng Zhou. September 23, 2008 School of Computer Science Fudan University Lecture 3 SQL Shuigeng Zhou September 23, 2008 School of Computer Science Fudan University Outline Basic Structure Set Operations Aggregate Functions Null Values Nested Subqueries Derived Relations Views

More information

Relational Model and Relational Algebra

Relational Model and Relational Algebra Relational Model and Relational Algebra CMPSCI 445 Database Systems Fall 2008 Some slide content courtesy of Zack Ives, Ramakrishnan & Gehrke, Dan Suciu, Ullman & Widom Next lectures: Querying relational

More information

2.2 Relational Model (RM)

2.2 Relational Model (RM) 2.2 Relational Model (RM) Relational Model by Codd (1970): mathematical foundation: set theory, only a single structural concept Relation, entity/object types and relationship types are uniformly modeled

More information

2.3 Algorithms Using Map-Reduce

2.3 Algorithms Using Map-Reduce 28 CHAPTER 2. MAP-REDUCE AND THE NEW SOFTWARE STACK one becomes available. The Master must also inform each Reduce task that the location of its input from that Map task has changed. Dealing with a failure

More information

Relational Model & Algebra. Announcements (Tue. Sep. 3) Relational data model. CompSci 316 Introduction to Database Systems

Relational Model & Algebra. Announcements (Tue. Sep. 3) Relational data model. CompSci 316 Introduction to Database Systems Relational Model & Algebra CompSci 316 Introduction to Database Systems Announcements (Tue. Sep. 3) Homework #1 has been posted Sign up for Gradiance now! Windows Azure passcode will be emailed soon sign

More information

Optimization of Nested Queries in a Complex Object Model

Optimization of Nested Queries in a Complex Object Model Optimization of Nested Queries in a Complex Object Model Based on the papers: From Nested loops to Join Queries in OODB and Optimisation if Nested Queries in a Complex Object Model by Department of Computer

More information

Chapter 5 Relational Algebra. Nguyen Thi Ai Thao

Chapter 5 Relational Algebra. Nguyen Thi Ai Thao Chapter 5 Nguyen Thi Ai Thao thaonguyen@cse.hcmut.edu.vn Spring- 2016 Contents 1 Unary Relational Operations 2 Operations from Set Theory 3 Binary Relational Operations 4 Additional Relational Operations

More information

Comp 5311 Database Management Systems. 2. Relational Model and Algebra

Comp 5311 Database Management Systems. 2. Relational Model and Algebra Comp 5311 Database Management Systems 2. Relational Model and Algebra 1 Basic Concepts of the Relational Model Entities and relationships of the E-R model are stored in tables also called relations (not

More information

Chapter 6 5/2/2008. Chapter Outline. Database State for COMPANY. The Relational Algebra and Calculus

Chapter 6 5/2/2008. Chapter Outline. Database State for COMPANY. The Relational Algebra and Calculus Chapter 6 The Relational Algebra and Calculus Chapter Outline Example Database Application (COMPANY) Relational Algebra Unary Relational Operations Relational Algebra Operations From Set Theory Binary

More information

Relational Algebra and SQL

Relational Algebra and SQL Relational Algebra and SQL Relational Algebra. This algebra is an important form of query language for the relational model. The operators of the relational algebra: divided into the following classes:

More information

Ian Kenny. November 28, 2017

Ian Kenny. November 28, 2017 Ian Kenny November 28, 2017 Introductory Databases Relational Algebra Introduction In this lecture we will cover Relational Algebra. Relational Algebra is the foundation upon which SQL is built and is

More information

Query Decomposition and Data Localization

Query Decomposition and Data Localization Query Decomposition and Data Localization Query Decomposition and Data Localization Query decomposition and data localization consists of two steps: Mapping of calculus query (SQL) to algebra operations

More information

II. Structured Query Language (SQL)

II. Structured Query Language (SQL) II. Structured Query Language () Lecture Topics Basic concepts and operations of the relational model. The relational algebra. The query language. CS448/648 1 Basic Relational Concepts Relating to descriptions

More information

Chapter 8: The Relational Algebra and The Relational Calculus

Chapter 8: The Relational Algebra and The Relational Calculus Ramez Elmasri, Shamkant B. Navathe(2017) Fundamentals of Database Systems (7th Edition),pearson, isbn 10: 0-13-397077-9;isbn-13:978-0-13-397077-7. Chapter 8: The Relational Algebra and The Relational Calculus

More information

Relational model continued. Understanding how to use the relational model. Summary of board example: with Copies as weak entity

Relational model continued. Understanding how to use the relational model. Summary of board example: with Copies as weak entity COS 597A: Principles of Database and Information Systems Relational model continued Understanding how to use the relational model 1 with as weak entity folded into folded into branches: (br_, librarian,

More information

Chapter 6: Formal Relational Query Languages

Chapter 6: Formal Relational Query Languages Chapter 6: Formal Relational Query Languages Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Chapter 6: Formal Relational Query Languages Relational Algebra Tuple Relational

More information

Midterm Review. Winter Lecture 13

Midterm Review. Winter Lecture 13 Midterm Review Winter 2006-2007 Lecture 13 Midterm Overview 3 hours, single sitting Topics: Relational model relations, keys, relational algebra expressions SQL DDL commands CREATE TABLE, CREATE VIEW Specifying

More information

Lecture 16. The Relational Model

Lecture 16. The Relational Model Lecture 16 The Relational Model Lecture 16 Today s Lecture 1. The Relational Model & Relational Algebra 2. Relational Algebra Pt. II [Optional: may skip] 2 Lecture 16 > Section 1 1. The Relational Model

More information

Web Science & Technologies University of Koblenz Landau, Germany. Relational Data Model

Web Science & Technologies University of Koblenz Landau, Germany. Relational Data Model Web Science & Technologies University of Koblenz Landau, Germany Relational Data Model Overview Relational data model; Tuples and relations; Schemas and instances; Named vs. unnamed perspective; Relational

More information

QUERY OPTIMIZATION E Jayant Haritsa Computer Science and Automation Indian Institute of Science. JAN 2014 Slide 1 QUERY OPTIMIZATION

QUERY OPTIMIZATION E Jayant Haritsa Computer Science and Automation Indian Institute of Science. JAN 2014 Slide 1 QUERY OPTIMIZATION E0 261 Jayant Haritsa Computer Science and Automation Indian Institute of Science JAN 2014 Slide 1 Database Engines Main Components Query Processing Transaction Processing Access Methods JAN 2014 Slide

More information

SQL: Data Manipulation Language. csc343, Introduction to Databases Diane Horton Winter 2017

SQL: Data Manipulation Language. csc343, Introduction to Databases Diane Horton Winter 2017 SQL: Data Manipulation Language csc343, Introduction to Databases Diane Horton Winter 2017 Introduction So far, we have defined database schemas and queries mathematically. SQL is a formal language for

More information

Relational Model History. COSC 416 NoSQL Databases. Relational Model (Review) Relation Example. Relational Model Definitions. Relational Integrity

Relational Model History. COSC 416 NoSQL Databases. Relational Model (Review) Relation Example. Relational Model Definitions. Relational Integrity COSC 416 NoSQL Databases Relational Model (Review) Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Relational Model History The relational model was proposed by E. F. Codd

More information

SQL: csc343, Introduction to Databases Renée J. Miller and Fatemeh Nargesian and Sina Sina Meraji. Winter 2018

SQL: csc343, Introduction to Databases Renée J. Miller and Fatemeh Nargesian and Sina Sina Meraji. Winter 2018 SQL: csc343, Introduction to Databases Renée J. Miller and Fatemeh Nargesian and Sina Sina Meraji Winter 2018 Introduction So far, we have defined database schemas and queries mathematically. SQL is a

More information

Basic Structure Set Operations Aggregate Functions Null Values Nested Subqueries Derived Relations Views Modification of the Database Data Definition

Basic Structure Set Operations Aggregate Functions Null Values Nested Subqueries Derived Relations Views Modification of the Database Data Definition Chapter 4: SQL Basic Structure Set Operations Aggregate Functions Null Values Nested Subqueries Derived Relations Views Modification of the Database Data Definition Language 4.1 Schema Used in Examples

More information

6. Relational Algebra (Part II)

6. Relational Algebra (Part II) 6. Relational Algebra (Part II) 6.1. Introduction In the previous chapter, we introduced relational algebra as a fundamental model of relational database manipulation. In particular, we defined and discussed

More information

Database Applications (15-415)

Database Applications (15-415) Database Applications (15-415) ER to Relational & Relational Algebra Lecture 4, January 20, 2015 Mohammad Hammoud Today Last Session: The relational model Today s Session: ER to relational Relational algebra

More information

Chapter 2: Relational Model

Chapter 2: Relational Model Chapter 2: Relational Model Database System Concepts, 5 th Ed. See www.db-book.com for conditions on re-use Chapter 2: Relational Model Structure of Relational Databases Fundamental Relational-Algebra-Operations

More information

Relational Algebra. ICOM 5016 Database Systems. Roadmap. R.A. Operators. Selection. Example: Selection. Relational Algebra. Fundamental Property

Relational Algebra. ICOM 5016 Database Systems. Roadmap. R.A. Operators. Selection. Example: Selection. Relational Algebra. Fundamental Property Relational Algebra ICOM 06 Database Systems Relational Algebra Dr. Amir H. Chinaei Department of Electrical and Computer Engineering University of Puerto Rico, Mayagüez Slides are adapted from: Introduction.

More information

1 Relational Data Model

1 Relational Data Model Prof. Dr.-Ing. Wolfgang Lehner INTELLIGENT DATABASE GROUP 1 Relational Data Model What is in the Lecture? 1. Database Usage Query Programming Design 2 Relational Model 3 The Relational Model The Relation

More information

Today s topics. Null Values. Nulls and Views in SQL. Standard Boolean 2-valued logic 9/5/17. 2-valued logic does not work for nulls

Today s topics. Null Values. Nulls and Views in SQL. Standard Boolean 2-valued logic 9/5/17. 2-valued logic does not work for nulls Today s topics CompSci 516 Data Intensive Computing Systems Lecture 4 Relational Algebra and Relational Calculus Instructor: Sudeepa Roy Finish NULLs and Views in SQL from Lecture 3 Relational Algebra

More information

II B.Sc(IT) [ BATCH] IV SEMESTER CORE: RELATIONAL DATABASE MANAGEMENT SYSTEM - 412A Multiple Choice Questions.

II B.Sc(IT) [ BATCH] IV SEMESTER CORE: RELATIONAL DATABASE MANAGEMENT SYSTEM - 412A Multiple Choice Questions. Dr.G.R.Damodaran College of Science (Autonomous, affiliated to the Bharathiar University, recognized by the UGC)Re-accredited at the 'A' Grade Level by the NAAC and ISO 9001:2008 Certified CRISL rated

More information

Oracle Database 10g: Introduction to SQL

Oracle Database 10g: Introduction to SQL ORACLE UNIVERSITY CONTACT US: 00 9714 390 9000 Oracle Database 10g: Introduction to SQL Duration: 5 Days What you will learn This course offers students an introduction to Oracle Database 10g database

More information

Query Processing SL03

Query Processing SL03 Distributed Database Systems Fall 2016 Query Processing Overview Query Processing SL03 Distributed Query Processing Steps Query Decomposition Data Localization Query Processing Overview/1 Query processing:

More information

A l Ain University Of Science and Technology

A l Ain University Of Science and Technology A l Ain University Of Science and Technology 6 Handout(6) Database Management Principles and Applications Relational algebra http://alainauh.webs.com/ 1 Handout Outines 6 Basic operations in relational

More information

Relational Algebra. Note: Slides are posted on the class website, protected by a password written on the board

Relational Algebra. Note: Slides are posted on the class website, protected by a password written on the board Note: Slides are posted on the class website, protected by a password written on the board Reading: see class home page www.cs.umb.edu/cs630. Relational Algebra CS430/630 Lecture 2 Slides based on Database

More information

Relational Algebra 1

Relational Algebra 1 Relational Algebra 1 Relational Algebra Last time: started on Relational Algebra What your SQL queries are translated to for evaluation A formal query language based on operators Rel Rel Op Rel Op Rel

More information

Chapter 3: Relational Model

Chapter 3: Relational Model Chapter 3: Relational Model Structure of Relational Databases Relational Algebra Tuple Relational Calculus Domain Relational Calculus Extended Relational-Algebra-Operations Modification of the Database

More information

8) A top-to-bottom relationship among the items in a database is established by a

8) A top-to-bottom relationship among the items in a database is established by a MULTIPLE CHOICE QUESTIONS IN DBMS (unit-1 to unit-4) 1) ER model is used in phase a) conceptual database b) schema refinement c) physical refinement d) applications and security 2) The ER model is relevant

More information

SQL. Lecture 4 SQL. Basic Structure. The select Clause. The select Clause (Cont.) The select Clause (Cont.) Basic Structure.

SQL. Lecture 4 SQL. Basic Structure. The select Clause. The select Clause (Cont.) The select Clause (Cont.) Basic Structure. SL Lecture 4 SL Chapter 4 (Sections 4.1, 4.2, 4.3, 4.4, 4.5, 4., 4.8, 4.9, 4.11) Basic Structure Set Operations Aggregate Functions Null Values Nested Subqueries Derived Relations Modification of the Database

More information

Multisets and Duplicates. SQL: Duplicate Semantics and NULL Values. How does this impact Queries?

Multisets and Duplicates. SQL: Duplicate Semantics and NULL Values. How does this impact Queries? Multisets and Duplicates SQL: Duplicate Semantics and NULL Values Fall 2015 SQL uses a MULTISET/BAG semantics rather than a SET semantics: SQL tables are multisets of tuples originally for efficiency reasons

More information

Introduction to SQL. Select-From-Where Statements Multirelation Queries Subqueries. Slides are reused by the approval of Jeffrey Ullman s

Introduction to SQL. Select-From-Where Statements Multirelation Queries Subqueries. Slides are reused by the approval of Jeffrey Ullman s Introduction to SQL Select-From-Where Statements Multirelation Queries Subqueries Slides are reused by the approval of Jeffrey Ullman s 1 Why SQL? SQL is a very-high-level language. Say what to do rather

More information

Chapter 12: Query Processing

Chapter 12: Query Processing Chapter 12: Query Processing Overview Catalog Information for Cost Estimation $ Measures of Query Cost Selection Operation Sorting Join Operation Other Operations Evaluation of Expressions Transformation

More information

Relational Database: The Relational Data Model; Operations on Database Relations

Relational Database: The Relational Data Model; Operations on Database Relations Relational Database: The Relational Data Model; Operations on Database Relations Greg Plaxton Theory in Programming Practice, Spring 2005 Department of Computer Science University of Texas at Austin Overview

More information

Relational Algebra Part I. CS 377: Database Systems

Relational Algebra Part I. CS 377: Database Systems Relational Algebra Part I CS 377: Database Systems Recap of Last Week ER Model: Design good conceptual models to store information Relational Model: Table representation with structures and constraints

More information

Relational Query Languages

Relational Query Languages Relational Query Languages Query languages: Allow manipulation and retrieval of data from a database. Relational model supports simple, powerful, declarative QLs with precise semantics: Strong formal foundation

More information

The Relational Model and Relational Algebra

The Relational Model and Relational Algebra The Relational Model and Relational Algebra Background Introduced by Ted Codd of IBM Research in 1970. Concept of mathematical relation as the underlying basis. The standard database model for most transactional

More information

normalization are being violated o Apply the rule of Third Normal Form to resolve a violation in the model

normalization are being violated o Apply the rule of Third Normal Form to resolve a violation in the model Database Design Section1 - Introduction 1-1 Introduction to the Oracle Academy o Give examples of jobs, salaries, and opportunities that are possible by participating in the Academy. o Explain how your

More information

CSEN 501 CSEN501 - Databases I

CSEN 501 CSEN501 - Databases I CSEN501 - Databases I Lecture 5: Structured Query Language (SQL) Prof. Dr. Slim slim.abdennadher@guc.edu.eg German University Cairo, Faculty of Media Engineering and Technology Structured Query Language:

More information

Join (SQL) - Wikipedia, the free encyclopedia

Join (SQL) - Wikipedia, the free encyclopedia 페이지 1 / 7 Sample tables All subsequent explanations on join types in this article make use of the following two tables. The rows in these tables serve to illustrate the effect of different types of joins

More information

CSC 261/461 Database Systems Lecture 13. Fall 2017

CSC 261/461 Database Systems Lecture 13. Fall 2017 CSC 261/461 Database Systems Lecture 13 Fall 2017 Announcement Start learning HTML, CSS, JavaScript, PHP + SQL We will cover the basics next week https://www.w3schools.com/php/php_mysql_intro.asp Project

More information

Data Base Concepts. Course Guide 2

Data Base Concepts. Course Guide 2 MS Access Chapter 1 Data Base Concepts Course Guide 2 Data Base Concepts Data The term data is often used to distinguish binary machine-readable information from textual human-readable information. For

More information

Textbook: Chapter 6! CS425 Fall 2013 Boris Glavic! Chapter 3: Formal Relational Query. Relational Algebra! Select Operation Example! Select Operation!

Textbook: Chapter 6! CS425 Fall 2013 Boris Glavic! Chapter 3: Formal Relational Query. Relational Algebra! Select Operation Example! Select Operation! Chapter 3: Formal Relational Query Languages CS425 Fall 2013 Boris Glavic Chapter 3: Formal Relational Query Languages Relational Algebra Tuple Relational Calculus Domain Relational Calculus Textbook:

More information

What s a database system? Review of Basic Database Concepts. Entity-relationship (E/R) diagram. Two important questions. Physical data independence

What s a database system? Review of Basic Database Concepts. Entity-relationship (E/R) diagram. Two important questions. Physical data independence What s a database system? Review of Basic Database Concepts CPS 296.1 Topics in Database Systems According to Oxford Dictionary Database: an organized body of related information Database system, DataBase

More information

Databases. Jörg Endrullis. VU University Amsterdam

Databases. Jörg Endrullis. VU University Amsterdam Databases Jörg Endrullis VU University Amsterdam The Relational Model Overview 1. Relational Model Concepts: Schema, State 2. Null Values 3. Constraints: General Remarks 4. Key Constraints 5. Foreign Key

More information

Relational Algebra. Study Chapter Comp 521 Files and Databases Fall

Relational Algebra. Study Chapter Comp 521 Files and Databases Fall Relational Algebra Study Chapter 4.1-4.2 Comp 521 Files and Databases Fall 2010 1 Relational Query Languages Query languages: Allow manipulation and retrieval of data from a database. Relational model

More information

Missing Information. We ve assumed every tuple has a value for every attribute. But sometimes information is missing. Two common scenarios:

Missing Information. We ve assumed every tuple has a value for every attribute. But sometimes information is missing. Two common scenarios: NULL values Missing Information We ve assumed every tuple has a value for every attribute. But sometimes information is missing. Two common scenarios: Missing value. E.g., we know a student has some email

More information

Databases. Relational Model, Algebra and operations. How do we model and manipulate complex data structures inside a computer system? Until

Databases. Relational Model, Algebra and operations. How do we model and manipulate complex data structures inside a computer system? Until Databases Relational Model, Algebra and operations How do we model and manipulate complex data structures inside a computer system? Until 1970.. Many different views or ways of doing this Could use tree

More information

Incomplete Information: Null Values

Incomplete Information: Null Values Incomplete Information: Null Values Often ruled out: not null in SQL. Essential when one integrates/exchanges data. Perhaps the most poorly designed and the most often criticized part of SQL:... [this]

More information

Database System Concepts

Database System Concepts s Slides (fortemente) baseados nos slides oficiais do livro c Silberschatz, Korth and Sudarshan. Chapter 2: Model Departamento de Engenharia Informática Instituto Superior Técnico 1 st Semester 2009/2010

More information

DBMS. Relational Model. Module Title?

DBMS. Relational Model. Module Title? Relational Model Why Study the Relational Model? Most widely used model currently. DB2,, MySQL, Oracle, PostgreSQL, SQLServer, Note: some Legacy systems use older models e.g., IBM s IMS Object-oriented

More information

Keys, SQL, and Views CMPSCI 645

Keys, SQL, and Views CMPSCI 645 Keys, SQL, and Views CMPSCI 645 SQL Overview SQL Preliminaries Integrity constraints Query capabilities SELECT-FROM- WHERE blocks, Basic features, ordering, duplicates Set ops (union, intersect, except)

More information

Relational Algebra. Ron McFadyen ACS

Relational Algebra. Ron McFadyen ACS Relational Algebra Relational algebra is a procedural language operations that can be implemented by a database SQL is non-procedural We will consider some operators and the mapping of SQL Select to RA

More information

CS2300: File Structures and Introduction to Database Systems

CS2300: File Structures and Introduction to Database Systems CS2300: File Structures and Introduction to Database Systems Lecture 9: Relational Model & Relational Algebra Doug McGeehan 1 Brief Review Relational model concepts Informal Terms Formal Terms Table Relation

More information

2.2.2.Relational Database concept

2.2.2.Relational Database concept Foreign key:- is a field (or collection of fields) in one table that uniquely identifies a row of another table. In simpler words, the foreign key is defined in a second table, but it refers to the primary

More information

COSC344 Database Theory and Applications. σ a= c (P) S. Lecture 4 Relational algebra. π A, P X Q. COSC344 Lecture 4 1

COSC344 Database Theory and Applications. σ a= c (P) S. Lecture 4 Relational algebra. π A, P X Q. COSC344 Lecture 4 1 COSC344 Database Theory and Applications σ a= c (P) S π A, C (H) P P X Q Lecture 4 Relational algebra COSC344 Lecture 4 1 Overview Last Lecture Relational Model This Lecture ER to Relational mapping Relational

More information

CS411 Database Systems. 04: Relational Algebra Ch 2.4, 5.1

CS411 Database Systems. 04: Relational Algebra Ch 2.4, 5.1 CS411 Database Systems 04: Relational Algebra Ch 2.4, 5.1 1 Basic RA Operations 2 Set Operations Union, difference Binary operations Remember, a relation is a SET of tuples, so set operations are certainly

More information

SQL: Data Querying. B0B36DBS, BD6B36DBS: Database Systems. h p://www.ksi.m.cuni.cz/~svoboda/courses/172-b0b36dbs/ Lecture 4

SQL: Data Querying. B0B36DBS, BD6B36DBS: Database Systems. h p://www.ksi.m.cuni.cz/~svoboda/courses/172-b0b36dbs/ Lecture 4 B0B36DBS, BD6B36DBS: Database Systems h p://www.ksi.m.cuni.cz/~svoboda/courses/172-b0b36dbs/ Lecture 4 SQL: Data Querying Mar n Svoboda mar n.svoboda@fel.cvut.cz 20. 3. 2018 Czech Technical University

More information

Examples of Relational Value Assignments

Examples of Relational Value Assignments Examples of Relational Value Assignments Example Relvars - First Set Let relvar EMP contain sample data of the ID number and name of employees, displayed in tabular format as :- No Name 1 Jack 2 Jill Example

More information

SQL Data Querying and Views

SQL Data Querying and Views Course A7B36DBS: Database Systems Lecture 04: SQL Data Querying and Views Martin Svoboda Faculty of Electrical Engineering, Czech Technical University in Prague Outline SQL Data manipulation SELECT queries

More information

Database Systems SQL SL03

Database Systems SQL SL03 Checking... Informatik für Ökonomen II Fall 2010 Data Definition Language Database Systems SQL SL03 Table Expressions, Query Specifications, Query Expressions Subqueries, Duplicates, Null Values Modification

More information

Relational Algebra: a Brief Introduction

Relational Algebra: a Brief Introduction Relational Algebra: a Brief Introduction Kyle R. Wenholz University of Puget Sound April 17, 2012 kwenholz 1 Contents 1 Introduction 2 1.1 Motivation................................... 2 2 The Relational

More information

Introduction to SQL SELECT-FROM-WHERE STATEMENTS SUBQUERIES DATABASE SYSTEMS AND CONCEPTS, CSCI 3030U, UOIT, COURSE INSTRUCTOR: JAREK SZLICHTA

Introduction to SQL SELECT-FROM-WHERE STATEMENTS SUBQUERIES DATABASE SYSTEMS AND CONCEPTS, CSCI 3030U, UOIT, COURSE INSTRUCTOR: JAREK SZLICHTA Introduction to SQL SELECT-FROM-WHERE STATEMENTS MULTIRELATION QUERIES SUBQUERIES 1 SQL SQL is a standard language for accessing databases. SQL stands for Structured Query Language. SQL lecture s material

More information

CS34800 Information Systems. The Relational Model Prof. Walid Aref 29 August, 2016

CS34800 Information Systems. The Relational Model Prof. Walid Aref 29 August, 2016 CS34800 Information Systems The Relational Model Prof. Walid Aref 29 August, 2016 1 Chapter: The Relational Model Structure of Relational Databases Relational Algebra Tuple Relational Calculus Domain Relational

More information

Relational Model 2: Relational Algebra

Relational Model 2: Relational Algebra Yufei Tao Department of Computer Science and Engineering Chinese University of Hong Kong The relational model defines: 1 the format by which data should be stored; 2 the operations for querying the data.

More information

The Relational Algebra and Calculus. Copyright 2013 Ramez Elmasri and Shamkant B. Navathe

The Relational Algebra and Calculus. Copyright 2013 Ramez Elmasri and Shamkant B. Navathe The Relational Algebra and Calculus Copyright 2013 Ramez Elmasri and Shamkant B. Navathe Chapter Outline Relational Algebra Unary Relational Operations Relational Algebra Operations From Set Theory Binary

More information