Advanced Database Chapter 7 Assignment PDF
Advanced Database Chapter 7 Assignment PDF
• Distributed DBMS is the software system that permits the management of a Distributed DB
while making the distribution transparent to the user.
• Distributed DB logically related shared data and metadata at several physically independent
sites connected via network.
A DDBS has the following components &types:
• The local DBMS manages its own assigned portion of the entire database. It handles tasks like:
• Example: A university DDBMS might have a local DBMS on each department server. The
Computer Science department's local DBMS would manage student data related to CS courses
and grades.
The two main ways these computer "branches" can share data:
• Strict Sharing (Federated): Imagine libraries agree on one way to find books (global schema).
Each library keeps its own system (LDBMS) but everyone searches the same way. There are
strict rules to access books (centralized policy).
• It's like everyone having to follow the same search method in the central library catalog, even
though each branch might have its own way (differences in data models, constraints, query
language) of keeping track of books on the shelves.
• Flexible Sharing (Multi-database): Imagine researchers gather data from anywhere (local
databases) like libraries, websites, and personal files. There's no one way to organize
everything. Their tool figures out how to access data on the fly (dynamic schema). Each source
keeps its own way of organizing data (local control).
• The GSC may hold details on user permissions to access different parts of the distributed
database. Specific to the fragmentation, replication, and allocation schemas
•In simpler terms, the GSC provides a reference book for the distributed database, while the
Distributed DDBMS acts as the conductor managing the overall operations.
• Distributed commit
• Distributed deadlock
Data Fragmentation:
• Dividing the data into smaller, manageable chunks is called fragmentation.
Types of Fragmentation:
• Horizontal: Splitting data based on rows (e.g., customer records for specific regions).
• Vertical: Splitting data based on columns (e.g., customer name and address in one fragment,
order history in another).
Replication
• Keeping copies of the same data fragment on multiple machines is called replication.
• Replication involves creating copies of data fragments and storing them on multiple machines
in a DDBS.
Example: A company replicates customer data on servers in different countries for global access
during emergencies.
• In full replication the entire database is replicated and in partial replication some selected
part is replicated to some of the sites.
Benefits:
• Improved Availability: If one server fails, users can access data from a replica.
• Enhanced Performance: Users can access data from the closest replica, reducing network
traffic.
Allocation
• Allocation is the process of determining the optimal location for each data fragment in a
DDBS.
Allocation Techniques: where to store each fragment is crucial:
Factors to Consider:
Workload: Where do most queries originate? Fragments containing frequently accessed data
might be placed closer to those users.
•Access Patterns: How is the data typically accessed (by row, by column)? Allocation considers
these patterns for efficient retrieval.
• Network Speed: Fragments are ideally placed on servers with good network connectivity for
quick data transfer.
Key Differences:
Focus: Fragmentation divides data, replication creates copies, and allocation decides storage
location.
Impact on Data: Fragmentation physically splits data, replication increases storage needs,
allocation doesn't alter data itself
• Fragment selection: Identifying which fragments hold the data needed for the query.
Data transfer: Moving data from relevant fragments to a central location or processing it locally.
Query result assembly: Combining results from different fragments to get the final answer.
Distributed transactions: Ensuring data consistency across multiple databases during updates.
Concurrency control: Managing access to shared data fragments to avoid conflicts.
Distributed deadlock: A situation where multiple transactions are waiting on each other,
causing a halt.
Multi-User DBMS
• A multi-user DBMS (Database Management System) is designed multiple users to access and
manipulate the database simultaneously.
File-Server vs. Client-Server Architectures:
In a file-server architecture, the DBMS is centralized on a server, and clients access the
database through file sharing.
The server handles data storage, retrieval, and processing, while clients send requests for data
operations.
In a client-server architecture, the DBMS functionality is divided between the client and server
components.
Clients are responsible for the user interface and application logic, while the server handles
data storage and processing.
The client layer handles the user interface and application logic, while the server layer manages
data storage and processing
Three-Tier Client-Server Architecture:
In a three-tier client-server architecture, the system has three layers: the presentation layer,
application layer, and data layer.
The presentation layer handles the user interface, the application layer contains the business lo
ADVANTAGES of DDBS
Reflects organizational structure
Improved availability
Improved reliability
Improved performance
Economics
Modular growth
Integration
DISADVANTAGES of DDBS
1. Remaining competitive
2. Complexity
3. Cost
4. Security
7. Lack of experience
8. Database design more complex and the data layer manages data storage and
retrieval