![Page 1: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/1.jpg)
Database Architectures
10. 03 . 2011
![Page 2: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/2.jpg)
Database System Architectures
• Considerations– Data storage:• Where do the data and DBMS reside?
– Processing:• Where are the application program executed (including
CPU and user interface considerations)?
– Business logic enforcement:• Where are business rules (applications logic) enforced?
![Page 3: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/3.jpg)
• Architectures– Mainframe Architecture– Stand-Alone PC Architecture– File Sharing Architecture– Classic Client/Server Architecture– Three-Tier Client/Server Architecture
![Page 4: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/4.jpg)
Traditional Mainframe Architecture
• Database (or files) resides on a mainframe computer.• Applications are run on the same mainframe computer. e.g.,
COBOL programs or JCL scripts that access the database.• Business rules are enforced in the applications running on
the mainframe.• Multiple users access the applications through simple
terminals (e.g., IBM 3270 terminals or VT220 terminals) that have no processing power of their own. User interface is text-mode screens.
• Example: DB2 database and COBOL application programs running on an IBM 390.
![Page 5: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/5.jpg)
Abbrevs
• Job Control Language (JCL) is a scripting language used on IBM mainframe operating systems to instruct the system on how to run a batch job or start a subsystem. The term "Job Control Language" can also be used generically to refer to all languages which perform these functions
• COBOL is one of the oldest programming languages. Its name is an acronym for COmmon Business-Oriented Language, defining its primary domain in business, finance, and administrative systems for companies and governments.
![Page 6: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/6.jpg)
Mainframe Architecture
• Advantages:– Excellent security and control over applications– High reliability - years of proven MF technology– Relatively low incremental cost per user (just add a
terminal)• Disadvantages:– Unable to effectively serve advanced user interfaces– Users unable to effectively manipulate data outside
of standard applications
![Page 7: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/7.jpg)
![Page 8: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/8.jpg)
Personal Computer - Stand-Alone Database
• Database (or files) reside on a PC - on the hard disk.
• Applications run on the same PC and directly access the database. In such cases, the application is the DBMS.
• Business rules are enforced in the applications running on the PC.
• A single user accesses the applications.• Example: MS Access running on a PC.
![Page 9: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/9.jpg)
![Page 10: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/10.jpg)
File Sharing Architecture
• PCs are connected to a local area network (LAN).• A single file server stores a single copy of the database files.• PCs on the LAN map a drive letter (or volume name) on the
file server.• Applications run on each PC on the LAN and access the same
set of files on the file server. The application is also the DBMS.• Business rules are enforced in the applications - Also, the
applications must handle concurrency control. Possibly by file locking.
• Each user runs a copy of the same application and accesses the same files.
![Page 11: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/11.jpg)
File Sharing Architecture
• Example: Sharing MS Access files on a file server.
• Advantages:– Ability to share data among several users – Costs of storage spread out among users– Most components are now commodity items -
prices falling• Disadvantages:– Limited data sharing ability - a few users at most
![Page 12: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/12.jpg)
![Page 13: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/13.jpg)
Classic Client/Server Architecture
• Client machines:– Run own copy of an operating system.– Run one or more applications using the client machine's
CPU, memory.– Application communicates with DBMS server running on
server machine through a Database Driver– Database driver (middleware) makes a connection to the
DBMS server over a network.– Examples of clients: PCs with MS Windows operating system.
Forms and reports developed in: PowerBuilder, Centura, MS Access, Borland Delphi, Oracle Developer/2000, MS Visual Basic, "C" or "C++", etc.
![Page 14: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/14.jpg)
Classic Client/Server Architecture
• Server Machines:– Run own copy of an operating system.– Run a Database Management System that manages a
database.– Provides a Listening daemon that accepts connections
from client machines and submits transactions to DBMS on behalf of the client machines.
– Examples: Sun Sparc server running UNIX operating system. RDBMS such as Oracle Server, Sybase, Informix, DB2, etc. PC with (multi user) Windows operating system
![Page 15: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/15.jpg)
• Middleware:– Small portion of software that sits between client
and server.– Establishes a connection from the client to the
server and passes commands (e.g., SQL) between them.
![Page 16: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/16.jpg)
• Business rules may be enforced at:1. The client application - so called "Fat Clients".2. Entirely on the database server - so called "Thin
Clients“3. A Mix of both.
• Also called "Two Tier" or "Two Level" Client/Server Architecture
![Page 17: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/17.jpg)
Classic Client/Server Architecture
• Advantages of client/server:– Processing of the entire Database System is spread
out over clients and server.– DBMS can achieve high performance because it is
dedicated to processing transactions (not running applications).
– Client Applications can take full advantage of advanced user interfaces such as Graphical User Interfaces.
![Page 18: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/18.jpg)
• Disadvantages of client/server:– Implementation is more complex because one needs to
deal with middleware and the network.– It is possible the network is not well suited for
client/server communications and may become saturated.
– Additional burden on DBMS server to handle concurrency control, etc.
– As more business rule logic is programmed into the client side applications, they can become unwieldy. Stored procedures and triggers can help in this case.
![Page 19: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/19.jpg)
![Page 20: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/20.jpg)
Review: compare and contrast
![Page 21: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/21.jpg)
Three-Tier Client Server
• Same general situation as traditional client/server.
• Difference is the enforcement of business rules (applications logic) is done in a "middle" layer. Sometimes called "application logic" server.
• Another option is to aggregate transactions from multiple users with a Transaction Monitor
• Is "web friendly". The web browser becomes the user interface on the client.
![Page 22: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/22.jpg)
Three-Tier Client Server
• Advantages:– Centralize applications logic (one place to make
changes)– Relieves clients from having to load up on
applications logic (the "fat client” approach).– Frees up DBMS server to efficiently process
transactions• Disadvantages:– System complexity - extremely complex to program
and debug Security issues
![Page 23: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/23.jpg)
![Page 24: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/24.jpg)
Summary
• The database architecture is the set of specifications, rules, and processes that dictate how data is stored in a database and how data is accessed by components of a system.
• The database architecture describes the organization of all database objects and how they work together. It affects integrity, reliability, scalability, performance, cost, system administration complexity, etc.
![Page 25: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/25.jpg)
• Thanks
![Page 26: Database Architectures 10. 03. 2011. Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where](https://reader035.vdocuments.net/reader035/viewer/2022070410/56649efd5503460f94c107e0/html5/thumbnails/26.jpg)
• Thanks