# Client-server and distributed databases

> Computer Science · CIE A-Level 9618
> Source: https://www.owlsprep.com/study/cie-9618-u8-client-server-and-distributed-databases/

This sub-topic explains core features of client-server and distributed database architectures, compares their trade-offs, and covers key distributed concepts like fragmentation and replication, preparing you for exam questions on architecture evaluation.

**Prerequisites:** [Relational database fundamentals](https://www.owlsprep.com/study/cie-9618-u8-relational-databases/); [Client-server network architecture](https://www.owlsprep.com/study/cie-9618-u3-client-server-networks/)

## Learning objectives

- Distinguish between client-server and distributed database architectures
- Compare advantages and disadvantages of each architecture
- Explain key distributed database concepts (fragmentation, replication, transparency)
- Evaluate suitable architecture for different real-world use cases

## Client-Server Database Architecture

**Client-Server Database** — A database architecture where the entire database is stored on a single central server, and end-user client devices request data from the server over a network. The server handles all query processing, storage and security.

*Example:* - A small clinic's patient record system hosted on a local server, accessed by reception and doctor terminals.

In this model, clients only handle presentation of data to the user and send requests to the server. All core database operations are handled centrally, which simplifies administration for small deployments.

**Worked example:** A small local coffee roaster wants a database to track 500 weekly customer orders, with all 6 employees working from a single shop location. Recommend if client-server is suitable, justifying your answer.

1. Step 1: Identify the key requirements: Small number of users, single location, low budget, simple administration needs.
2. Step 2: Match to client-server properties: Centralized storage is easy to back up, security is managed in one place, and there is no added complexity of distributed infrastructure.
3. Step 3: Conclusion: Client-server architecture is suitable.
4. Step 4: Justification: The small scale and single location mean there is no need for the extra cost and complexity of a distributed system, and client-server aligns with the roaster's requirements.

> **Exam tip:** Always link architecture properties to the specific use case given in the question, don't just list generic pros and cons.

## Distributed Database Architecture

**Distributed Database** — A database architecture where logically related data is split across multiple independent nodes connected by a network, that function together as a single logical database for end users.

- **Fragmentation**: Splitting a table into chunks: horizontal (by rows) or vertical (by columns), each stored on a different node
- **Replication**: Storing copies of the same data on multiple nodes to improve availability and reduce access time
- **Transparency**: Hides the distribution of data from users, who can query the system as if it were a single centralized database

**Worked example:** Explain why a fragmented distributed database is appropriate for a global online streaming service storing user viewing preferences.

1. Step 1: Fragment data by geographic region, so each user's viewing data is stored on the node closest to their location.
2. Step 2: This reduces cross-network traffic, lowers query latency, and improves performance for end users when loading personalized recommendations.
3. Step 3: Fragmentation also supports compliance with regional data regulations, as user data can be stored within the required geographic boundaries.
4. Step 4: The service can easily scale by adding new nodes for new regions without reorganizing the entire database.

## Comparison and Use Case Selection

| Property | Client-Server | Distributed Database |
| --- | --- | --- |
| Scalability | Limited by single server capacity | Highly scalable, add new nodes easily |
| Availability | Single point of failure | High, replication avoids outages |

**Exam command terms**

Common command terms for this topic have specific exam expectations:

- **Compare** — State both similarities and key differences between the two architectures, linking to the question context *(Compare architectures for a small local business)*

- **Justify** — Give explicit reasons that connect the properties of your chosen architecture to the use case requirements *(Justify your choice of architecture for a global bank)*

**Worked example:** A global fintech company requires a database with 99.99% uptime and low latency for users across 15 countries. Compare the suitability of client-server and distributed architectures.

1. Step 1: State requirements: High availability, low global latency, high scalability.
2. Step 2: Evaluate client-server: Client-server has a single point of failure, so it cannot meet the 99.99% uptime requirement. It will have high latency for users far from the central server, and cannot scale to support millions of concurrent global users.
3. Step 3: Evaluate distributed: Distributed databases replicate data across nodes in multiple regions, so if one node fails, other nodes can serve data, meeting the availability requirement. Users connect to the closest node for low latency, and new nodes can be added to support growth.
4. Step 4: Conclusion: Distributed architecture is the suitable choice.

## Common pitfalls

- **Wrong:** Confusing multiple client connections to a single server with a distributed database.
  - Why it fails: Distribution refers to where the database itself is stored, not how many clients connect to it. Multiple clients do not make a system distributed.
  - Correct: Remember: a client-server database can have thousands of clients, but it is still client-server if all data is on one central server.
- **Wrong:** Assuming distributed databases are always better than client-server.
  - Why it fails: Distributed databases have extra overhead from cross-node transaction coordination, which makes them slower and more expensive than client-server for small, single-location use cases.
  - Correct: Always evaluate suitability relative to the use case, not just the technology: client-server is often the better choice for small deployments.
- **Wrong:** Thinking fragmentation and replication are mutually exclusive.
  - Why it fails: Most production distributed databases use both techniques to balance performance and availability.
  - Correct: You can fragment data to split it across nodes, then replicate frequently accessed fragments to multiple nodes for better performance.
- **Wrong:** Claiming client-server databases are always less secure than distributed.
  - Why it fails: Centralized data storage in client-server systems makes it easier to enforce consistent security policies and access controls for small teams.
  - Correct: Security depends on implementation: client-server is often more secure for small deployments due to simpler centralized management.
- **Wrong:** Forgetting to mention the user benefit of transparency.
  - Why it fails: Many candidates only describe what transparency is, not why it is a useful property for distributed databases.
  - Correct: Always add that transparency simplifies user interaction, as users do not need to know where data is stored to query the database.

## Cheatsheet

| Architecture | Core Structure | Key Pros | Key Cons | Best For |
| --- | --- | --- | --- | --- |
| Client-Server | All data on 1 central server, multiple clients | Simple admin, low cost, easy ACID compliance | Single point of failure, limited scalability | Small businesses, single-location teams |
| Distributed | Data split/replicated across multiple nodes | High availability, scalable, low global latency | Complex admin, higher cost, consistency trade-offs | Global applications, large multi-region user bases |

## What's next

Understanding these two core database architectures builds a foundation for more advanced database topics in CIE A-Level 9618. This knowledge is commonly combined with questions on transaction management, cloud database deployment, and large-scale data system design, and comparison questions regularly feature in Paper 2. Mastering the trade-offs between the two architectures will help you score full marks on evaluation questions that make up a significant portion of database section marks.

- [Transactions and concurrency control](https://www.owlsprep.com/study/cie-9618-u8-transactions-and-concurrency-control/)
- [Algorithm design & problem solving](https://www.owlsprep.com/study/cie-9618-u9-overview/)
- [Computational thinking fundamentals](https://www.owlsprep.com/study/cie-9618-u9-computational-thinking-fundamentals/)

---

From [OwlsPrep](https://www.owlsprep.com) — free study guides for A-Level, IB, AP and IGCSE, written against the official syllabus. Canonical page: https://www.owlsprep.com/study/cie-9618-u8-client-server-and-distributed-databases/
