Below is a complete, exam-oriented explanation of Server System Architectures in Database Systems.
This topic is part of Parallel Databases / Distributed Systems / DBMS Architecture and is a common 10–15 mark question.
⭐ SERVER SYSTEM ARCHITECTURES
A Server System Architecture defines how a database server is internally structured to process requests, manage data, and interact with clients.
It determines:
- How queries are processed
- How storage and memory are managed
- How concurrency & transactions work
- How scalability and parallelism are achieved
Modern DBMS servers are designed to efficiently handle multiple users, high workloads, and large datasets.
Server system architectures are broadly classified into:
- Single Server (Monolithic) Architecture
- Two-tier & Three-tier Server Architecture
- Parallel Server Architectures
- Distributed & Multiserver Architecture
- Cluster-based Architectures
- Classic SMP, MPP, Shared Memory/Shared Disk/Shared Nothing Architectures
- Cloud/Virtualized Server Architectures (Modern extension)
Let’s discuss them in depth.
⭐ 1. SINGLE SERVER (MONOLITHIC) ARCHITECTURE
✔ Features:
- Entire DBMS runs in a single process
- All components (query parser, optimizer, execution engine, storage manager, transaction manager) are inside one server
- Uses one CPU or a small number of CPUs
- All users connect to the same central database server
✔ Advantages:
- Simple design
- Easy to maintain
- Strong consistency
- Ideal for small organizations
✔ Disadvantages:
- Limited scalability
- Single point of failure
- Performance bottleneck with many users
✔ Examples:
- Early versions of MySQL, PostgreSQL
- Local desktop databases (SQLite)
⭐ 2. CLIENT–SERVER ARCHITECTURE (Traditional Model)
Two main layers:
✔ Client Tier
- Provides UI, forms, reports
- Sends SQL queries to server
- Receives results
✔ Server Tier
- Parses queries
- Optimizes execution
- Manages transactions and concurrency
- Maintains data on disk
- Sends results back to client
Types:
- Two-tier architecture
- Three-tier architecture
⭐ 3. PARALLEL SERVER ARCHITECTURES
Parallel server systems are designed to process large amounts of data by using multiple processors simultaneously.
They include:
⭐ A. Shared Memory Architecture (SMP)
- All processors share common memory and disk
- Fast communication between processors
- Low-latency access
- Good for small parallelism
Limitation: Memory contention & limited scalability
Examples: SQL Server SMP, Oracle SMP
⭐ B. Shared Disk Architecture
- Each processor has private memory
- Disks are shared
- Requires global lock manager & cache coherence protocols
Advantages:
- High availability
- Easy failover
Limitations:
- Disk becomes bottleneck
- Overhead of synchronizing caches
Examples: Oracle RAC, IBM DB2 PureScale
⭐ C. Shared Nothing Architecture (MPP)
- Each node has its own disk + memory + CPU
- Nodes communicate via high-speed network
- Ideal for large parallel processing
Advantages:
- Linear scalability
- Fault isolation
- Highest performance for large data
Examples:
- Teradata
- Amazon Redshift
- Google BigQuery
- Greenplum
- Cassandra
⭐ 4. DISTRIBUTED SERVER ARCHITECTURE
Database is stored across multiple geographically separated sites.
✔ Types:
- Homogeneous Distributed Systems
- Heterogeneous Distributed Systems
- Federated/Multi-DB Architectures
✔ Features:
- Local autonomy
- Distributed query processing
- Replication & fragmentation strategies
- Better reliability and fault tolerance
✔ Use Cases:
- Global enterprises
- Multi-branch institutions
⭐ 5. CLUSTER-BASED SERVER ARCHITECTURE
Multiple servers work together as a cluster.
✔ Features:
- Nodes share workload
- Support load balancing
- High availability (failover clusters)
- Often used in both OLTP and OLAP
Examples:
- Oracle RAC
- SQL Server AlwaysOn Availability Groups
- MySQL Galera Cluster
⭐ 6. CLOUD DATABASE SERVER ARCHITECTURE (Modern & Important)
Cloud DBMS run on distributed cloud infrastructure:
- Horizontally scalable
- On-demand resource allocation
- Managed services (DBaaS: Database-as-a-Service)
Examples:
- Amazon RDS
- Azure SQL Database
- Google Cloud SQL
- Snowflake
Features:
- Elastic scaling
- Distributed storage
- Pay-as-you-go model
- Automatic backups, patching, failover
⭐ 7. DATABASE SERVER COMPONENT ARCHITECTURE (Internal)
A database server typically consists of these core subsystems:
✔ 1. Query Processor
- Query Parser
- Query Optimizer
- Execution Engine
✔ 2. Storage Manager
- Disk manager
- File manager
- Buffer manager
- Index manager
✔ 3. Transaction Manager
- Concurrency control manager
- Lock manager
- Log manager
- Recovery manager
✔ 4. Communication Manager
- Manages client connections
- Implements protocols (TCP/IP, RPC)
✔ 5. Metadata Catalog (Data Dictionary)
- Stores schema, tables, indexes, constraints
These components work together inside any database server architecture.
⭐ 8. Comparison of Server System Architectures
| Architecture | Scalability | Complexity | Fault Tolerance | Best Use |
|---|---|---|---|---|
| Monolithic | Low | Low | Low | Small apps |
| Client–Server | Medium | Medium | Medium | Enterprise DB |
| Shared Memory | Low–Medium | Low | Medium | OLTP |
| Shared Disk | Medium | High | High | Clusters |
| Shared Nothing | High | High | High | Data warehouses/Big data |
| Distributed DBMS | High | High | High | Multisite DB |
| Cloud DBMS | Very High | Low (managed) | High | Modern scalable apps |
⭐ Perfect 5–6 Mark Short Answer
Server system architectures describe how a DBMS server organizes its processors, memory, storage, and communication roles. Major architectures include:
- Monolithic Centralized Servers, where all components run on a single machine.
- Client–Server Architecture, where clients send SQL requests and the server processes them.
- Parallel Architectures such as Shared Memory, Shared Disk, and Shared Nothing, used for high-performance querying.
- Distributed Architectures where databases and computation are distributed across multiple sites.
- Cluster and Cloud Architectures, which provide scalability, fault tolerance, and high availability.
These architectures determine performance, scalability, and reliability of a database system.
