Database Systems
Client-Server & Distributed Environment
Lecture 09
visit tShahab.blogspot.com for more.
1
Client-Server Architecture
• What is a Server?
• What is a Client?
• Relation between server and client.
• Sharing hardware resources.
• Sharing software resources.
• Sharing load and providing security.
visit tShahab.blogspot.com for more.
2
Client-Server Architecture
• Thin Server
• Thick Server
• Thin Client
• Thick Client
visit tShahab.blogspot.com for more.
3
Partitioning an Application
• No one optimal client/server architecture.
• Presentation Logic:
• Input
• Output
• Processing Logic:
• I/O processing
• Business rules
• Data management
• Storage Logic:
• Data storage and retrievals
visit tShahab.blogspot.com for more.
4
Two-Tier Architecture
• Adding processing logic on client; creating thick client.
• Adding processing logic on server;
Creating thick server.
• Distributing processing logic
Between both client and server.
visit tShahab.blogspot.com for more.
5
Database in Two-Tier Architecture
visit tShahab.blogspot.com for more.
6
Three-Tier Architecture
• Storage logic for database server.
• Processing or business logic for application server.
• Presentation logic for client.
visit tShahab.blogspot.com for more.
7
Database in Three-Tier Architecture
visit tShahab.blogspot.com for more.
8
N-Tier Architecture
• Storage logic for database server.
• Processing or business logic for application server.
• Additional processing logic for web services.
• Presentation logic for client.
visit tShahab.blogspot.com for more.
9
Database in N-Tier Architecture
visit tShahab.blogspot.com for more.
10
ODBC Connections
• Open Database Connectivity (ODBC) is a standard programming language
middleware application programming interface (API) for accessing database
management systems (DBMS)
• Uses an ODBC driver as a translation layer between the application and the DBMS
• Drivers available for most platforms and most databases
visit tShahab.blogspot.com for more.
11
ODBC Bridges
• A bridge is a special kind of driver: a driver that uses another driver-based
technology.
• ODBC-to-JDBC bridge
• JDBC-to-ODBC bridge
• OLE DB-to-ODBC bridge
• ADO.NET-to-ODBC bridge
visit tShahab.blogspot.com for more.
12