Query Decomposition and Data Localization

Size: px
Start display at page:

Download "Query Decomposition and Data Localization"

Transcription

1 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 (select, project, join, rename) [Query Decomposition] Query Decomposition Applying data distribution information to the algebra operations [Data Localication] Data Localization Spring, 2006 Arturas Mazeika Page 2 Query Decomposition Query Decomposition (Normalization) Normalization Manipulate query quantifiers and qualification Analysis Detect and reject incorrect queries Simplification Eliminate redundant predicates Restructuring Use transformation rules to optimize query Lexical and syntactic analysis Check validity (similar to compilers) Check for attributes and relations Type checking on the qualification Put into normal form Conjunctive normal form Disjunctive normal form (p 11 p 12 p 1n ) (p m1 p m2 p mn ) (p 11 p 12 p 1n ) (p m1 p m2 p mn ) OR s mapped into union AND s mapped into join or selection Spring, 2006 Arturas Mazeika Page 3 Spring, 2006 Arturas Mazeika Page 4

2 Query Decomposition (Analysis 1/3) Query Decomposition (Analysis Example 2/3) Type incorrect Checks whether the attributes and relation names of a query are defined in the global schema Checks whether the operations on attributes do not conflict with the types of the attributes Semantically incorrect Checks whether the components contribute in any way to the generation of the result Only a subset of relational calculus queries can be tested for correctness, i.e those that do not contain disjunction and negation Typical data structures used to detect the semantically incorrect queries are the following: Connection graph (query graph) Join graph Consider a query: SELECT ENAME,RESP, ASG, PROJ WHERE EMP.ENO = ASG.ENO AND ASG.PNO = PROJ.PNO AND PNAME = "CAD/CAM" AND DUR 36 AND TITLE = "Programmer" Spring, 2006 Arturas Mazeika Page 5 Query Decomposition (Analysis Example 3/3) Spring, 2006 Arturas Mazeika Page 6 Query Decomposition (Simplification 1/2) Consider a query: SELECT ENAME,RESP, ASG, PROJ WHERE EMP.ENO = ASG.ENO AND PNAME = "CAD/CAM" AND DUR 36 AND TITLE = "Programmer" If the graph is not connected the query is wrong Transformation rules are used to simplify queries p 1 p 1 false p 1 (p 1 p 2 ) p 1 p 1 false p 1 p 1 true p 1 Spring, 2006 Arturas Mazeika Page 7 Spring, 2006 Arturas Mazeika Page 8

3 Query Decomposition (Simplification Example 2/2) Consider the following query: SELECT TITLE WHERE EMP.ENAME = "J. Doe" OR (NOT(EMP.TITLE = "Programmer") AND (EMP.TITLE = "Elect. Eng." OR EMP.TITLE = "Elect. Eng.") AND NOT(EMP.TITLE = "Programmer")) Simplified query: SELECT TITLE WHERE EMP.ENAME = "J. Doe" Spring, 2006 Arturas Mazeika Page 9 Query Decomposition (Restructuring, Transformation Rules 2/5) Query Decomposition (Restructuring 1/5) Convert relational calculus to relational algebra. Finds an efficient expression. Example: Find the names of employees other than J. Doe who worked on the CAD/CAM project for either 1 or 2 years. SELECT ENAME, ASG, PROJ WHERE EMP.ENO = ASG.ENO AND ASG.PNO = PROJ.PNO AND ENAME "J. Doe" AND PNAME = "CAD/CAM" AND (DUR = 12 OR DUR = 24) A query tree is typically build for the transformation Relations are leaves (FROM clause) Attributes of the result is root (SELECT clause) Intermediate leaves should give a result from the leaves to the root Spring, 2006 Arturas Mazeika Page 10 Query Decomposition (Restructuring, Transformation Rules 3/5) Commutativity of binary operations R S = S R R S = S R R S = S R Associativity of binary operations R S) T = R (S T ) (R S) T = R (S T ) Idempotence of unary operations Π A (Π A (R)) = Π A (R) σ p1(a1) (σ p2(a2) (R)) = σ p1(a1) p2(a2) (R) Commuting selection with binary operations σ p(a) (R S) (σ p(a) (R)) S σ p(a1 )(R (A2,B 2 ) S) (σ p(a1 )(R) (A2,B 1 ) S σ p(a) (R T ) σ p(a) (R) σ p(a) (T ) A belongs to R and T Commuting projection with binary operations Π C (R S) Π A (R) Π B (S) Π C (R (A,B) S) Π A (R) (A,B) Π B (S) Π C (R S) Π C (R) Π C (S) C = A B, A A, B B Spring, 2006 Arturas Mazeika Page 11 Spring, 2006 Arturas Mazeika Page 12

4 Query Decomposition (Restructuring, Example 4/5) Query Decomposition (Restructuring, Example 5/5) Spring, 2006 Arturas Mazeika Page 13 Data Localization Spring, 2006 Arturas Mazeika Page 14 Data Localization (Example, Brute Force 1/3) Input: algebraic query on global conceptual schema Purpose: determine which fragments are involved Substitute global query with data manipulation queries on fragments Optimize the global query Assume EMP is fragmented into EMP1, EMP2, EMP3 as follows: EMP1=ENO E3 (EMP) EMP2= E3 <ENO E6 (EMP) EMP3=ENO> E6 (EMP) ASG fragmented into ASG1 and ASG2 as follows: ASG1=ENO E3 (ASG) ASG2=ENO> E3 (ASG) Replace EMP by (EMP1 EMP2 EMP3) and ASG by (ASG1 ASG2) in all queries Spring, 2006 Arturas Mazeika Page 15 Spring, 2006 Arturas Mazeika Page 16

5 Data Localization (Example, Provides Parallelism 2/3) Data Localization (Example, Eliminates Unnecessary Work 3/3) Spring, 2006 Arturas Mazeika Page 17 Data Localizations Issues Spring, 2006 Arturas Mazeika Page 18 Data Localizations Issues (Reduction of HF with Selection 1/4) Consider relation R with horizontal fragmentation F = {R 1, R 2,..., R k }, where R i = σ pi (R) Rule can be formalized by the following: Reduction of horizontal fragmentation (HF) Reduction with selection Reduction with join Reduction of vertical fragmentation (VF) Find empty relations σ pj (R i ) = p i (x) p j (x) = false, x R i Beneficial when fragmentation predicate is inconsistent with the query selection predicate (returns empty relations) Example: SELECT * WHERE ENO="E5" Spring, 2006 Arturas Mazeika Page 19 Spring, 2006 Arturas Mazeika Page 20

6 Data Localizations Issues (Reduction of HF with Join 2/4) Data Localizations Issues (Reduction of HF with Join 3/4) Possible if fragmentation is done on the join attribute Distribute join over union (R 1 R 2 ) S (R 1 S) (R 2 S) Rule can be formalized by the following. Given R i = σ pi (R) and R j = σ pj (R), j = 1, 2,..., k R i R j = p i (x) p j (x) = false, x R j R i pi,p 1 pi,p 2 pi,p 3 Fragmentation: EMP1=ENO E3 (EMP) EMP2= E3 <ENO E6 (EMP) EMP3=ENO> E6 (EMP) ASG1=ENO E3 (ASG) ASG2=ENO> E3 (ASG) Query: SELECT *, ASG WHERE EMP.ENO=ASG.ENO R 1 R 2 R 3 R i R 1 R i R 2 R i R 3 Spring, 2006 Arturas Mazeika Page 21 Spring, 2006 Arturas Mazeika Page 22 Data Localizations Issues (Derived Horizontal Fragmentation 4/4) Data Localizations Issues (Reduction of VF) Find empty relations Assume a good fragmentation of EMP is EMP1 = σ TITLE= Prgrammer (EMP) EMP2 = σ TITLE Prgrammer (EMP) To achieve efficient joins one can also fragment ASG: ASG1= ASG < ENO EMP1 ASG2= ASG < ENO EMP2 Let R be fragmented into R 1, R 2,..., R k, R i = Π Ai (R), A i A. Then Π D (R i ) is empty iff D is not in A i. For example EMP 1 = Π ENO,ENAME (EMP ) EMP 2 = Π ENO,T IT LE (EMP ) Query: SELECT ENAME Spring, 2006 Arturas Mazeika Page 23 Spring, 2006 Arturas Mazeika Page 24

7 Conclusion Query decomposition and data localization maps calculus query into algebra operations and applys data distribution information to the algebra operations Query decomposition consists of normalization, analysis, simplification, and restructuring Data localization reduces horizontal fragmentation with join and selection, and vertical fragmentation with joins, and aims to find empty relations Spring, 2006 Arturas Mazeika Page 25

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

Query Processing. high level user query. low level data manipulation. query processor. commands

Query Processing. high level user query. low level data manipulation. query processor. commands Query Processing high level user query query processor low level data manipulation commands 1 Selecting Alternatives SELECT ENAME FROM EMP,ASG WHERE EMP.ENO = ASG.ENO AND DUR > 37 Strategy A ΠENAME(σDUR>37

More information

Introduction Background Distributed DBMS Architecture Distributed Database Design Semantic Data Control Distributed Query Processing

Introduction Background Distributed DBMS Architecture Distributed Database Design Semantic Data Control Distributed Query Processing Outline Introduction Background Distributed DBMS Architecture Distributed Database Design Semantic Data Control Distributed Query Processing Query Processing Methodology Distributed Query Optimization

More information

Introduction Background Distributed DBMS Architecture Distributed Database Design Semantic Data Control Distributed Query Processing

Introduction Background Distributed DBMS Architecture Distributed Database Design Semantic Data Control Distributed Query Processing Outline Introduction Background Distributed DBMS Architecture Distributed Database Design Semantic Data Control Distributed Query Processing Query Processing Methodology Distributed Query Optimization

More information

CS54200: Distributed. Introduction

CS54200: Distributed. Introduction CS54200: Distributed Database Systems Query Processing 9 March 2009 Prof. Chris Clifton Query Processing Introduction Converting user commands from the query language (SQL) to low level data manipulation

More information

Optimization of Distributed Queries

Optimization of Distributed Queries Query Optimization Optimization of Distributed Queries Issues in Query Optimization Joins and Semijoins Query Optimization Algorithms Centralized query optimization: Minimize the cots function Find (the

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

Outline. Distributed DBMS 1998 M. Tamer Özsu & Patrick Valduriez

Outline. Distributed DBMS 1998 M. Tamer Özsu & Patrick Valduriez Outline Introduction Background Distributed DBMS Architecture Distributed Database Design Semantic Data Control View Management Data Security Semantic Integrity Control Distributed Query Processing Distributed

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

Distributed Databases Systems

Distributed Databases Systems Distributed Databases Systems Lecture No. 05 Query Processing Naeem Ahmed Email: naeemmahoto@gmail.com Department of Software Engineering Mehran Univeristy of Engineering and Technology Jamshoro Outline

More information

Distributed caching for multiple databases

Distributed caching for multiple databases Distributed caching for multiple databases K. V. Santhilata, Post Graduate Research Student, Department of Informatics, School of Natural and Mathematical Sciences, King's College London, London, U.K 1

More information

Mobile and Heterogeneous databases Distributed Database System Query Processing. A.R. Hurson Computer Science Missouri Science & Technology

Mobile and Heterogeneous databases Distributed Database System Query Processing. A.R. Hurson Computer Science Missouri Science & Technology Mobile and Heterogeneous databases Distributed Database System Query Processing A.R. Hurson Computer Science Missouri Science & Technology 1 Note, this unit will be covered in four lectures. In case you

More information

What is Data? Volatile vs. persistent data Our concern is primarily with persistent data

What is Data? Volatile vs. persistent data Our concern is primarily with persistent data What is? ANSI definition: ❶ A representation of facts, concepts, or instructions in a formalized manner suitable for communication, interpretation, or processing by humans or by automatic means. ❷ Any

More information

What is Data? ANSI definition: Volatile vs. persistent data. Data. Our concern is primarily with persistent data

What is Data? ANSI definition: Volatile vs. persistent data. Data. Our concern is primarily with persistent data What is Data? ANSI definition: Data ❶ A representation of facts, concepts, or instructions in a formalized manner suitable for communication, interpretation, or processing by humans or by automatic means.

More information

Chapter 4 Distributed Query Processing

Chapter 4 Distributed Query Processing Chapter 4 Distributed Query Processing Table of Contents Overview of Query Processing Query Decomposition and Data Localization Optimization of Distributed Queries Chapter4-1 1 1. Overview of Query Processing

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

Background. Chapter Overview of Relational DBMS Relational Database Concepts

Background. Chapter Overview of Relational DBMS Relational Database Concepts Chapter 2 Background As indicated in the previous chapter, there are two technological bases for distributed database technology: database management and computer networks. In this chapter, we provide

More information

Mobile and Heterogeneous databases

Mobile and Heterogeneous databases Mobile and Heterogeneous databases Heterogeneous Distributed Databases Query Processing A.R. Hurson Computer Science Missouri Science & Technology 1 Note, this unit will be covered in two lectures. In

More information

Distributed Databases

Distributed Databases Distributed Databases Chapter 1: Introduction Syllabus Data Independence and Distributed Data Processing Definition of Distributed databases Promises of Distributed Databases Technical Problems to be Studied

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 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

Integration of Transactional Systems

Integration of Transactional Systems Integration of Transactional Systems Distributed Query Processing Robert Wrembel Poznań University of Technology Institute of Computing Science Robert.Wrembel@cs.put.poznan.pl www.cs.put.poznan.pl/rwrembel

More information

Key Points. COSC 122 Computer Fluency. Databases. What is a database? Databases in the Real-World DBMS. Database System Approach

Key Points. COSC 122 Computer Fluency. Databases. What is a database? Databases in the Real-World DBMS. Database System Approach COSC 122 Computer Fluency Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Key Points 1) allow for easy storage and retrieval of large amounts of information. 2) Relational

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

COSC 122 Computer Fluency. Databases. Dr. Ramon Lawrence University of British Columbia Okanagan

COSC 122 Computer Fluency. Databases. Dr. Ramon Lawrence University of British Columbia Okanagan COSC 122 Computer Fluency Databases Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Key Points 1) Databases allow for easy storage and retrieval of large amounts of information.

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

Mahathma Gandhi University

Mahathma Gandhi University Mahathma Gandhi University BSc Computer science III Semester BCS 303 OBJECTIVE TYPE QUESTIONS Choose the correct or best alternative in the following: Q.1 In the relational modes, cardinality is termed

More information

Basant Group of Institution

Basant Group of Institution Basant Group of Institution Visual Basic 6.0 Objective Question Q.1 In the relational modes, cardinality is termed as: (A) Number of tuples. (B) Number of attributes. (C) Number of tables. (D) Number of

More information

Outline. Distributed DBMS Page 5. 1

Outline. Distributed DBMS Page 5. 1 Outline Introduction Background Distributed DBMS Architecture Distributed Database Design Fragmentation Data Location Semantic Data Control Distributed Query Processing Distributed Transaction Management

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

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

Outline. File Systems. Page 1

Outline. File Systems. Page 1 Outline Introduction What is a distributed DBMS Problems Current state-of-affairs Background Distributed DBMS Architecture Distributed Database Design Semantic Data Control Distributed Query Processing

More information

Overview of Data Management

Overview of Data Management Overview of Data Management School of Computer Science University of Waterloo Databases CS348 (University of Waterloo) Overview of Data Management 1 / 21 What is Data ANSI definition of data: 1 A representation

More information

Distributed Query Optimization: Use of mobile Agents Kodanda Kumar Melpadi

Distributed Query Optimization: Use of mobile Agents Kodanda Kumar Melpadi Distributed Query Optimization: Use of mobile Agents Kodanda Kumar Melpadi M.Tech (IT) GGS Indraprastha University Delhi mk_kumar_76@yahoo.com Abstract DDBS adds to the conventional centralized DBS some

More information

CS 2451 Database Systems: Relational Algebra & Relational Calculus

CS 2451 Database Systems: Relational Algebra & Relational Calculus CS 2451 Database Systems: Relational Algebra & Relational Calculus http://www.seas.gwu.edu/~bhagiweb/cs2541 Spring 2018 Instructor: Dr. Bhagi Narahari Relational Model Definitions A relation is a table

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

CS54200: Distributed Database Systems

CS54200: Distributed Database Systems CS54200: Distributed Database Systems Distributed Database Design 23 February, 2009 Prof. Chris Clifton Design Problem In the general setting: Making decisions about the placement of data and programs

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. Relational Query Languages

Relational Algebra. Relational Query Languages Relational Algebra π CS 186 Fall 2002, Lecture 7 R & G, Chapter 4 By relieving the brain of all unnecessary work, a good notation sets it free to concentrate on more advanced problems, and, in effect,

More information

Lecture 1: Conjunctive Queries

Lecture 1: Conjunctive Queries CS 784: Foundations of Data Management Spring 2017 Instructor: Paris Koutris Lecture 1: Conjunctive Queries A database schema R is a set of relations: we will typically use the symbols R, S, T,... to denote

More information

Relational Query Languages. Relational Algebra. Preliminaries. Formal Relational Query Languages. Relational Algebra: 5 Basic Operations

Relational Query Languages. Relational Algebra. Preliminaries. Formal Relational Query Languages. Relational Algebra: 5 Basic Operations Relational Algebra R & G, Chapter 4 By relieving the brain of all unnecessary work, a good notation sets it free to concentrate on more advanced problems, and, in effect, increases the mental power of

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

COSC 304 Introduction to Database Systems SQL DDL. Dr. Ramon Lawrence University of British Columbia Okanagan

COSC 304 Introduction to Database Systems SQL DDL. Dr. Ramon Lawrence University of British Columbia Okanagan COSC 304 Introduction to Database Systems SQL DDL Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca SQL Overview Structured Query Language or SQL is the standard query language

More information

Data about data is database Select correct option: True False Partially True None of the Above

Data about data is database Select correct option: True False Partially True None of the Above Within a table, each primary key value. is a minimal super key is always the first field in each table must be numeric must be unique Foreign Key is A field in a table that matches a key field in another

More information

COSC 304 Introduction to Database Systems SQL. Dr. Ramon Lawrence University of British Columbia Okanagan

COSC 304 Introduction to Database Systems SQL. Dr. Ramon Lawrence University of British Columbia Okanagan COSC 304 Introduction to Database Systems SQL Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca SQL Queries Querying with SQL is performed using a SELECT statement. The general

More information

Name: 1. (a) SQL is an example of a non-procedural query language.

Name: 1. (a) SQL is an example of a non-procedural query language. Name: 1 1. (20 marks) erminology: or each of the following statements, state whether it is true or false. If it is false, correct the statement without changing the underlined text. (Note: there might

More information

Outline. q Database integration & querying. q Peer-to-Peer data management q Stream data management q MapReduce-based distributed data management

Outline. q Database integration & querying. q Peer-to-Peer data management q Stream data management q MapReduce-based distributed data management Outline n Introduction & architectural issues n Data distribution n Distributed query processing n Distributed query optimization n Distributed transactions & concurrency control n Distributed reliability

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

Query optimization. Elena Baralis, Silvia Chiusano Politecnico di Torino. DBMS Architecture D B M G. Database Management Systems. Pag.

Query optimization. Elena Baralis, Silvia Chiusano Politecnico di Torino. DBMS Architecture D B M G. Database Management Systems. Pag. Database Management Systems DBMS Architecture SQL INSTRUCTION OPTIMIZER MANAGEMENT OF ACCESS METHODS CONCURRENCY CONTROL BUFFER MANAGER RELIABILITY MANAGEMENT Index Files Data Files System Catalog DATABASE

More information

SQL Queries. COSC 304 Introduction to Database Systems SQL. Example Relations. SQL and Relational Algebra. Example Relation Instances

SQL Queries. COSC 304 Introduction to Database Systems SQL. Example Relations. SQL and Relational Algebra. Example Relation Instances COSC 304 Introduction to Database Systems SQL Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca SQL Queries Querying with SQL is performed using a SELECT statement. The general

More information

SQL. SQL DDL Statements

SQL. SQL DDL Statements SQL Structured Query Language Declarative Specify the properties that should hold in the result, not how to obtain the result Complex queries have procedural elements International Standard SQL1 (1986)

More information

Improving Query Plans. CS157B Chris Pollett Mar. 21, 2005.

Improving Query Plans. CS157B Chris Pollett Mar. 21, 2005. Improving Query Plans CS157B Chris Pollett Mar. 21, 2005. Outline Parse Trees and Grammars Algebraic Laws for Improving Query Plans From Parse Trees To Logical Query Plans Syntax Analysis and Parse Trees

More information

QUIZ 1 REVIEW SESSION DATABASE MANAGEMENT SYSTEMS

QUIZ 1 REVIEW SESSION DATABASE MANAGEMENT SYSTEMS QUIZ 1 REVIEW SESSION DATABASE MANAGEMENT SYSTEMS SCHEMA DESIGN & RELATIONAL ALGEBRA A database schema is the skeleton structure that represents the logical view of the entire database Logical design of

More information

v Conceptual Design: ER model v Logical Design: ER to relational model v Querying and manipulating data

v Conceptual Design: ER model v Logical Design: ER to relational model v Querying and manipulating data Outline Conceptual Design: ER model Relational Algebra Calculus Yanlei Diao UMass Amherst Logical Design: ER to relational model Querying and manipulating data Practical language: SQL Declarative: say

More information

Cs712 Important Questions & Past Papers

Cs712 Important Questions & Past Papers Cs712 Distributed Database Q1. Differentiate Horizontal and vertical partitions? Vertical Fragmentation: Different subsets of attributes are stored at different places, like, Table EMP (eid, ename, edept,

More information

CSC Discrete Math I, Spring Sets

CSC Discrete Math I, Spring Sets CSC 125 - Discrete Math I, Spring 2017 Sets Sets A set is well-defined, unordered collection of objects The objects in a set are called the elements, or members, of the set A set is said to contain its

More information

Part V. Working with Information Systems. Marc H. Scholl (DBIS, Uni KN) Information Management Winter 2007/08 1

Part V. Working with Information Systems. Marc H. Scholl (DBIS, Uni KN) Information Management Winter 2007/08 1 Part V Working with Information Systems Marc H. Scholl (DBIS, Uni KN) Information Management Winter 2007/08 1 Outline of this part 1 Introduction to Database Languages Declarative Languages Option 1: Graphical

More information

CS 2451 Database Systems: SQL

CS 2451 Database Systems: SQL CS 2451 Database Systems: SQL http://www.seas.gwu.edu/~bhagiweb/cs2541 Spring 2018 Instructor: Dr. Bhagi Narahari Why Formal languages? Example: Optimization Is Based on Algebraic Equivalences Relational

More information

WEEK 3. EE562 Slides and Modified Slides from Database Management Systems, R.Ramakrishnan 1

WEEK 3. EE562 Slides and Modified Slides from Database Management Systems, R.Ramakrishnan 1 WEEK 3 EE562 Slides and Modified Slides from Database Management Systems, R.Ramakrishnan 1 Find names of parts supplied by supplier S1 (Book Notation) (using JOIN) SP JOIN P WHERE S# = S1 {PNAME} (SP WHERE

More information

CS 338 Nested SQL Queries

CS 338 Nested SQL Queries CS 338 Nested SQL Queries Bojana Bislimovska Spring 2017 Exercises 2. A database for an organization that shelters animals, and people can go and adopt animals that they shelter, has the following set

More information

DISTRIBUTED DATABASES CS561-SPRING 2012 WPI, MOHAMED ELTABAKH

DISTRIBUTED DATABASES CS561-SPRING 2012 WPI, MOHAMED ELTABAKH DISTRIBUTED DATABASES CS561-SPRING 2012 WPI, MOHAMED ELTABAKH 1 RECAP: PARALLEL DATABASES Three possible architectures Shared-memory Shared-disk Shared-nothing (the most common one) Parallel algorithms

More information

Introduction to Query Processing and Query Optimization Techniques. Copyright 2011 Ramez Elmasri and Shamkant Navathe

Introduction to Query Processing and Query Optimization Techniques. Copyright 2011 Ramez Elmasri and Shamkant Navathe Introduction to Query Processing and Query Optimization Techniques Outline Translating SQL Queries into Relational Algebra Algorithms for External Sorting Algorithms for SELECT and JOIN Operations Algorithms

More information

Why Relational Databases? Relational databases allow for the storage and analysis of large amounts of data.

Why Relational Databases? Relational databases allow for the storage and analysis of large amounts of data. DATA 301 Introduction to Data Analytics Relational Databases Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca DATA 301: Data Analytics (2) Why Relational Databases? Relational

More information

Algorithms for Query Processing and Optimization. 0. Introduction to Query Processing (1)

Algorithms for Query Processing and Optimization. 0. Introduction to Query Processing (1) Chapter 19 Algorithms for Query Processing and Optimization 0. Introduction to Query Processing (1) Query optimization: The process of choosing a suitable execution strategy for processing a query. Two

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

ECE 650 Systems Programming & Engineering. Spring 2018

ECE 650 Systems Programming & Engineering. Spring 2018 ECE 650 Systems Programming & Engineering Spring 2018 Relational Databases: Tuples, Tables, Schemas, Relational Algebra Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) Overview

More information

Query Optimization Overview

Query Optimization Overview Query Optimization Overview parsing, syntax checking semantic checking check existence of referenced relations and attributes disambiguation of overloaded operators check user authorization query rewrites

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

CS Bootcamp Boolean Logic Autumn 2015 A B A B T T T T F F F T F F F F T T T T F T F T T F F F

CS Bootcamp Boolean Logic Autumn 2015 A B A B T T T T F F F T F F F F T T T T F T F T T F F F 1 Logical Operations 1.1 And The and operator is a binary operator, denoted as, &,, or sometimes by just concatenating symbols, is true only if both parameters are true. A B A B F T F F F F The expression

More information

Relational Algebra. Mr. Prasad Sawant. MACS College. Mr.Prasad Sawant MACS College Pune

Relational Algebra. Mr. Prasad Sawant. MACS College. Mr.Prasad Sawant MACS College Pune Relational Algebra Mr. Prasad Sawant MACS College Pune MACS College Relational Algebra Tuple - a collection of attributes which describe some real world entity. Attribute - a real world role played by

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

CIS 330: Applied Database Systems. ER to Relational Relational Algebra

CIS 330: Applied Database Systems. ER to Relational Relational Algebra CIS 330: Applied Database Systems ER to Relational Relational Algebra 1 Logical DB Design: ER to Relational Entity sets to tables: ssn name Employees lot CREATE TABLE Employees (ssn CHAR(11), name CHAR(20),

More information

Conjunctive queries. Many computational problems are much easier for conjunctive queries than for general first-order queries.

Conjunctive queries. Many computational problems are much easier for conjunctive queries than for general first-order queries. Conjunctive queries Relational calculus queries without negation and disjunction. Conjunctive queries have a normal form: ( y 1 ) ( y n )(p 1 (x 1,..., x m, y 1,..., y n ) p k (x 1,..., x m, y 1,..., y

More information

Relational Algebra Homework 0 Due Tonight, 5pm! R & G, Chapter 4 Room Swap for Tuesday Discussion Section Homework 1 will be posted Tomorrow

Relational Algebra Homework 0 Due Tonight, 5pm! R & G, Chapter 4 Room Swap for Tuesday Discussion Section Homework 1 will be posted Tomorrow Relational Algebra R & G, Chapter 4 By relieving the brain of all unnecessary work, a good notation sets it free to concentrate on more advanced problems, and, in effect, increases the mental power of

More information

DATABASE MANAGEMENT SYSTEM SHORT QUESTIONS. QUESTION 1: What is database?

DATABASE MANAGEMENT SYSTEM SHORT QUESTIONS. QUESTION 1: What is database? DATABASE MANAGEMENT SYSTEM SHORT QUESTIONS Complete book short Answer Question.. QUESTION 1: What is database? A database is a logically coherent collection of data with some inherent meaning, representing

More information

Database Systems External Sorting and Query Optimization. A.R. Hurson 323 CS Building

Database Systems External Sorting and Query Optimization. A.R. Hurson 323 CS Building External Sorting and Query Optimization A.R. Hurson 323 CS Building External sorting When data to be sorted cannot fit into available main memory, external sorting algorithm must be applied. Naturally,

More information

CS 338 Basic SQL Part II

CS 338 Basic SQL Part II CS 338 Basic SQL Part II Bojana Bislimovska Spring 2017 Major research Outline Basic Retrieval Queries Exercises Ambiguous Attribute Names Major research Same name can be used for two or more attributes

More information

Query Processing and Optimization *

Query Processing and Optimization * OpenStax-CNX module: m28213 1 Query Processing and Optimization * Nguyen Kim Anh This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Query processing is

More information

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

Lyublena Antova, Christoph Koch, and Dan Olteanu Saarland University Database Group Saarbr ucken, Germany Presented By: Rana Daud Lyublena Antova, Christoph Koch, and Dan Olteanu Saarland University Database Group Saarbr ucken, Germany 2007 1 Presented By: Rana Daud Introduction Application Scenarios I-SQL World-Set Algebra Algebraic

More information

Relational Query Languages

Relational Query Languages 1 ITCS 3160 DATA BASE DESIGN AND IMPLEMENTATION JING YANG 2010 FALL Class 9: The Relational Algebra and Relational Calculus Relational Query Languages 2 Query languages: Allow manipulation and retrieval

More information

Semantic Errors in Database Queries

Semantic Errors in Database Queries Semantic Errors in Database Queries 1 Semantic Errors in Database Queries Stefan Brass TU Clausthal, Germany From April: University of Halle, Germany Semantic Errors in Database Queries 2 Classification

More information

Relational Query Languages: Relational Algebra. Juliana Freire

Relational Query Languages: Relational Algebra. Juliana Freire Relational Query Languages: Relational Algebra Relational Query Languages Query languages: Allow manipulation and retrieval of data from a database. Relational model supports simple, powerful QLs: Simple

More information

Chapter 3. Algorithms for Query Processing and Optimization

Chapter 3. Algorithms for Query Processing and Optimization Chapter 3 Algorithms for Query Processing and Optimization Chapter Outline 1. Introduction to Query Processing 2. Translating SQL Queries into Relational Algebra 3. Algorithms for External Sorting 4. Algorithms

More information

Databases - Relational Algebra. (GF Royle, N Spadaccini ) Databases - Relational Algebra 1 / 24

Databases - Relational Algebra. (GF Royle, N Spadaccini ) Databases - Relational Algebra 1 / 24 Databases - Relational Algebra (GF Royle, N Spadaccini 2006-2010) Databases - Relational Algebra 1 / 24 This lecture This lecture covers relational algebra which is the formal language underlying the manipulation

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

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

This lecture. Projection. Relational Algebra. Suppose we have a relation

This lecture. Projection. Relational Algebra. Suppose we have a relation This lecture Databases - Relational Algebra This lecture covers relational algebra which is the formal language underlying the manipulation of relations. We follow the notation from Chapter 4 of Ramakrishnan

More information

Review for Exam 1 CS474 (Norton)

Review for Exam 1 CS474 (Norton) Review for Exam 1 CS474 (Norton) What is a Database? Properties of a database Stores data to derive information Data in a database is, in general: Integrated Shared Persistent Uses of Databases The Integrated

More information

CSC 742 Database Management Systems

CSC 742 Database Management Systems CSC 742 Database Management Systems Topic #16: Query Optimization Spring 2002 CSC 742: DBMS by Dr. Peng Ning 1 Agenda Typical steps of query processing Two main techniques for query optimization Heuristics

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

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

Databases - 4. Other relational operations and DDL. How to write RA expressions for dummies

Databases - 4. Other relational operations and DDL. How to write RA expressions for dummies Databases - 4 Other relational operations and DDL How to write RA expressions for dummies Step 1: Identify the relations required and CP them together Step 2: Add required selections to make the CP Step

More information

CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Chapter p. 1/27

CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Chapter p. 1/27 CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Chapter 2.1-2.7 p. 1/27 CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer

More information

COSC 304 Introduction to Database Systems. Views and Security. Dr. Ramon Lawrence University of British Columbia Okanagan

COSC 304 Introduction to Database Systems. Views and Security. Dr. Ramon Lawrence University of British Columbia Okanagan COSC 304 Introduction to Database Systems Views and Security Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Views A view is a named query that is defined in the database.

More information

EECS 647: Introduction to Database Systems

EECS 647: Introduction to Database Systems EECS 647: Introduction to Database Systems π Instructor: Luke Huan Spring 2009 dministrative You should already have your PgSQL password. Login cycle2.eecs.ku.edu using your EECS ID and password. Type

More information

Basic operators: selection, projection, cross product, union, difference,

Basic operators: selection, projection, cross product, union, difference, CS145 Lecture Notes #6 Relational Algebra Steps in Building and Using a Database 1. Design schema 2. Create schema in DBMS 3. Load initial data 4. Repeat: execute queries and updates on the database Database

More information

CAS CS 460/660 Introduction to Database Systems. Relational Algebra 1.1

CAS CS 460/660 Introduction to Database Systems. Relational Algebra 1.1 CAS CS 460/660 Introduction to Database Systems Relational Algebra 1.1 Relational Query Languages Query languages: Allow manipulation and retrieval of data from a database. Relational model supports simple,

More information

Chapter 19 Query Optimization

Chapter 19 Query Optimization Chapter 19 Query Optimization It is an activity conducted by the query optimizer to select the best available strategy for executing the query. 1. Query Trees and Heuristics for Query Optimization - Apply

More information

Data Integration: Logic Query Languages

Data Integration: Logic Query Languages Data Integration: Logic Query Languages Jan Chomicki University at Buffalo Datalog Datalog A logic language Datalog programs consist of logical facts and rules Datalog is a subset of Prolog (no data structures)

More information

Relational Algebra. [R&G] Chapter 4, Part A CS4320 1

Relational Algebra. [R&G] Chapter 4, Part A CS4320 1 Relational Algebra [R&G] Chapter 4, Part A CS4320 1 Relational Query Languages Query languages: Allow manipulation and retrieval of data from a database. Relational model supports simple, powerful QLs:

More information