SlideShare ist ein Scribd-Unternehmen logo
1 von 38
Rushdi Shams, Dept of CSE, KUET 1
Database SystemsDatabase Systems
Distributed Database SystemsDistributed Database Systems
Version 1.0Version 1.0
2Rushdi Shams, Dept of CSE, KUET
IntroductionIntroduction
 A distributed database systems is a databaseA distributed database systems is a database
systems which issystems which is fragmented or replicatedfragmented or replicated onon
machinesmachines
 These machines are usually located on differentThese machines are usually located on different
geographical location of an organizationgeographical location of an organization
 FragmentationFragmentation is made of some subsets of theis made of some subsets of the
original databaseoriginal database
 ReplicationReplication refers to the copy of the wholerefers to the copy of the whole
database or part of the original databasedatabase or part of the original database
3Rushdi Shams, Dept of CSE, KUET
Idea of Distributed DatabaseIdea of Distributed Database
SystemsSystems
 4 sites connected by a communication network4 sites connected by a communication network
 Sites 1, 2 and 4 run a single databaseSites 1, 2 and 4 run a single database
 Site 3 has no database. It accesses the other 3 sites for dataSite 3 has no database. It accesses the other 3 sites for data
manipulationmanipulation
4Rushdi Shams, Dept of CSE, KUET
FragmentationFragmentation
 There are 2 basic types of fragmentationsThere are 2 basic types of fragmentations
1.1. Horizontal fragmentationHorizontal fragmentation
2.2. Vertical fragmentationVertical fragmentation
5Rushdi Shams, Dept of CSE, KUET
Horizontal FragmentationHorizontal Fragmentation
 Horizontal fragmentation is the subset of rows of a single tableHorizontal fragmentation is the subset of rows of a single table
 Say, we need to manipulate a table that contains informationSay, we need to manipulate a table that contains information
about British Peopleabout British People
 We have 3 sitesWe have 3 sites
 Edinburgh site will have those rows of the table that haveEdinburgh site will have those rows of the table that have
information about Scottish peopleinformation about Scottish people
 Cardiff site will have those rows of the table that haveCardiff site will have those rows of the table that have
information about Welsh peopleinformation about Welsh people
 London site will have those rows of the table that haveLondon site will have those rows of the table that have
information about English peopleinformation about English people
 The 3 sites are working as distributed processors. So, togetherThe 3 sites are working as distributed processors. So, together
they represent information about all the British peoplethey represent information about all the British people
6Rushdi Shams, Dept of CSE, KUET
Horizontal FragmentationHorizontal Fragmentation
(continued)(continued)
7Rushdi Shams, Dept of CSE, KUET
Horizontal FragmentationHorizontal Fragmentation
(continued)(continued)
 Horizontal fragmentation is done by restricting theHorizontal fragmentation is done by restricting the
table with WHERE condition in query languages!!table with WHERE condition in query languages!!
 In the previous example, you can fragment the tableIn the previous example, you can fragment the table
likelike
1.1. WHERE LOCATION=EDINBURGHWHERE LOCATION=EDINBURGH
2.2. WHERE LOCATION=CARDIFFWHERE LOCATION=CARDIFF
3.3. WHERE LOCATION=LONDONWHERE LOCATION=LONDON
 To find the original table, you just union all theTo find the original table, you just union all the
fragmented tables!fragmented tables!
 Easy, huh?Easy, huh?
8Rushdi Shams, Dept of CSE, KUET
Horizontal FragmentationHorizontal Fragmentation
(continued)(continued)
 Consider the horizontal fragmentation of relation Proj accordingConsider the horizontal fragmentation of relation Proj according
to its BUDGET value.to its BUDGET value.
 Relations with BUDGET > 200000 go into Proj1 and the restRelations with BUDGET > 200000 go into Proj1 and the rest
goes into Proj2.goes into Proj2.
Proj1=Proj1= σσ(budget>200000)(budget>200000) ProjProj
Proj2=Proj2= σσ(budget(budget ≤≤ 200000)200000) ProjProj
9Rushdi Shams, Dept of CSE, KUET
Vertical FragmentationVertical Fragmentation
 Vertical fragmentation is a method ofVertical fragmentation is a method of
fragmenting a table byfragmenting a table by projectingprojecting columns of acolumns of a
tabletable with primary keywith primary key
 To find out the original table, you just need toTo find out the original table, you just need to
join the newly created tables according to thejoin the newly created tables according to the
primary key!primary key!
 Again, it’s easy, huh?Again, it’s easy, huh?
10Rushdi Shams, Dept of CSE, KUET
Vertical Fragmentation (continued)Vertical Fragmentation (continued)
 The table proj is fragmented into 2 tables proj 1 and proj 2The table proj is fragmented into 2 tables proj 1 and proj 2
 Both tables have the primary key- PNO. Keep an eye on it,Both tables have the primary key- PNO. Keep an eye on it,
fellows!fellows!
 If you join them according to the PNO of both table, what doIf you join them according to the PNO of both table, what do
you get? Answer- Proj table again!!you get? Answer- Proj table again!! 
11Rushdi Shams, Dept of CSE, KUET
Both Fragmentation at A GlanceBoth Fragmentation at A Glance
12Rushdi Shams, Dept of CSE, KUET
Why FragmentationWhy Fragmentation
 Usage:Usage:
Applications work with views rather than entireApplications work with views rather than entire
relationsrelations
 Efficiency:Efficiency:
Data is stored close to where it is mostData is stored close to where it is most
frequently usedfrequently used
Data that is not needed by local applications areData that is not needed by local applications are
not storednot stored
13Rushdi Shams, Dept of CSE, KUET
Why Fragmentation (continued)Why Fragmentation (continued)
 Parallelism:Parallelism:
Transaction can be divided into severalTransaction can be divided into several
subqueries that operate on fragmentssubqueries that operate on fragments
 Security:Security:
Data that is not needed by local applications areData that is not needed by local applications are
not stored and so is not vulnerable tonot stored and so is not vulnerable to
unauthorized usersunauthorized users
14Rushdi Shams, Dept of CSE, KUET
Disadvantage of FragmentationDisadvantage of Fragmentation
 Performance:Performance:
If queries involve to fetch data from tables thatIf queries involve to fetch data from tables that
are on different sites, it requires processing timeare on different sites, it requires processing time
15Rushdi Shams, Dept of CSE, KUET
Correctness of FragmentationCorrectness of Fragmentation
 Well, when I first hear correctness- I wasWell, when I first hear correctness- I was
boomed! Actually it means nothing rather thanboomed! Actually it means nothing rather than
some properties of fragmentationsome properties of fragmentation
 So, don’t worry about that. It is calledSo, don’t worry about that. It is called
CORRECTNESS in database jargon, so, don’tCORRECTNESS in database jargon, so, don’t
call it property, a’right?call it property, a’right?
16Rushdi Shams, Dept of CSE, KUET
Correctness of FragmentationCorrectness of Fragmentation
(continued)(continued)
 There are 3 correctness rulesThere are 3 correctness rules
1.1. CompletenessCompleteness
2.2. ReconstructionReconstruction
3.3. DisjointnessDisjointness
17Rushdi Shams, Dept of CSE, KUET
Correctness of FragmentationCorrectness of Fragmentation
(continued)(continued)
1.1. Completeness:Completeness:
If relation R is fragmented into fragments R1,If relation R is fragmented into fragments R1,
R2, R3… Rn, each data item that can be foundR2, R3… Rn, each data item that can be found
in R must appear in at least one fragmentin R must appear in at least one fragment
So, why don’t you say this way- no data itemSo, why don’t you say this way- no data item
of original relation R gets missing!!of original relation R gets missing!!
Man, I hate theoretical definitions!Man, I hate theoretical definitions!
18Rushdi Shams, Dept of CSE, KUET
Correctness of FragmentationCorrectness of Fragmentation
(continued)(continued)
2.2. Reconstruction:Reconstruction:
There must be a relational operation by whichThere must be a relational operation by which
we can reconstruct R from the fragmentswe can reconstruct R from the fragments
We already saw that by Unioning (We already saw that by Unioning ())
horizontal fragments we can have original Rhorizontal fragments we can have original R
and by joining vertical fragments, we canand by joining vertical fragments, we can
achieve R!achieve R!
19Rushdi Shams, Dept of CSE, KUET
Correctness of FragmentationCorrectness of Fragmentation
(continued)(continued)
3.3. Disjointness:Disjointness:
If data item Di appears in fragment Ri, then itIf data item Di appears in fragment Ri, then it
should not appear in any other fragmentshould not appear in any other fragment
Exception of this is in vertical fragmentation,Exception of this is in vertical fragmentation,
where primary key attributes must be repeatedwhere primary key attributes must be repeated
to allow reconstructionto allow reconstruction
20Rushdi Shams, Dept of CSE, KUET
TransparencyTransparency
 You have distributed one table to 3 sites justYou have distributed one table to 3 sites just
now. The user, when he requires data, shouldnow. The user, when he requires data, should
not know this!not know this!
 This process of hiding the fragmentation andThis process of hiding the fragmentation and
distribution the fragments to different sites isdistribution the fragments to different sites is
called transparencycalled transparency
21Rushdi Shams, Dept of CSE, KUET
Types of TransparencyTypes of Transparency
1.1. Location transparencyLocation transparency
User should not be aware of the location of the data.User should not be aware of the location of the data.
This simplifies the user interface and user programsThis simplifies the user interface and user programs
that are used to query the tablethat are used to query the table
2.2. Fragmentation transparencyFragmentation transparency
User must not know that the data have beenUser must not know that the data have been
fragmented and how the data have been fragmentedfragmented and how the data have been fragmented
3.3. Replication transparencyReplication transparency
Replication is necessary sometimes as this makes theReplication is necessary sometimes as this makes the
processing faster. But user should not be aware of it.processing faster. But user should not be aware of it.
22Rushdi Shams, Dept of CSE, KUET
Need of TransparencyNeed of Transparency
 A manager wishing to find the total number of
employees at the Scottish subsidiary need not be
aware that he is querying a remote database
 A manager running a query in London should not need
to be aware that to produce the aggregate salary bill
for the company all three sites – London, Cardiff and
Edinburgh – need to be interrogated
 When periodically data need to be updated, the user
need not directly know that three sites are effectively
updated
23Rushdi Shams, Dept of CSE, KUET
Foundation RuleFoundation Rule
 The foundation rule of distributed databaseThe foundation rule of distributed database
systems states-systems states-
““Although the database systems are distributedAlthough the database systems are distributed
to several sites, it must look like a centralisedto several sites, it must look like a centralised
database systems to the user”database systems to the user”
 Then how do you make this foundation ruleThen how do you make this foundation rule
true?true?
 Answer- by applying 3 types of transparenciesAnswer- by applying 3 types of transparencies 
24Rushdi Shams, Dept of CSE, KUET
Advantages of Distributed DatabaseAdvantages of Distributed Database
SystemsSystems
 Reflects organizational structureReflects organizational structure — database— database
fragments are located in the departments theyfragments are located in the departments they
relate to.relate to.
 Local autonomyLocal autonomy — a department can control— a department can control
the data about them (as they are the onesthe data about them (as they are the ones
familiar with it.)familiar with it.)
 Improved availabilityImproved availability — a fault in one— a fault in one
database system will only affect one fragment,database system will only affect one fragment,
instead of the entire databaseinstead of the entire database
25Rushdi Shams, Dept of CSE, KUET
Advantages of Distributed DatabaseAdvantages of Distributed Database
Systems (continued)Systems (continued)
 Improved performanceImproved performance — data is located near the site— data is located near the site
of greatest demand, and the database systemsof greatest demand, and the database systems
themselves are parallelized, allowing load on thethemselves are parallelized, allowing load on the
databases to be balanced among servers. (A high loaddatabases to be balanced among servers. (A high load
on one module of the database won't affect otheron one module of the database won't affect other
modules of the database in a distributed database.)modules of the database in a distributed database.)
 EconomicsEconomics — it costs less to create a network of— it costs less to create a network of
smaller computers with the power of a single largesmaller computers with the power of a single large
computer.computer.
 ModularityModularity — systems can be modified, added and— systems can be modified, added and
removed from the distributed database withoutremoved from the distributed database without
affecting other modules (systems).affecting other modules (systems).
26Rushdi Shams, Dept of CSE, KUET
Disadvantages of DistributedDisadvantages of Distributed
Database SystemsDatabase Systems
 ComplexityComplexity — extra work must be done by the DBAs— extra work must be done by the DBAs
to ensure that the distributed nature of the system isto ensure that the distributed nature of the system is
transparent. Extra work must also be done to maintaintransparent. Extra work must also be done to maintain
multiple disparate systems, instead of one big one.multiple disparate systems, instead of one big one.
Extra database design work must also be done toExtra database design work must also be done to
account for the disconnected nature of the database —account for the disconnected nature of the database —
for example, joins become prohibitively expensivefor example, joins become prohibitively expensive
when performed across multiple systems.when performed across multiple systems.
 EconomicsEconomics — increased complexity and a more— increased complexity and a more
extensive infrastructure means extra labour costs.extensive infrastructure means extra labour costs.
27Rushdi Shams, Dept of CSE, KUET
Disadvantages of DistributedDisadvantages of Distributed
Database Systems (continued)Database Systems (continued)
 SecuritySecurity — remote database fragments must be— remote database fragments must be
secured, and they are not centralized so the remote sitessecured, and they are not centralized so the remote sites
must be secured as well. The infrastructure must also bemust be secured as well. The infrastructure must also be
secured (eg: by encrypting the network links betweensecured (eg: by encrypting the network links between
remote sites).remote sites).
 Difficult to maintain integrityDifficult to maintain integrity — in a distributed— in a distributed
database enforcing integrity over a network may requiredatabase enforcing integrity over a network may require
too much networking resources to be feasible.too much networking resources to be feasible.
 InexperienceInexperience — distributed databases are difficult to— distributed databases are difficult to
work with, and as a young field there is not muchwork with, and as a young field there is not much
readily available experience on proper practice.readily available experience on proper practice.
28Rushdi Shams, Dept of CSE, KUET
Types of Distributed DatabaseTypes of Distributed Database
SystemsSystems
1.1. Homogeneous Database SystemsHomogeneous Database Systems
2.2. Heterogeneous Database SystemsHeterogeneous Database Systems
3.3. Federated Database SystemsFederated Database Systems
29Rushdi Shams, Dept of CSE, KUET
Homogeneous Distributed DatabaseHomogeneous Distributed Database
SystemsSystems
 Data is distributed across 2 or more systemsData is distributed across 2 or more systems
 All the systems will have to run the same DBMSAll the systems will have to run the same DBMS
(eg. Oracle)(eg. Oracle)
 Moreover, the systems should be run on theMoreover, the systems should be run on the
same hardware platformsame hardware platform
 And the systems should be run on the sameAnd the systems should be run on the same
Operating SystemsOperating Systems
 Hmm, pretty weird??Hmm, pretty weird??
30Rushdi Shams, Dept of CSE, KUET
Homogeneous Distributed DatabaseHomogeneous Distributed Database
Systems (continued)Systems (continued)
31Rushdi Shams, Dept of CSE, KUET
Heterogeneous Distributed DatabaseHeterogeneous Distributed Database
SystemsSystems
 Data is distributed across 2 or more systemsData is distributed across 2 or more systems
 Those systems’ hardware & softwareThose systems’ hardware & software
configuration is diverseconfiguration is diverse
 One site might be running ORACLE under
Windows NT, another site Informix under
UNIX, and yet another site Ingress under
Windows NT
 Pretty Cool, huh? 
32Rushdi Shams, Dept of CSE, KUET
Heterogeneous Distributed DatabaseHeterogeneous Distributed Database
Systems (continued)Systems (continued)
UNIX
INFORMIX
INGRESS
33Rushdi Shams, Dept of CSE, KUET
Federated Distributed DatabaseFederated Distributed Database
SystemsSystems
 Switzerland is a country that is comprised withSwitzerland is a country that is comprised with
several political federationsseveral political federations
 These federations are autonomous and politicalThese federations are autonomous and political
unitsunits
 The national level decisions are made byThe national level decisions are made by
combining their own decisionscombining their own decisions
 A federated database system is made up of a
number of relatively independent, autonomous
databases
34Rushdi Shams, Dept of CSE, KUET
Federated Distributed DatabaseFederated Distributed Database
Systems (continued)Systems (continued)
35Rushdi Shams, Dept of CSE, KUET
Centralized DBMS vsCentralized DBMS vs
Distributed DBMSDistributed DBMS
 The system catalogue of a distributed database
has to be more complex. For instance, it has to
store details about the location of fragments and
replicates
 Concurrency problems are multiplied in
distributed systems. The problems of
propagating updates to a series of different sites
are very involved
36Rushdi Shams, Dept of CSE, KUET
Centralized DBMS vsCentralized DBMS vs
Distributed DBMS (continued)Distributed DBMS (continued)
 A query optimiser in a true distributed system
should be able to utilise information about the
structure of the network in deciding how best to
satisfy a given query
 To ensure a robust system, the distributed
DBMS should not be located solely at one site.
Software as well as data need to be distributed
37Rushdi Shams, Dept of CSE, KUET
Implementation Phase of DistributedImplementation Phase of Distributed
DBMSDBMS
1. In the first phase we distribute queries between sites
but update only to a single site
2. In the second phase we not only distribute queries,
we also distribute transactions between sites.
 The latter scenario is clearly the more technically
challenging of the two
 Most existing distributed database systems are in
phase 1
 Very few organisations seem to have solved all of the
problems associated with phase 2 applications
38Rushdi Shams, Dept of CSE, KUET
ReferencesReferences
 www.wikipedia.orgwww.wikipedia.org
 Database Systems by Paul Beynon-Devies,Database Systems by Paul Beynon-Devies,
Palgrave Macmillan, 2004Palgrave Macmillan, 2004
 www.cs.uga.edu/~tartir/classes/8370/FDBS.htmlwww.cs.uga.edu/~tartir/classes/8370/FDBS.html
 Distributed Database Design by Fabio Porto, DatabaseDistributed Database Design by Fabio Porto, Database
LaboratoryLaboratory
 John hall, Senior Lecturer, University of Bolton, UnitedJohn hall, Senior Lecturer, University of Bolton, United
KingdomKingdom

Weitere ähnliche Inhalte

Was ist angesagt?

Code scheduling constraints
Code scheduling constraintsCode scheduling constraints
Code scheduling constraintsArchanaMani2
 
Arrays in Data Structure and Algorithm
Arrays in Data Structure and Algorithm Arrays in Data Structure and Algorithm
Arrays in Data Structure and Algorithm KristinaBorooah
 
PROGRAMMABLE KEYBOARD AND DISPLAY INTERFACE(8279).pptx
PROGRAMMABLE KEYBOARD AND DISPLAY INTERFACE(8279).pptxPROGRAMMABLE KEYBOARD AND DISPLAY INTERFACE(8279).pptx
PROGRAMMABLE KEYBOARD AND DISPLAY INTERFACE(8279).pptxSanjayV73
 
Trees data structure
Trees data structureTrees data structure
Trees data structureSumit Gupta
 
Data Structure in C (Lab Programs)
Data Structure in C (Lab Programs)Data Structure in C (Lab Programs)
Data Structure in C (Lab Programs)Saket Pathak
 
32 dynamic linking nd overlays
32 dynamic linking nd overlays32 dynamic linking nd overlays
32 dynamic linking nd overlaysmyrajendra
 
sparse matrix in data structure
sparse matrix in data structuresparse matrix in data structure
sparse matrix in data structureMAHALAKSHMI P
 
Transactions and Concurrency Control
Transactions and Concurrency ControlTransactions and Concurrency Control
Transactions and Concurrency ControlDilum Bandara
 
Graphs In Data Structure
Graphs In Data StructureGraphs In Data Structure
Graphs In Data StructureAnuj Modi
 
Address calculation-sort
Address calculation-sortAddress calculation-sort
Address calculation-sortVasim Pathan
 
Foult Tolerence In Distributed System
Foult Tolerence In Distributed SystemFoult Tolerence In Distributed System
Foult Tolerence In Distributed SystemRajan Kumar
 
Graphs in data structure
Graphs in data structureGraphs in data structure
Graphs in data structurehamza javed
 
Structure of the page table
Structure of the page tableStructure of the page table
Structure of the page tableduvvuru madhuri
 
Graph representation
Graph representationGraph representation
Graph representationTech_MX
 

Was ist angesagt? (20)

Code scheduling constraints
Code scheduling constraintsCode scheduling constraints
Code scheduling constraints
 
Arrays in Data Structure and Algorithm
Arrays in Data Structure and Algorithm Arrays in Data Structure and Algorithm
Arrays in Data Structure and Algorithm
 
PROGRAMMABLE KEYBOARD AND DISPLAY INTERFACE(8279).pptx
PROGRAMMABLE KEYBOARD AND DISPLAY INTERFACE(8279).pptxPROGRAMMABLE KEYBOARD AND DISPLAY INTERFACE(8279).pptx
PROGRAMMABLE KEYBOARD AND DISPLAY INTERFACE(8279).pptx
 
Undecidabality
UndecidabalityUndecidabality
Undecidabality
 
Trees data structure
Trees data structureTrees data structure
Trees data structure
 
Data Structure in C (Lab Programs)
Data Structure in C (Lab Programs)Data Structure in C (Lab Programs)
Data Structure in C (Lab Programs)
 
32 dynamic linking nd overlays
32 dynamic linking nd overlays32 dynamic linking nd overlays
32 dynamic linking nd overlays
 
sparse matrix in data structure
sparse matrix in data structuresparse matrix in data structure
sparse matrix in data structure
 
Rehashing
RehashingRehashing
Rehashing
 
Transactions and Concurrency Control
Transactions and Concurrency ControlTransactions and Concurrency Control
Transactions and Concurrency Control
 
Graphs In Data Structure
Graphs In Data StructureGraphs In Data Structure
Graphs In Data Structure
 
Address calculation-sort
Address calculation-sortAddress calculation-sort
Address calculation-sort
 
Foult Tolerence In Distributed System
Foult Tolerence In Distributed SystemFoult Tolerence In Distributed System
Foult Tolerence In Distributed System
 
Rmi architecture
Rmi architectureRmi architecture
Rmi architecture
 
Distributed Mutual exclusion algorithms
Distributed Mutual exclusion algorithmsDistributed Mutual exclusion algorithms
Distributed Mutual exclusion algorithms
 
Pass 1 flowchart
Pass 1 flowchartPass 1 flowchart
Pass 1 flowchart
 
Graphs in data structure
Graphs in data structureGraphs in data structure
Graphs in data structure
 
Structure of the page table
Structure of the page tableStructure of the page table
Structure of the page table
 
Graph representation
Graph representationGraph representation
Graph representation
 
Topdown parsing
Topdown parsingTopdown parsing
Topdown parsing
 

Andere mochten auch

Fragmentation and types of fragmentation in Distributed Database
Fragmentation and types of fragmentation in Distributed DatabaseFragmentation and types of fragmentation in Distributed Database
Fragmentation and types of fragmentation in Distributed DatabaseAbhilasha Lahigude
 
Semi-supervised classification for natural language processing
Semi-supervised classification for natural language processingSemi-supervised classification for natural language processing
Semi-supervised classification for natural language processingRushdi Shams
 
Mobile communication
Mobile communicationMobile communication
Mobile communicationsourabh kant
 
Mobile communication
Mobile communicationMobile communication
Mobile communicationAditya Sharat
 
Distributed Database System
Distributed Database SystemDistributed Database System
Distributed Database SystemSulemang
 
Lec 24. Dynamic Memory Allocation
Lec 24. Dynamic Memory AllocationLec 24. Dynamic Memory Allocation
Lec 24. Dynamic Memory AllocationRushdi Shams
 
Database 2 ddbms,homogeneous & heterognus adv & disadvan
Database 2 ddbms,homogeneous & heterognus adv & disadvanDatabase 2 ddbms,homogeneous & heterognus adv & disadvan
Database 2 ddbms,homogeneous & heterognus adv & disadvanIftikhar Ahmad
 
L1 overview of software engineering
L1  overview of software engineeringL1  overview of software engineering
L1 overview of software engineeringRushdi Shams
 
Distributed dbms cs712 power point slides lecture 1
Distributed dbms   cs712 power point slides lecture 1Distributed dbms   cs712 power point slides lecture 1
Distributed dbms cs712 power point slides lecture 1Aimal Syeda
 
Distributed RDBMS: Challenges, Solutions & Trade-offs
Distributed RDBMS: Challenges, Solutions & Trade-offsDistributed RDBMS: Challenges, Solutions & Trade-offs
Distributed RDBMS: Challenges, Solutions & Trade-offsAhmed Magdy Ezzeldin, MSc.
 
Distributed database
Distributed databaseDistributed database
Distributed databasesanjay joshi
 

Andere mochten auch (20)

Fragmentation and types of fragmentation in Distributed Database
Fragmentation and types of fragmentation in Distributed DatabaseFragmentation and types of fragmentation in Distributed Database
Fragmentation and types of fragmentation in Distributed Database
 
Distributed database
Distributed databaseDistributed database
Distributed database
 
Semi-supervised classification for natural language processing
Semi-supervised classification for natural language processingSemi-supervised classification for natural language processing
Semi-supervised classification for natural language processing
 
Lecture 1 ddbms
Lecture 1 ddbmsLecture 1 ddbms
Lecture 1 ddbms
 
Mobile communication
Mobile communicationMobile communication
Mobile communication
 
Mobile communication
Mobile communicationMobile communication
Mobile communication
 
Mobile communication
Mobile communicationMobile communication
Mobile communication
 
Distributed Database System
Distributed Database SystemDistributed Database System
Distributed Database System
 
Sql
SqlSql
Sql
 
L4 vpn
L4  vpnL4  vpn
L4 vpn
 
Lec 24. Dynamic Memory Allocation
Lec 24. Dynamic Memory AllocationLec 24. Dynamic Memory Allocation
Lec 24. Dynamic Memory Allocation
 
L15 fuzzy logic
L15  fuzzy logicL15  fuzzy logic
L15 fuzzy logic
 
Database 2 ddbms,homogeneous & heterognus adv & disadvan
Database 2 ddbms,homogeneous & heterognus adv & disadvanDatabase 2 ddbms,homogeneous & heterognus adv & disadvan
Database 2 ddbms,homogeneous & heterognus adv & disadvan
 
L1 overview of software engineering
L1  overview of software engineeringL1  overview of software engineering
L1 overview of software engineering
 
Distributed dbms cs712 power point slides lecture 1
Distributed dbms   cs712 power point slides lecture 1Distributed dbms   cs712 power point slides lecture 1
Distributed dbms cs712 power point slides lecture 1
 
L1 phishing
L1  phishingL1  phishing
L1 phishing
 
Distributed RDBMS: Challenges, Solutions & Trade-offs
Distributed RDBMS: Challenges, Solutions & Trade-offsDistributed RDBMS: Challenges, Solutions & Trade-offs
Distributed RDBMS: Challenges, Solutions & Trade-offs
 
2 ddb architecture
2 ddb architecture2 ddb architecture
2 ddb architecture
 
Distributed database
Distributed databaseDistributed database
Distributed database
 
Distributed Database
Distributed DatabaseDistributed Database
Distributed Database
 

Ähnlich wie Distributed Database Management Systems (Distributed DBMS)

Database Tables and Data Types
Database Tables and Data TypesDatabase Tables and Data Types
Database Tables and Data TypesRushdi Shams
 
Lec 20. Structure (Part II)
Lec 20. Structure (Part II)Lec 20. Structure (Part II)
Lec 20. Structure (Part II)Rushdi Shams
 
Lec 23. Files (Part II)
Lec 23. Files (Part II)Lec 23. Files (Part II)
Lec 23. Files (Part II)Rushdi Shams
 
Distributed Database Management System
Distributed Database Management SystemDistributed Database Management System
Distributed Database Management SystemHardik Patil
 
Stuff About CQRS
Stuff About CQRSStuff About CQRS
Stuff About CQRSthinkddd
 

Ähnlich wie Distributed Database Management Systems (Distributed DBMS) (7)

Normal forms
Normal formsNormal forms
Normal forms
 
Database Tables and Data Types
Database Tables and Data TypesDatabase Tables and Data Types
Database Tables and Data Types
 
Lec 20. Structure (Part II)
Lec 20. Structure (Part II)Lec 20. Structure (Part II)
Lec 20. Structure (Part II)
 
Lec 23. Files (Part II)
Lec 23. Files (Part II)Lec 23. Files (Part II)
Lec 23. Files (Part II)
 
Distributed Database Management System
Distributed Database Management SystemDistributed Database Management System
Distributed Database Management System
 
Stuff About CQRS
Stuff About CQRSStuff About CQRS
Stuff About CQRS
 
blast and fasta
 blast and fasta blast and fasta
blast and fasta
 

Mehr von Rushdi Shams

Research Methodology and Tips on Better Research
Research Methodology and Tips on Better ResearchResearch Methodology and Tips on Better Research
Research Methodology and Tips on Better ResearchRushdi Shams
 
Common evaluation measures in NLP and IR
Common evaluation measures in NLP and IRCommon evaluation measures in NLP and IR
Common evaluation measures in NLP and IRRushdi Shams
 
Machine learning with nlp 101
Machine learning with nlp 101Machine learning with nlp 101
Machine learning with nlp 101Rushdi Shams
 
Natural Language Processing: Parsing
Natural Language Processing: ParsingNatural Language Processing: Parsing
Natural Language Processing: ParsingRushdi Shams
 
Types of machine translation
Types of machine translationTypes of machine translation
Types of machine translationRushdi Shams
 
L1 l2 l3 introduction to machine translation
L1 l2 l3  introduction to machine translationL1 l2 l3  introduction to machine translation
L1 l2 l3 introduction to machine translationRushdi Shams
 
Syntax and semantics
Syntax and semanticsSyntax and semantics
Syntax and semanticsRushdi Shams
 
Propositional logic
Propositional logicPropositional logic
Propositional logicRushdi Shams
 
Probabilistic logic
Probabilistic logicProbabilistic logic
Probabilistic logicRushdi Shams
 
Knowledge structure
Knowledge structureKnowledge structure
Knowledge structureRushdi Shams
 
Knowledge representation
Knowledge representationKnowledge representation
Knowledge representationRushdi Shams
 
L5 understanding hacking
L5  understanding hackingL5  understanding hacking
L5 understanding hackingRushdi Shams
 
L2 Intrusion Detection System (IDS)
L2  Intrusion Detection System (IDS)L2  Intrusion Detection System (IDS)
L2 Intrusion Detection System (IDS)Rushdi Shams
 
L2 l3 l4 software process models
L2 l3 l4  software process modelsL2 l3 l4  software process models
L2 l3 l4 software process modelsRushdi Shams
 
L13 why software fails
L13  why software failsL13  why software fails
L13 why software failsRushdi Shams
 
Lecture 14,15 and 16 file systems
Lecture 14,15 and 16  file systemsLecture 14,15 and 16  file systems
Lecture 14,15 and 16 file systemsRushdi Shams
 
Lecture 11,12 and 13 deadlocks
Lecture 11,12 and 13  deadlocksLecture 11,12 and 13  deadlocks
Lecture 11,12 and 13 deadlocksRushdi Shams
 

Mehr von Rushdi Shams (20)

Research Methodology and Tips on Better Research
Research Methodology and Tips on Better ResearchResearch Methodology and Tips on Better Research
Research Methodology and Tips on Better Research
 
Common evaluation measures in NLP and IR
Common evaluation measures in NLP and IRCommon evaluation measures in NLP and IR
Common evaluation measures in NLP and IR
 
Machine learning with nlp 101
Machine learning with nlp 101Machine learning with nlp 101
Machine learning with nlp 101
 
Natural Language Processing: Parsing
Natural Language Processing: ParsingNatural Language Processing: Parsing
Natural Language Processing: Parsing
 
Types of machine translation
Types of machine translationTypes of machine translation
Types of machine translation
 
L1 l2 l3 introduction to machine translation
L1 l2 l3  introduction to machine translationL1 l2 l3  introduction to machine translation
L1 l2 l3 introduction to machine translation
 
Syntax and semantics
Syntax and semanticsSyntax and semantics
Syntax and semantics
 
Propositional logic
Propositional logicPropositional logic
Propositional logic
 
Probabilistic logic
Probabilistic logicProbabilistic logic
Probabilistic logic
 
Knowledge structure
Knowledge structureKnowledge structure
Knowledge structure
 
Knowledge representation
Knowledge representationKnowledge representation
Knowledge representation
 
First order logic
First order logicFirst order logic
First order logic
 
Belief function
Belief functionBelief function
Belief function
 
L5 understanding hacking
L5  understanding hackingL5  understanding hacking
L5 understanding hacking
 
L3 defense
L3  defenseL3  defense
L3 defense
 
L2 Intrusion Detection System (IDS)
L2  Intrusion Detection System (IDS)L2  Intrusion Detection System (IDS)
L2 Intrusion Detection System (IDS)
 
L2 l3 l4 software process models
L2 l3 l4  software process modelsL2 l3 l4  software process models
L2 l3 l4 software process models
 
L13 why software fails
L13  why software failsL13  why software fails
L13 why software fails
 
Lecture 14,15 and 16 file systems
Lecture 14,15 and 16  file systemsLecture 14,15 and 16  file systems
Lecture 14,15 and 16 file systems
 
Lecture 11,12 and 13 deadlocks
Lecture 11,12 and 13  deadlocksLecture 11,12 and 13  deadlocks
Lecture 11,12 and 13 deadlocks
 

Kürzlich hochgeladen

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 

Kürzlich hochgeladen (20)

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 

Distributed Database Management Systems (Distributed DBMS)

  • 1. Rushdi Shams, Dept of CSE, KUET 1 Database SystemsDatabase Systems Distributed Database SystemsDistributed Database Systems Version 1.0Version 1.0
  • 2. 2Rushdi Shams, Dept of CSE, KUET IntroductionIntroduction  A distributed database systems is a databaseA distributed database systems is a database systems which issystems which is fragmented or replicatedfragmented or replicated onon machinesmachines  These machines are usually located on differentThese machines are usually located on different geographical location of an organizationgeographical location of an organization  FragmentationFragmentation is made of some subsets of theis made of some subsets of the original databaseoriginal database  ReplicationReplication refers to the copy of the wholerefers to the copy of the whole database or part of the original databasedatabase or part of the original database
  • 3. 3Rushdi Shams, Dept of CSE, KUET Idea of Distributed DatabaseIdea of Distributed Database SystemsSystems  4 sites connected by a communication network4 sites connected by a communication network  Sites 1, 2 and 4 run a single databaseSites 1, 2 and 4 run a single database  Site 3 has no database. It accesses the other 3 sites for dataSite 3 has no database. It accesses the other 3 sites for data manipulationmanipulation
  • 4. 4Rushdi Shams, Dept of CSE, KUET FragmentationFragmentation  There are 2 basic types of fragmentationsThere are 2 basic types of fragmentations 1.1. Horizontal fragmentationHorizontal fragmentation 2.2. Vertical fragmentationVertical fragmentation
  • 5. 5Rushdi Shams, Dept of CSE, KUET Horizontal FragmentationHorizontal Fragmentation  Horizontal fragmentation is the subset of rows of a single tableHorizontal fragmentation is the subset of rows of a single table  Say, we need to manipulate a table that contains informationSay, we need to manipulate a table that contains information about British Peopleabout British People  We have 3 sitesWe have 3 sites  Edinburgh site will have those rows of the table that haveEdinburgh site will have those rows of the table that have information about Scottish peopleinformation about Scottish people  Cardiff site will have those rows of the table that haveCardiff site will have those rows of the table that have information about Welsh peopleinformation about Welsh people  London site will have those rows of the table that haveLondon site will have those rows of the table that have information about English peopleinformation about English people  The 3 sites are working as distributed processors. So, togetherThe 3 sites are working as distributed processors. So, together they represent information about all the British peoplethey represent information about all the British people
  • 6. 6Rushdi Shams, Dept of CSE, KUET Horizontal FragmentationHorizontal Fragmentation (continued)(continued)
  • 7. 7Rushdi Shams, Dept of CSE, KUET Horizontal FragmentationHorizontal Fragmentation (continued)(continued)  Horizontal fragmentation is done by restricting theHorizontal fragmentation is done by restricting the table with WHERE condition in query languages!!table with WHERE condition in query languages!!  In the previous example, you can fragment the tableIn the previous example, you can fragment the table likelike 1.1. WHERE LOCATION=EDINBURGHWHERE LOCATION=EDINBURGH 2.2. WHERE LOCATION=CARDIFFWHERE LOCATION=CARDIFF 3.3. WHERE LOCATION=LONDONWHERE LOCATION=LONDON  To find the original table, you just union all theTo find the original table, you just union all the fragmented tables!fragmented tables!  Easy, huh?Easy, huh?
  • 8. 8Rushdi Shams, Dept of CSE, KUET Horizontal FragmentationHorizontal Fragmentation (continued)(continued)  Consider the horizontal fragmentation of relation Proj accordingConsider the horizontal fragmentation of relation Proj according to its BUDGET value.to its BUDGET value.  Relations with BUDGET > 200000 go into Proj1 and the restRelations with BUDGET > 200000 go into Proj1 and the rest goes into Proj2.goes into Proj2. Proj1=Proj1= σσ(budget>200000)(budget>200000) ProjProj Proj2=Proj2= σσ(budget(budget ≤≤ 200000)200000) ProjProj
  • 9. 9Rushdi Shams, Dept of CSE, KUET Vertical FragmentationVertical Fragmentation  Vertical fragmentation is a method ofVertical fragmentation is a method of fragmenting a table byfragmenting a table by projectingprojecting columns of acolumns of a tabletable with primary keywith primary key  To find out the original table, you just need toTo find out the original table, you just need to join the newly created tables according to thejoin the newly created tables according to the primary key!primary key!  Again, it’s easy, huh?Again, it’s easy, huh?
  • 10. 10Rushdi Shams, Dept of CSE, KUET Vertical Fragmentation (continued)Vertical Fragmentation (continued)  The table proj is fragmented into 2 tables proj 1 and proj 2The table proj is fragmented into 2 tables proj 1 and proj 2  Both tables have the primary key- PNO. Keep an eye on it,Both tables have the primary key- PNO. Keep an eye on it, fellows!fellows!  If you join them according to the PNO of both table, what doIf you join them according to the PNO of both table, what do you get? Answer- Proj table again!!you get? Answer- Proj table again!! 
  • 11. 11Rushdi Shams, Dept of CSE, KUET Both Fragmentation at A GlanceBoth Fragmentation at A Glance
  • 12. 12Rushdi Shams, Dept of CSE, KUET Why FragmentationWhy Fragmentation  Usage:Usage: Applications work with views rather than entireApplications work with views rather than entire relationsrelations  Efficiency:Efficiency: Data is stored close to where it is mostData is stored close to where it is most frequently usedfrequently used Data that is not needed by local applications areData that is not needed by local applications are not storednot stored
  • 13. 13Rushdi Shams, Dept of CSE, KUET Why Fragmentation (continued)Why Fragmentation (continued)  Parallelism:Parallelism: Transaction can be divided into severalTransaction can be divided into several subqueries that operate on fragmentssubqueries that operate on fragments  Security:Security: Data that is not needed by local applications areData that is not needed by local applications are not stored and so is not vulnerable tonot stored and so is not vulnerable to unauthorized usersunauthorized users
  • 14. 14Rushdi Shams, Dept of CSE, KUET Disadvantage of FragmentationDisadvantage of Fragmentation  Performance:Performance: If queries involve to fetch data from tables thatIf queries involve to fetch data from tables that are on different sites, it requires processing timeare on different sites, it requires processing time
  • 15. 15Rushdi Shams, Dept of CSE, KUET Correctness of FragmentationCorrectness of Fragmentation  Well, when I first hear correctness- I wasWell, when I first hear correctness- I was boomed! Actually it means nothing rather thanboomed! Actually it means nothing rather than some properties of fragmentationsome properties of fragmentation  So, don’t worry about that. It is calledSo, don’t worry about that. It is called CORRECTNESS in database jargon, so, don’tCORRECTNESS in database jargon, so, don’t call it property, a’right?call it property, a’right?
  • 16. 16Rushdi Shams, Dept of CSE, KUET Correctness of FragmentationCorrectness of Fragmentation (continued)(continued)  There are 3 correctness rulesThere are 3 correctness rules 1.1. CompletenessCompleteness 2.2. ReconstructionReconstruction 3.3. DisjointnessDisjointness
  • 17. 17Rushdi Shams, Dept of CSE, KUET Correctness of FragmentationCorrectness of Fragmentation (continued)(continued) 1.1. Completeness:Completeness: If relation R is fragmented into fragments R1,If relation R is fragmented into fragments R1, R2, R3… Rn, each data item that can be foundR2, R3… Rn, each data item that can be found in R must appear in at least one fragmentin R must appear in at least one fragment So, why don’t you say this way- no data itemSo, why don’t you say this way- no data item of original relation R gets missing!!of original relation R gets missing!! Man, I hate theoretical definitions!Man, I hate theoretical definitions!
  • 18. 18Rushdi Shams, Dept of CSE, KUET Correctness of FragmentationCorrectness of Fragmentation (continued)(continued) 2.2. Reconstruction:Reconstruction: There must be a relational operation by whichThere must be a relational operation by which we can reconstruct R from the fragmentswe can reconstruct R from the fragments We already saw that by Unioning (We already saw that by Unioning ()) horizontal fragments we can have original Rhorizontal fragments we can have original R and by joining vertical fragments, we canand by joining vertical fragments, we can achieve R!achieve R!
  • 19. 19Rushdi Shams, Dept of CSE, KUET Correctness of FragmentationCorrectness of Fragmentation (continued)(continued) 3.3. Disjointness:Disjointness: If data item Di appears in fragment Ri, then itIf data item Di appears in fragment Ri, then it should not appear in any other fragmentshould not appear in any other fragment Exception of this is in vertical fragmentation,Exception of this is in vertical fragmentation, where primary key attributes must be repeatedwhere primary key attributes must be repeated to allow reconstructionto allow reconstruction
  • 20. 20Rushdi Shams, Dept of CSE, KUET TransparencyTransparency  You have distributed one table to 3 sites justYou have distributed one table to 3 sites just now. The user, when he requires data, shouldnow. The user, when he requires data, should not know this!not know this!  This process of hiding the fragmentation andThis process of hiding the fragmentation and distribution the fragments to different sites isdistribution the fragments to different sites is called transparencycalled transparency
  • 21. 21Rushdi Shams, Dept of CSE, KUET Types of TransparencyTypes of Transparency 1.1. Location transparencyLocation transparency User should not be aware of the location of the data.User should not be aware of the location of the data. This simplifies the user interface and user programsThis simplifies the user interface and user programs that are used to query the tablethat are used to query the table 2.2. Fragmentation transparencyFragmentation transparency User must not know that the data have beenUser must not know that the data have been fragmented and how the data have been fragmentedfragmented and how the data have been fragmented 3.3. Replication transparencyReplication transparency Replication is necessary sometimes as this makes theReplication is necessary sometimes as this makes the processing faster. But user should not be aware of it.processing faster. But user should not be aware of it.
  • 22. 22Rushdi Shams, Dept of CSE, KUET Need of TransparencyNeed of Transparency  A manager wishing to find the total number of employees at the Scottish subsidiary need not be aware that he is querying a remote database  A manager running a query in London should not need to be aware that to produce the aggregate salary bill for the company all three sites – London, Cardiff and Edinburgh – need to be interrogated  When periodically data need to be updated, the user need not directly know that three sites are effectively updated
  • 23. 23Rushdi Shams, Dept of CSE, KUET Foundation RuleFoundation Rule  The foundation rule of distributed databaseThe foundation rule of distributed database systems states-systems states- ““Although the database systems are distributedAlthough the database systems are distributed to several sites, it must look like a centralisedto several sites, it must look like a centralised database systems to the user”database systems to the user”  Then how do you make this foundation ruleThen how do you make this foundation rule true?true?  Answer- by applying 3 types of transparenciesAnswer- by applying 3 types of transparencies 
  • 24. 24Rushdi Shams, Dept of CSE, KUET Advantages of Distributed DatabaseAdvantages of Distributed Database SystemsSystems  Reflects organizational structureReflects organizational structure — database— database fragments are located in the departments theyfragments are located in the departments they relate to.relate to.  Local autonomyLocal autonomy — a department can control— a department can control the data about them (as they are the onesthe data about them (as they are the ones familiar with it.)familiar with it.)  Improved availabilityImproved availability — a fault in one— a fault in one database system will only affect one fragment,database system will only affect one fragment, instead of the entire databaseinstead of the entire database
  • 25. 25Rushdi Shams, Dept of CSE, KUET Advantages of Distributed DatabaseAdvantages of Distributed Database Systems (continued)Systems (continued)  Improved performanceImproved performance — data is located near the site— data is located near the site of greatest demand, and the database systemsof greatest demand, and the database systems themselves are parallelized, allowing load on thethemselves are parallelized, allowing load on the databases to be balanced among servers. (A high loaddatabases to be balanced among servers. (A high load on one module of the database won't affect otheron one module of the database won't affect other modules of the database in a distributed database.)modules of the database in a distributed database.)  EconomicsEconomics — it costs less to create a network of— it costs less to create a network of smaller computers with the power of a single largesmaller computers with the power of a single large computer.computer.  ModularityModularity — systems can be modified, added and— systems can be modified, added and removed from the distributed database withoutremoved from the distributed database without affecting other modules (systems).affecting other modules (systems).
  • 26. 26Rushdi Shams, Dept of CSE, KUET Disadvantages of DistributedDisadvantages of Distributed Database SystemsDatabase Systems  ComplexityComplexity — extra work must be done by the DBAs— extra work must be done by the DBAs to ensure that the distributed nature of the system isto ensure that the distributed nature of the system is transparent. Extra work must also be done to maintaintransparent. Extra work must also be done to maintain multiple disparate systems, instead of one big one.multiple disparate systems, instead of one big one. Extra database design work must also be done toExtra database design work must also be done to account for the disconnected nature of the database —account for the disconnected nature of the database — for example, joins become prohibitively expensivefor example, joins become prohibitively expensive when performed across multiple systems.when performed across multiple systems.  EconomicsEconomics — increased complexity and a more— increased complexity and a more extensive infrastructure means extra labour costs.extensive infrastructure means extra labour costs.
  • 27. 27Rushdi Shams, Dept of CSE, KUET Disadvantages of DistributedDisadvantages of Distributed Database Systems (continued)Database Systems (continued)  SecuritySecurity — remote database fragments must be— remote database fragments must be secured, and they are not centralized so the remote sitessecured, and they are not centralized so the remote sites must be secured as well. The infrastructure must also bemust be secured as well. The infrastructure must also be secured (eg: by encrypting the network links betweensecured (eg: by encrypting the network links between remote sites).remote sites).  Difficult to maintain integrityDifficult to maintain integrity — in a distributed— in a distributed database enforcing integrity over a network may requiredatabase enforcing integrity over a network may require too much networking resources to be feasible.too much networking resources to be feasible.  InexperienceInexperience — distributed databases are difficult to— distributed databases are difficult to work with, and as a young field there is not muchwork with, and as a young field there is not much readily available experience on proper practice.readily available experience on proper practice.
  • 28. 28Rushdi Shams, Dept of CSE, KUET Types of Distributed DatabaseTypes of Distributed Database SystemsSystems 1.1. Homogeneous Database SystemsHomogeneous Database Systems 2.2. Heterogeneous Database SystemsHeterogeneous Database Systems 3.3. Federated Database SystemsFederated Database Systems
  • 29. 29Rushdi Shams, Dept of CSE, KUET Homogeneous Distributed DatabaseHomogeneous Distributed Database SystemsSystems  Data is distributed across 2 or more systemsData is distributed across 2 or more systems  All the systems will have to run the same DBMSAll the systems will have to run the same DBMS (eg. Oracle)(eg. Oracle)  Moreover, the systems should be run on theMoreover, the systems should be run on the same hardware platformsame hardware platform  And the systems should be run on the sameAnd the systems should be run on the same Operating SystemsOperating Systems  Hmm, pretty weird??Hmm, pretty weird??
  • 30. 30Rushdi Shams, Dept of CSE, KUET Homogeneous Distributed DatabaseHomogeneous Distributed Database Systems (continued)Systems (continued)
  • 31. 31Rushdi Shams, Dept of CSE, KUET Heterogeneous Distributed DatabaseHeterogeneous Distributed Database SystemsSystems  Data is distributed across 2 or more systemsData is distributed across 2 or more systems  Those systems’ hardware & softwareThose systems’ hardware & software configuration is diverseconfiguration is diverse  One site might be running ORACLE under Windows NT, another site Informix under UNIX, and yet another site Ingress under Windows NT  Pretty Cool, huh? 
  • 32. 32Rushdi Shams, Dept of CSE, KUET Heterogeneous Distributed DatabaseHeterogeneous Distributed Database Systems (continued)Systems (continued) UNIX INFORMIX INGRESS
  • 33. 33Rushdi Shams, Dept of CSE, KUET Federated Distributed DatabaseFederated Distributed Database SystemsSystems  Switzerland is a country that is comprised withSwitzerland is a country that is comprised with several political federationsseveral political federations  These federations are autonomous and politicalThese federations are autonomous and political unitsunits  The national level decisions are made byThe national level decisions are made by combining their own decisionscombining their own decisions  A federated database system is made up of a number of relatively independent, autonomous databases
  • 34. 34Rushdi Shams, Dept of CSE, KUET Federated Distributed DatabaseFederated Distributed Database Systems (continued)Systems (continued)
  • 35. 35Rushdi Shams, Dept of CSE, KUET Centralized DBMS vsCentralized DBMS vs Distributed DBMSDistributed DBMS  The system catalogue of a distributed database has to be more complex. For instance, it has to store details about the location of fragments and replicates  Concurrency problems are multiplied in distributed systems. The problems of propagating updates to a series of different sites are very involved
  • 36. 36Rushdi Shams, Dept of CSE, KUET Centralized DBMS vsCentralized DBMS vs Distributed DBMS (continued)Distributed DBMS (continued)  A query optimiser in a true distributed system should be able to utilise information about the structure of the network in deciding how best to satisfy a given query  To ensure a robust system, the distributed DBMS should not be located solely at one site. Software as well as data need to be distributed
  • 37. 37Rushdi Shams, Dept of CSE, KUET Implementation Phase of DistributedImplementation Phase of Distributed DBMSDBMS 1. In the first phase we distribute queries between sites but update only to a single site 2. In the second phase we not only distribute queries, we also distribute transactions between sites.  The latter scenario is clearly the more technically challenging of the two  Most existing distributed database systems are in phase 1  Very few organisations seem to have solved all of the problems associated with phase 2 applications
  • 38. 38Rushdi Shams, Dept of CSE, KUET ReferencesReferences  www.wikipedia.orgwww.wikipedia.org  Database Systems by Paul Beynon-Devies,Database Systems by Paul Beynon-Devies, Palgrave Macmillan, 2004Palgrave Macmillan, 2004  www.cs.uga.edu/~tartir/classes/8370/FDBS.htmlwww.cs.uga.edu/~tartir/classes/8370/FDBS.html  Distributed Database Design by Fabio Porto, DatabaseDistributed Database Design by Fabio Porto, Database LaboratoryLaboratory  John hall, Senior Lecturer, University of Bolton, UnitedJohn hall, Senior Lecturer, University of Bolton, United KingdomKingdom