PMIT-6102 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.

Slides:



Advertisements
Similar presentations
Distributed DBMSPage 5. 1 © 1998 M. Tamer Özsu & Patrick Valduriez Outline Introduction Background Distributed DBMS Architecture  Distributed Database.
Advertisements

Distributed Database Management Systems Lecture 15.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 16 Relational Database Design Algorithms and Further Dependencies.
Distributed Database Systems
Outline  Introduction  Background  Distributed DBMS Architecture  Distributed Database Design  Semantic Data Control ➠ View Management ➠ Data Security.
Relational Model dww-database system.
The Relational Model Much of the material presented in these slides was developed by Dr. Ramon Lawrence at the University of Iowa.
Distributed DBMSPage 6. 1© 1998 M. Tamer Özsu & Patrick Valduriez Outline Introduction Background Distributed DBMS Architecture Distributed Database Design.
Distributed Query Processing –An Overview
Distributed DBMSPage © 1998 M. Tamer Özsu & Patrick Valduriez Outline Introduction Background Distributed DBMS Architecture Distributed Database.
Distributed DBMS © M. T. Özsu & P. Valduriez Ch.7/1 Outline Introduction Background Distributed Database Design Database Integration Semantic Data Control.
PMIT-6102 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
Relational Model The main reference of this presentation is the textbook and PPT from : Elmasri & Navathe, Fundamental of Database Systems, 4 th edition,
Enterprise Systems Distributed databases and systems - DT
Distributed Databases John Ortiz. Lecture 24Distributed Databases2  Distributed Database (DDB) is a collection of interrelated databases interconnected.
Distributed Database Systems Dr. Mohamed Osman Hegazi.
Advanced Database Systems September 2013 Dr. Fatemeh Ahmadi-Abkenari 1.
1 Distributed Databases Chapter Two Types of Applications that Access Distributed Databases The application accesses data at the level of SQL statements.
Institut für Scientific Computing – Universität WienP.Brezany Fragmentation Univ.-Prof. Dr. Peter Brezany Institut für Scientific Computing Universität.
1 Distributed Databases Review CS347 June 6, 2001.
Distributed DBMSPage 5. 1 © 1998 M. Tamer Özsu & Patrick Valduriez Outline Introduction Background Distributed DBMS Architecture  Distributed Database.
Distributed DBMS © M. T. Özsu & P. Valduriez Ch.7/1 Outline Introduction Background Distributed Database Design Database Integration Semantic Data Control.
Ch 6: ER to Relational Mapping
Chapter 10 Functional Dependencies and Normalization for Relational Databases.
CS 405G: Introduction to Database Systems 16. Functional Dependency.
DISTRIBUTED DATABASES IN ADBMS Shilpa Seth
DISTRIBUTED DATABASE DESIGN
PMIT-6102 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
PMIT-6102 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
Normalization Ioan Despi 2 The basic objective of logical modeling: to develop a “good” description of the data, its relationships and its constraints.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Chapter 11 Relational Database Design Algorithms and Further Dependencies.
PMIT-6102 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
DDBMS Distributed Database Management Systems Fragmentation
Distributed Database. Introduction A major motivation behind the development of database systems is the desire to integrate the operational data of an.
PMIT-6101 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
PMIT-6102 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
Design Process - Where are we?
PMIT-6101 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
1 ICS 214B: Transaction Processing and Distributed Data Management Lecture 9: Fragmentation and Distributed Query Processing Professor Chen Li.
Normalization.
Chapter 7 Functional Dependencies Copyright © 2004 Pearson Education, Inc.
1 Distributed Databases architecture, fragmentation, allocation Lecture 1.
 Distributed Database Concepts  Parallel Vs Distributed Technology  Advantages  Additional Functions  Distribution Database Design  Data Fragmentation.
Chapter 17: Additional Slides February 6, Outline Physical Data Management  Fragments  Distributed Query Processing  Transactions Logical Data.
Ch 7: Normalization-Part 1
Distributed Database Design Bayu Adhi Tama, MTI Fasilkom-Unsri Adapted from Connolly, et al., Database Systems 4 th Edition, Pearson Education Limited,
Relational Database Design Algorithms and Further Dependencies.
PMIT-6102 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
Distributed DBMS© 2001 M. Tamer Özsu & Patrick Valduriez Page 1.1 Outline n Introduction Background Distributed DBMS Architecture Distributed Database.
PMIT-6102 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
CMS Advanced Database and Client-Server Applications Distributed Databases slides by Martin Beer and Paul Crowther Connolly and Begg Chapter 22.
1 Chapter 22 Distributed DBMSs - Concepts and Design Simplified Transparencies © Pearson Education Limited 1995, 2005.
CS742 – Distributed & Parallel DBMSPage 2. 1M. Tamer Özsu Outline Introduction & architectural issues  Data distribution  Fragmentation  Data Allocation.
CS742 – Distributed & Parallel DBMSPage 3. 1M. Tamer Özsu Outline Introduction & architectural issues Data distribution  Distributed query processing.
Distributed Database Management Systems
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER
ER Modeling Exercise Consider a set of courses, both at grad and undergrad level. Each course has at least one section. Each section is taught by only.
Module 5: Overview of Normalization
Outline Introduction Background Distributed DBMS Architecture
Outline Introduction Background Distributed DBMS Architecture
Distributed Database Management Systems
Vertical Fragmentation
Distributed Database Management Systems
Distributed Database Management Systems
Distributed Database Management Systems
Distributed Database Management Systems
Distributed Database Design
Distributed Database Management Systems
Outline Introduction Background Distributed DBMS Architecture
Chapter 7a: Overview of Database Design -- Normalization
Presentation transcript:

PMIT-6102 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University

Lecture 05 Distributed Database Design

Outline Distributed Database Design  Distributed Design Issues o Fragmentation o Data Allocation Slide 3

Degree of Fragmentation Finding the suitable level of partitioning within this range To fragment to the level of individuals tuples or To fragment to the level of individuals attributes Relations (Not to fragment at all) finite number of alternatives

Correctness of Fragmentation Completeness  Decomposition of relation R into fragments R 1, R 2,..., R n is complete if and only if each data item in R can also be found in some R i  This property, which is identical to the lossless decomposition property of normalization  it ensures that the data in a global relation are mapped into fragments without any loss Slide 5

Correctness of Fragmentation Reconstruction  If relation R is decomposed into fragments F R ={R 1, R 2,..., R n }, then there should exist some relational operator ∇ such that R = ∇ Ri,  The reconstructability of the relation from its fragments ensures that constraints defined on the data in the form of dependencies are preserved. Slide 6

Correctness of Fragmentation Disjointness  If relation R is horizontally decomposed into fragments F R ={R 1, R 2,..., R n }, and data item d j is in R j, then d j should not be in any other fragment R k (k ≠ j ).  This criterion ensures that the horizontal fragments are disjoint.  If relation R is vertically decomposed, its primary key attributes are typically repeated in all its fragments (for reconstruction).  Therefore, in case of vertical partitioning, disjointness is defined only on the non-primary key attributes of a relation. Slide 7

Allocation Alternatives Non-replicated database  partitioned : each fragment resides at only one site Replicated database  fully replicated : each fragment at each site  partially replicated : each fragment at some of the sites Slide 8

Comparison of Replication Alternatives Slide 9

Information Requirements The information needed for distribution design can be divided into four categories:  Database information  Application information  Communication network information  Computer system information Slide 10

Fragmentation Horizontal Fragmentation (HF) Vertical Fragmentation (VF) Hybrid Fragmentation (HF) Slide 11

Horizontal Fragmentation (HF) Horizontal fragmentation partitions a relation along its tuples.  each fragment has a subset of the tuples of the relation. There are two versions of horizontal partitioning:  Primary horizontal fragmentation  Derived horizontal fragmentation Primary horizontal fragmentation of a relation is performed  using predicates that are defined on that relation. Derived horizontal fragmentation is the partitioning of a relation  results from predicates being defined on another relation. Slide 12

Information Requirements of HF Database Information  how the database relations are connected to one another, especially with joins.  In the relational model, these relationships are also depicted as relations.  cardinality of each relation: card(R) TITLE, SAL SKILL ENO, ENAME, TITLEPNO, PNAME, BUDGET, LOC ENO, PNO, RESP, DUR EMP PROJ ASG L1L1 L2L2 L3L3 Expression of Relationships Among Relations Using Links Slide 13

Information Requirements of HF 14 The direction of the link shows a one to many relationship. For each title there are multiple employees with their title. Thus there is a link between PAY and EMP relations.

Application Information  simple predicates : Given R[A 1, A 2, …, A n ], a simple predicate p j is p j : A i θValue where θ  {=,,≥,≠}, Value  D i and D i is the domain of A i. For relation R we define Pr = {p 1, p 2, …,p m } Example : PNAME = "Maintenance" BUDGET ≤ Information Requirements of HF Slide 15

Application Information  minterm predicates : Given R and Pr = {p 1, p 2, …,p m } define M = {m 1,m 2,…,m r } as M = { m i | m i =  p j  Pr  p j * }, 1≤j≤m, 1≤i≤z where p j * = p j or p j * = ¬(p j ). Information Requirements of HF Example m 1 : PNAME="Maintenance"  BUDGET≤ m 2 : NOT(PNAME="Maintenance")  BUDGET≤ m 3 : PNAME= "Maintenance"  NOT(BUDGET≤200000) m 4 : NOT(PNAME="Maintenance")  NOT(BUDGET≤200000) Slide 16

Application Information In terms of quantitative information about user applications, we need to have two sets of data.  minterm selectivities: sel(m i ) o The number of tuples of the relation that would be accessed by a user query which is specified according to a given minterm predicate m i.  access frequencies: acc(q i ) o The frequency with which a user application qi accesses data. o Access frequency for a minterm predicate can also be defined. Information Requirements of HF Slide 17

Primary Horizontal Fragmentation Definition : A primary horizontal fragmentation is defined by a selection operation on the owner relations of a database schema. Therefore, given relation R, its horizontal fragments are given by R i =  F i (R), 1 ≤ i ≤ w where F i is a selection formula used to obtain fragment R i. If F i is in conjunctive normal form, it is a minterm predicate (m i ).  A horizontal fragment R i of relation R consists of all the tuples of R which satisfy a minterm predicate m i.  Given a set of minterm predicates M, there are as many horizontal fragments of relation R as there are minterm predicates.  Set of horizontal fragments also referred to as minterm fragments. Slide 18

Primary Horizontal Fragmentation PROJ1 =  LOC=“Montreal” (PROJ) PROJ2 =  LOC=“New York” (PROJ) PROJ3 =  LOC=“Paris” (PROJ) Slide 19 Primary Horizontal Fragmentation of Relation PROJ

PHF – Algorithm Given:A relation R, the set of simple predicates Pr Output:The set of fragments of R = {R 1, R 2,…,R w } which obey the fragmentation rules. Preliminaries :  Pr should be complete  Pr should be minimal Slide 20

Completeness of Simple Predicates A set of simple predicates Pr is said to be complete if and only if there is an equal probability of access by every application to any tuple belonging to any minterm fragment that is defined according to Pr. Example :  Assume PROJ[PNO,PNAME,BUDGET,LOC] has two applications defined on it.  Find the budgets of projects at each location.(1)  Find projects with budgets less than $ (2) Slide 21

Completeness of Simple Predicates According to (1), Pr={LOC=“Montreal”,LOC=“New York”,LOC=“Paris”} which is not complete with respect to (2). Modify Pr ={LOC=“Montreal”,LOC=“New York”,LOC=“Paris”, BUDGET≤200000,BUDGET>200000} which is complete. Slide 22

Minimality of Simple Predicates If a predicate influences how fragmentation is performed, (i.e., causes a fragment f to be further fragmented into, say, f i and f j ) then there should be at least one application that accesses f i and f j differently. In other words, the simple predicate should be relevant in determining a fragmentation. If all the predicates of a set Pr are relevant, then Pr is minimal. P i is relevant if and only if  acc(m i ) the access frequency of a minterm m i. Slide 23

Minimality of Simple Predicates Example : Pr ={LOC=“Montreal”,LOC=“New York”, LOC=“Paris”, BUDGET≤200000,BUDGET>200000} is minimal (in addition to being complete). However, if we add PNAME = “Instrumentation” then Pr is not minimal. Slide 24

COM_MIN Algorithm Given:a relation R and a set of simple predicates Pr Output:a complete and minimal set of simple predicates Pr' for Pr Rule 1:a relation or fragment is partitioned into at least two parts which are accessed differently by at least one application. Slide 25

COM_MIN Algorithm  Initialization :  find a p i  Pr such that p i partitions R according to Rule 1  set Pr' = p i ; Pr  Pr – {p i } ; F  {f i }  Iteratively add predicates to Pr' until it is complete  find a p j  Pr such that p j partitions some f k defined according to minterm predicate over Pr' according to Rule 1  set Pr' = Pr'  {p j }; Pr  Pr – {p j }; F  F  {f j }  if  p k  Pr' which is nonrelevant then Pr'  Pr' – {p k } F  F – {f k } Slide 26

PHORIZONTAL Algorithm Makes use of COM_MIN to perform fragmentation. Input:a relation R and a set of simple predicates Pr Output:a set of minterm predicates M according to which relation R is to be fragmented  Pr'  COM_MIN (R,Pr)  determine the set M of minterm predicates  determine the set I of implications among p i  Pr‘  Iteratively eliminate the contradictory minterms from M  M  M-m i Slide 27

PHF – Example Two candidate relations : PAY and PROJ. Fragmentation of relation PAY  Application: Check the salary info and determine raise.  Employee records kept at two sites  application run at two sites  Simple predicates p 1 : SAL ≤ p 2 : SAL > Pr = {p 1,p 2 } which is complete and minimal Pr'=Pr  Minterm predicates m 1 : (SAL ≤ 30000) m 2 : NOT(SAL ≤ 30000)  (SAL > 30000) Slide 28

PHF – Example TITLE Mech. Eng. Programmer SAL PAY 1 PAY 2 TITLE Elect. Eng. Syst. Anal. SAL Slide 29

PHF – Example Fragmentation of relation PROJ  Applications: o Find the name and budget of projects given their location. – Issued at three sites o Access project information according to budget – one site accesses ≤ other accesses >  Simple predicates  For application (1) p 1 : LOC = “Montreal” p 2 : LOC = “New York” p 3 : LOC = “Paris”  For application (2) p 4 : BUDGET ≤ p 5 : BUDGET >  Pr = Pr' = {p 1,p 2,p 3,p 4,p 5 } Slide 30

Fragmentation of relation PROJ continued  Minterm fragments left after elimination m 1 : (LOC = “Montreal”)  (BUDGET ≤ ) m 2 : (LOC = “Montreal”)  (BUDGET > ) m 3 : (LOC = “New York”)  (BUDGET ≤ ) m 4 : (LOC = “New York”)  (BUDGET > ) m 5 : (LOC = “Paris”)  (BUDGET ≤ ) m 6 : (LOC = “Paris”)  (BUDGET > ) PHF – Example Slide 31

PHF – Example PROJ 1 PNOPNAMEBUDGETLOC PNOPNAMEBUDGETLOC P1Instrumentation150000Montreal P2 Database Develop New York PROJ 3 PROJ 4 PROJ 6 PNOPNAMEBUDGETLOC P3CAD/CAM250000New York PNOPNAMEBUDGETLOC MaintenanceP Paris The result of the primary horizontal fragmentation of PROJ forms six fragments FPROJ = {PROJ1, PROJ2, PROJ3, PROJ4, PROJ5, PROJ} according to the minterm predicates M. Since fragments PROJ 2, and PROJ 5 are empty, they are not depicted in Figure Slide 32

Completeness  Since Pr' is complete and minimal, the selection predicates are complete Reconstruction  If relation R is fragmented into F R = {R 1,R 2,…,R r } R =   R i  F R R i Disjointness  Minterm predicates that form the basis of fragmentation should be mutually exclusive. PHF – Correctness Slide 33

Solved Problem Slide 34

Solved Problem Slide 35

Solved Problem Slide 36

Solved Problem Slide 37

Solved Problem Slide 38

Thank You Slide 39