SlideShare a Scribd company logo
Replication in DDB 
Full, no, partial
 Replication is useful in improving the availability of 
data by coping data at multiple sites. 
 Either a relation or a fragment can be replicated at 
one or more sites. 
 Fully redundant databases are those in which every 
site contains a copy of the entire database. 
 Depending on the availability and redundancy factor 
there are three types of replications: 
 Full replication. 
 No replication. 
 Partial replication.
Full Replication 
 The most extreme case is replication of the whole 
database at every site in the distributed system. 
 This can improve availability remarkably because the 
system can continue to operate as long as at least 
one site is up. 
 It also improves performance for retrieval of global 
queries as the result can be obtained locally at any 
client . 
 Disadvantage: Slows the update process as a single 
update must be performed at different databases to 
keep the copies consistent.
No replication 
 The other extreme from full replication involves having 
no replication—that is, each fragment is stored at 
exactly one site. 
 In this case, all fragments must be disjoint, except for 
the repetition of primary keys among vertical (or 
mixed) fragments. 
 This is also called nonredundant allocation.
Partial Replication 
 Here some fragments of the database may be 
replicated whereas others may not. 
 The number of copies of each fragment can range 
from one up to the total number of sites in the 
distributed system. 
 For example: 
mobile workers—sales forces, financial planners, 
Carry partially replicated databases on their laptops 
and synchronize periodically with the server 
databases. 
 A description of the replication of fragments is 
sometimes called a replication schema.
 Each fragment—or each copy of a fragment—must be assigned to a 
particular site in the distributed system. This process is called data 
distribution (or data allocation). 
 The choice of sites and the degree of replication depend on the 
performance and availability goals of the system and on the types 
and frequencies of transactions submitted at each site. 
 For example, if high availability is required, transactions can be 
submitted at any site, and most transactions are retrieval only, a fully 
replicated database is a good choice. 
 However, if certain transactions that access particular parts of the 
database are mostly submitted at a particular site, the corresponding 
set of fragments can be allocated at that site only. 
 Data that is accessed at multiple sites can be replicated at those 
sites. If many updates are performed, it may be useful to limit 
replication. 
 Finding an optimal or even a good solution to distributed data 
allocation is a complex optimization problem.
Replication in Distributed Database

More Related Content

What's hot

Database Programming
Database ProgrammingDatabase Programming
Database Programming
Henry Osborne
 
Concurrency Control in Distributed Database.
Concurrency Control in Distributed Database.Concurrency Control in Distributed Database.
Concurrency Control in Distributed Database.
Meghaj Mallick
 
Shared-Memory Multiprocessors
Shared-Memory MultiprocessorsShared-Memory Multiprocessors
Shared-Memory Multiprocessors
Salvatore La Bua
 
Database , 12 Reliability
Database , 12 ReliabilityDatabase , 12 Reliability
Database , 12 ReliabilityAli Usman
 
Naming in Distributed System
Naming in Distributed SystemNaming in Distributed System
Naming in Distributed System
MNM Jain Engineering College
 
distributed shared memory
 distributed shared memory distributed shared memory
distributed shared memoryAshish Kumar
 
data replication
data replicationdata replication
data replication
Hassanein Alwan
 
Distributed Transaction
Distributed TransactionDistributed Transaction
Distributed Transaction
Pratik Tambekar
 
Replication in Distributed Systems
Replication in Distributed SystemsReplication in Distributed Systems
Replication in Distributed Systems
Kavya Barnadhya Hazarika
 
File models and file accessing models
File models and file accessing modelsFile models and file accessing models
File models and file accessing models
ishmecse13
 
Load Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed DatabaseLoad Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed Database
Md. Shamsur Rahim
 
Distributed Database System
Distributed Database SystemDistributed Database System
Distributed Database SystemSulemang
 
Introduction to distributed database
Introduction to distributed databaseIntroduction to distributed database
Introduction to distributed database
Sonia Panesar
 
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
Abhilasha Lahigude
 
Overview of Concurrency Control & Recovery in Distributed Databases
Overview of Concurrency Control & Recovery in Distributed DatabasesOverview of Concurrency Control & Recovery in Distributed Databases
Overview of Concurrency Control & Recovery in Distributed Databases
Meghaj Mallick
 
Introduction to Distributed System
Introduction to Distributed SystemIntroduction to Distributed System
Introduction to Distributed System
Sunita Sahu
 
Distributed computing
Distributed computingDistributed computing
Distributed computingshivli0769
 
Chapter 14 replication
Chapter 14 replicationChapter 14 replication
Chapter 14 replicationAbDul ThaYyal
 
Database , 13 Replication
Database , 13 ReplicationDatabase , 13 Replication
Database , 13 ReplicationAli Usman
 

What's hot (20)

Database Programming
Database ProgrammingDatabase Programming
Database Programming
 
Concurrency Control in Distributed Database.
Concurrency Control in Distributed Database.Concurrency Control in Distributed Database.
Concurrency Control in Distributed Database.
 
Shared-Memory Multiprocessors
Shared-Memory MultiprocessorsShared-Memory Multiprocessors
Shared-Memory Multiprocessors
 
Database , 12 Reliability
Database , 12 ReliabilityDatabase , 12 Reliability
Database , 12 Reliability
 
Distributed database
Distributed databaseDistributed database
Distributed database
 
Naming in Distributed System
Naming in Distributed SystemNaming in Distributed System
Naming in Distributed System
 
distributed shared memory
 distributed shared memory distributed shared memory
distributed shared memory
 
data replication
data replicationdata replication
data replication
 
Distributed Transaction
Distributed TransactionDistributed Transaction
Distributed Transaction
 
Replication in Distributed Systems
Replication in Distributed SystemsReplication in Distributed Systems
Replication in Distributed Systems
 
File models and file accessing models
File models and file accessing modelsFile models and file accessing models
File models and file accessing models
 
Load Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed DatabaseLoad Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed Database
 
Distributed Database System
Distributed Database SystemDistributed Database System
Distributed Database System
 
Introduction to distributed database
Introduction to distributed databaseIntroduction to distributed database
Introduction to distributed database
 
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
 
Overview of Concurrency Control & Recovery in Distributed Databases
Overview of Concurrency Control & Recovery in Distributed DatabasesOverview of Concurrency Control & Recovery in Distributed Databases
Overview of Concurrency Control & Recovery in Distributed Databases
 
Introduction to Distributed System
Introduction to Distributed SystemIntroduction to Distributed System
Introduction to Distributed System
 
Distributed computing
Distributed computingDistributed computing
Distributed computing
 
Chapter 14 replication
Chapter 14 replicationChapter 14 replication
Chapter 14 replication
 
Database , 13 Replication
Database , 13 ReplicationDatabase , 13 Replication
Database , 13 Replication
 

Similar to Replication in Distributed Database

Distributed database
Distributed databaseDistributed database
Distributed database
sanjay joshi
 
Distributed database
Distributed databaseDistributed database
Distributed database
sanjay joshi
 
Talon systems - Distributed multi master replication strategy
Talon systems - Distributed multi master replication strategyTalon systems - Distributed multi master replication strategy
Talon systems - Distributed multi master replication strategy
Saptarshi Chatterjee
 
distributed database management system.ppt
distributed database management system.pptdistributed database management system.ppt
distributed database management system.ppt
ssuserf170c4
 
DDBS PPT (1).pptx
DDBS PPT (1).pptxDDBS PPT (1).pptx
DDBS PPT (1).pptx
HarshitSingh334328
 
DBMS - Distributed Databases
DBMS - Distributed DatabasesDBMS - Distributed Databases
DBMS - Distributed Databases
MythiliMurugan3
 
Distributed Database
Distributed DatabaseDistributed Database
Lec 8 (distributed database)
Lec 8 (distributed database)Lec 8 (distributed database)
Lec 8 (distributed database)
Sudarshan Mondal
 
DDBMS.pptx
DDBMS.pptxDDBMS.pptx
DDBMS.pptx
ManishBej1
 
What is active-active
What is active-activeWhat is active-active
What is active-active
Saif Ahmad
 
Distributed databases
Distributed databasesDistributed databases
Distributed databasesSuneel Dogra
 
Distributed Database Management System
Distributed Database Management SystemDistributed Database Management System
Distributed Database Management System
AAKANKSHA JAIN
 
Distributed design alternatives
Distributed design alternativesDistributed design alternatives
Distributed design alternatives
Pooja Dixit
 
Data replication
Data replicationData replication
Data replication
ssuser1eca7d
 
Deduplication - Remove Duplicate
Deduplication - Remove DuplicateDeduplication - Remove Duplicate
Deduplication - Remove Duplicate
txttoolsmanipulation
 
1 ddbms jan 2011_u
1 ddbms jan 2011_u1 ddbms jan 2011_u
1 ddbms jan 2011_u
betheperformer
 
Compare Array vs Host vs Hypervisor vs Network-Based Replication
Compare Array vs Host vs Hypervisor vs Network-Based ReplicationCompare Array vs Host vs Hypervisor vs Network-Based Replication
Compare Array vs Host vs Hypervisor vs Network-Based Replication
MaryJWilliams2
 

Similar to Replication in Distributed Database (20)

Distributed database
Distributed databaseDistributed database
Distributed database
 
Distributed database
Distributed databaseDistributed database
Distributed database
 
Talon systems - Distributed multi master replication strategy
Talon systems - Distributed multi master replication strategyTalon systems - Distributed multi master replication strategy
Talon systems - Distributed multi master replication strategy
 
distributed database management system.ppt
distributed database management system.pptdistributed database management system.ppt
distributed database management system.ppt
 
Distributed D B
Distributed  D BDistributed  D B
Distributed D B
 
DDBS PPT (1).pptx
DDBS PPT (1).pptxDDBS PPT (1).pptx
DDBS PPT (1).pptx
 
DBMS - Distributed Databases
DBMS - Distributed DatabasesDBMS - Distributed Databases
DBMS - Distributed Databases
 
Distributed Database
Distributed DatabaseDistributed Database
Distributed Database
 
Lec 8 (distributed database)
Lec 8 (distributed database)Lec 8 (distributed database)
Lec 8 (distributed database)
 
DDBMS.pptx
DDBMS.pptxDDBMS.pptx
DDBMS.pptx
 
What is active-active
What is active-activeWhat is active-active
What is active-active
 
Distributed databases
Distributed databasesDistributed databases
Distributed databases
 
Distributed Database Management System
Distributed Database Management SystemDistributed Database Management System
Distributed Database Management System
 
Distributed design alternatives
Distributed design alternativesDistributed design alternatives
Distributed design alternatives
 
Data replication
Data replicationData replication
Data replication
 
Deduplication - Remove Duplicate
Deduplication - Remove DuplicateDeduplication - Remove Duplicate
Deduplication - Remove Duplicate
 
1 ddbms jan 2011_u
1 ddbms jan 2011_u1 ddbms jan 2011_u
1 ddbms jan 2011_u
 
nnnn.pptx
nnnn.pptxnnnn.pptx
nnnn.pptx
 
DBMS.pptx
DBMS.pptxDBMS.pptx
DBMS.pptx
 
Compare Array vs Host vs Hypervisor vs Network-Based Replication
Compare Array vs Host vs Hypervisor vs Network-Based ReplicationCompare Array vs Host vs Hypervisor vs Network-Based Replication
Compare Array vs Host vs Hypervisor vs Network-Based Replication
 

More from Abhilasha Lahigude

AJAX
AJAXAJAX
Leave Management System: Software Requirements Specification Document(SRS)
Leave Management System: Software Requirements Specification Document(SRS) Leave Management System: Software Requirements Specification Document(SRS)
Leave Management System: Software Requirements Specification Document(SRS)
Abhilasha Lahigude
 
Acid properties
Acid propertiesAcid properties
Acid properties
Abhilasha Lahigude
 
Public awareness to protect environment
Public awareness to protect environmentPublic awareness to protect environment
Public awareness to protect environment
Abhilasha Lahigude
 
Hotspots of biodiversity
Hotspots of biodiversityHotspots of biodiversity
Hotspots of biodiversity
Abhilasha Lahigude
 
Disaster management(EVS)
Disaster management(EVS)Disaster management(EVS)
Disaster management(EVS)
Abhilasha Lahigude
 
Object oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysisObject oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysis
Abhilasha Lahigude
 
Online property management system design document
Online property management system design documentOnline property management system design document
Online property management system design document
Abhilasha Lahigude
 

More from Abhilasha Lahigude (8)

AJAX
AJAXAJAX
AJAX
 
Leave Management System: Software Requirements Specification Document(SRS)
Leave Management System: Software Requirements Specification Document(SRS) Leave Management System: Software Requirements Specification Document(SRS)
Leave Management System: Software Requirements Specification Document(SRS)
 
Acid properties
Acid propertiesAcid properties
Acid properties
 
Public awareness to protect environment
Public awareness to protect environmentPublic awareness to protect environment
Public awareness to protect environment
 
Hotspots of biodiversity
Hotspots of biodiversityHotspots of biodiversity
Hotspots of biodiversity
 
Disaster management(EVS)
Disaster management(EVS)Disaster management(EVS)
Disaster management(EVS)
 
Object oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysisObject oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysis
 
Online property management system design document
Online property management system design documentOnline property management system design document
Online property management system design document
 

Recently uploaded

ethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.pptethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.ppt
Jayaprasanna4
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
gdsczhcet
 
power quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptxpower quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptx
ViniHema
 
Event Management System Vb Net Project Report.pdf
Event Management System Vb Net  Project Report.pdfEvent Management System Vb Net  Project Report.pdf
Event Management System Vb Net Project Report.pdf
Kamal Acharya
 
Railway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdfRailway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdf
TeeVichai
 
addressing modes in computer architecture
addressing modes  in computer architectureaddressing modes  in computer architecture
addressing modes in computer architecture
ShahidSultan24
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
Kamal Acharya
 
Vaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdfVaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdf
Kamal Acharya
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
ankuprajapati0525
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
VENKATESHvenky89705
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.
PrashantGoswami42
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
Kamal Acharya
 
ethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.pptethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.ppt
Jayaprasanna4
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
AhmedHussein950959
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
MdTanvirMahtab2
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
obonagu
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
Divya Somashekar
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
seandesed
 

Recently uploaded (20)

ethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.pptethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.ppt
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
 
power quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptxpower quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptx
 
Event Management System Vb Net Project Report.pdf
Event Management System Vb Net  Project Report.pdfEvent Management System Vb Net  Project Report.pdf
Event Management System Vb Net Project Report.pdf
 
Railway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdfRailway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdf
 
addressing modes in computer architecture
addressing modes  in computer architectureaddressing modes  in computer architecture
addressing modes in computer architecture
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
 
Vaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdfVaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdf
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
 
Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
 
ethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.pptethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.ppt
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
 

Replication in Distributed Database

  • 1. Replication in DDB Full, no, partial
  • 2.  Replication is useful in improving the availability of data by coping data at multiple sites.  Either a relation or a fragment can be replicated at one or more sites.  Fully redundant databases are those in which every site contains a copy of the entire database.  Depending on the availability and redundancy factor there are three types of replications:  Full replication.  No replication.  Partial replication.
  • 3. Full Replication  The most extreme case is replication of the whole database at every site in the distributed system.  This can improve availability remarkably because the system can continue to operate as long as at least one site is up.  It also improves performance for retrieval of global queries as the result can be obtained locally at any client .  Disadvantage: Slows the update process as a single update must be performed at different databases to keep the copies consistent.
  • 4. No replication  The other extreme from full replication involves having no replication—that is, each fragment is stored at exactly one site.  In this case, all fragments must be disjoint, except for the repetition of primary keys among vertical (or mixed) fragments.  This is also called nonredundant allocation.
  • 5. Partial Replication  Here some fragments of the database may be replicated whereas others may not.  The number of copies of each fragment can range from one up to the total number of sites in the distributed system.  For example: mobile workers—sales forces, financial planners, Carry partially replicated databases on their laptops and synchronize periodically with the server databases.  A description of the replication of fragments is sometimes called a replication schema.
  • 6.  Each fragment—or each copy of a fragment—must be assigned to a particular site in the distributed system. This process is called data distribution (or data allocation).  The choice of sites and the degree of replication depend on the performance and availability goals of the system and on the types and frequencies of transactions submitted at each site.  For example, if high availability is required, transactions can be submitted at any site, and most transactions are retrieval only, a fully replicated database is a good choice.  However, if certain transactions that access particular parts of the database are mostly submitted at a particular site, the corresponding set of fragments can be allocated at that site only.  Data that is accessed at multiple sites can be replicated at those sites. If many updates are performed, it may be useful to limit replication.  Finding an optimal or even a good solution to distributed data allocation is a complex optimization problem.