🏗️

Understanding 2 and 3 Tier Architectures

Aug 20, 2024

2 Tier and 3 Tier Architecture in DBMS

Introduction

  • Importance: Commonly asked in theory exams and crucial for CSE students.
  • Real-life examples provided.

2 Tier Architecture

  • Definition: Two layers - Client Layer and Database Server.
  • Functionality:
    • Client Layer: Interface on client machine helps fetch data from the database server using APIs (e.g., JDBC-ODBC).
    • Communication: May occur over different locations.
    • Application Program: Written in any language, executed on the server.
  • Examples:
    • Indian Railways: Ticket reservation through client machines at stations.
    • Banks: Transactions processed via client machines at bank branches.
  • Advantages:
    • Simplicity: Easy maintenance with limited, authorized clients.
  • Disadvantages:
    • Scalability: Not suited for large numbers of users accessing data 24/7.
    • Security: Direct client-database interaction poses vulnerability risks.

3 Tier Architecture

  • Definition: Three layers - Application Layer (Client), Business Layer, and Data Layer.
  • Functionality:
    • Client Layer: Normal user interface, e.g., IRCTC website.
    • Business Layer: Processes queries, reduces load on database server.
    • Data Layer: Stores data, interacts only through the business layer.
  • Advantages:
    • Scalability: Business layer handles multiple users effectively.
    • Security: User does not directly interact with data; interaction is through the business layer.
  • Disadvantages:
    • Maintenance: More complex due to additional layer.

Comparison and Use Cases

  • 2 Tier Architecture: Used in physical locations like banks and railway stations.
  • 3 Tier Architecture: Used in web applications, emphasizing security and scalability.

Conclusion

  • 3 Tier Architecture is more prevalent due to its adaptability to modern user demands for secure, scalable, and always-available data handling.