Client-server and distributed databases
Computer ScienceΒ· Unit 8: DatabasesΒ· 20 min read
1. Client-Server Database Architectureβ β ββββ± 5 min
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.
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.
2. Distributed Database Architectureβ β β βββ± 8 min
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
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.
3. Comparison and Use Case Selectionβ β β βββ± 7 min
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 | ||||||||||||||||||||||||||||||||||||||||||||||
G | l | o | b | a | l | l | a | t | e | n | c | y | ||||||||||||||||||||||||||||||||||||
H | i | g | h | f | o | r | d | i | s | t | a | n | t | u | s | e | r | s | ||||||||||||||||||||||||||||||
L | o | w | , | d | a | t | a | s | t | o | r | e | d | c | l | o | s | e | t | o | u | s | e | r | s | |||||||||||||||||||||||
A | d | m | i | n | i | s | t | r | a | t | i | o | n | |||||||||||||||||||||||||||||||||||
L | o | w | c | o | m | p | l | e | x | i | t | y | , | c | e | n | t | r | a | l | i | z | e | d | m | a | n | a | g | e | m | e | n | t | ||||||||||||||
H | i | g | h | c | o | m | p | l | e | x | i | t | y | , | r | e | q | u | i | r | e | s | c | r | o | s | s | n | o | d | e | c | o | o | r | d | i | n | a | t | i | o | n | |||||
C | o | s | t | |||||||||||||||||||||||||||||||||||||||||||||
L | o | w | e | r | f | o | r | s | m | a | l | l | d | e | p | l | o | y | m | e | n | t | s | |||||||||||||||||||||||||
H | i | g | h | e | r | i | n | f | r | a | s | t | r | u | c | t | u | r | e | a | n | d | e | x | p | e | r | t | i | s | e | c | o | s | t |
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.
4. Common Pitfalls
Wrong move:
Confusing multiple client connections to a single server with a distributed database.
Why:
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 move:
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 move:
Assuming distributed databases are always better than client-server.
Why:
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 move:
Always evaluate suitability relative to the use case, not just the technology: client-server is often the better choice for small deployments.
Wrong move:
Thinking fragmentation and replication are mutually exclusive.
Why:
Most production distributed databases use both techniques to balance performance and availability.
Correct move:
You can fragment data to split it across nodes, then replicate frequently accessed fragments to multiple nodes for better performance.
Wrong move:
Claiming client-server databases are always less secure than distributed.
Why:
Centralized data storage in client-server systems makes it easier to enforce consistent security policies and access controls for small teams.
Correct move:
Security depends on implementation: client-server is often more secure for small deployments due to simpler centralized management.
Wrong move:
Forgetting to mention the user benefit of transparency.
Why:
Many candidates only describe what transparency is, not why it is a useful property for distributed databases.
Correct move:
Always add that transparency simplifies user interaction, as users do not need to know where data is stored to query the database.
5. Quick Reference 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 |
6. Frequently Asked
What is the difference between a distributed database and a distributed file system?
A distributed database stores logically related data with built-in transaction management (ACID properties) and query processing, while a distributed file system only stores unstructured files across nodes with no native database functionality.
When this came up on past exams
AI-estimated based on syllabus patterns β cross-check with official past papers for accuracy. Use only as revision-focus signals.
- 2022 Β· 2
Compare two DB architectures
- 2024 Β· 2
Benefits of distributed DBs
Going deeper
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.
