BACS 485 Multi-User Database Processing Lecture Objectives Learn the difference between single and multi-user database processing and understand the importance of multiuser issues Learn the different system architectures that can be used to support multi-user database processing and the pros and cons of each. Teleprocessing Systems The classic mode of supporting multiusers. One computer One CPU “dumb” terminals classic “time sharing” setup bandwidth limitations cause interface to be primitive (text based) Teleprocessing Systems AP1 Terminal 1 Terminal 2 OS cc AP2 DBMS Terminal n AP3 Teleprocessing Computer OS dm DB Client-Server Architecture Client-server involves several computers (at least 2) applications shifted to the client all computers connected in a network the ‘server’ provides a service, the ‘client’ uses the service multiple servers are possible, but each must process a single database to be considered “client-server”. Client-Server Architecture User 1 AP1 OS net Local Area Network AP2 Client 1 Computer User 2 AP2 OS net OS net DBMS OS dm Client 2 Computer Database Server Computer AP2 User n OS net AP3 Client N Computer DB File-Sharing Architecture File-sharing distributes applications and DBMS to user computers. the “server” provides access to files only older and more primitive than client-server typically involves more file transfer overhead files locks during transfer limit usefulness as a transaction processing system useful for group of large read-only files File-Sharing Architecture AP1 DBMS User 1 OS net Local Area Network AP2 Computer 1 User 2 AP2 DBMS OS net OS net OS dm Computer 2 File Server Computer AP2 User n DBMS OS net AP3 Computer 3 DB Distributed Database Architecture The database itself is distributed the logical database is physically spread across several computers requires a distributed database management system (DDBMS) each computer can process requests to its portion of the data and can request data from other nodes all this is transparent to the user note the difference between distributed processing and distributed database. Distributed Database Architecture OS net AP1 DDBMS User 1 DB AP2 OS dm Logical Database Computer 1 OS net User 2 DB DDBMS OS dm Computer 2 Network OS net AP2 User n DDBMS AP3 DB OS dm Computer N Types of Distributed Databases There are 4 basic combinations of distributed database: Nonparatitioned, Nonreplicated Partitioned, Nonreplicated Nonpartitioned, Replicated Partitioned, Replicated These can be applied in a variety of ways causing a continuum of choices. Non-Partitioned Non-Replicated Database AP1 AP2 W X Y Z DBMS/OS Single Processing Computer Partitioned Non-Replicated Database Communication Line AP1 DDBMS/ OS W X DB1 Computer 1 AP2 DDBMS/ OS Computer 2 Y Z DB2 Logical Database Non-Partitioned Replicated Database AP1 AP2 Communication Line DDBMS/ OS Computer 1 AP1 AP2 DDBMS/ OS Computer 2 W X Y Z DB (copy 1) W X Y Z DB (copy 2) Partitioned Replicated Database Communication Line AP1 W DDBMS/ OS X Computer 1 DB1 AP2 DDBMS/ OS Computer 2 Y Y Z DB2 Logical Database Continuum of Distributed Alternatives Unified Database Single Nonpartitioned Nonreplicated Continuum Partitioned Nonreplicated Nonpartitioned Replicated Distributed Databases Partitioned Replicated Increasing Parallelism Increasing Independence Increasing Flexibility Increasing Availability Increasing Cost/Complexity Increasing Difficulty of Control Increasing Security Risk These last 3 are negatives