In this article, you’ll learn about Database Architecture and Data Abstraction.
What is Database Architecture?
DBMS architecture helps in the design, development, implementation, and maintenance of a database. A database stores critical information for a business. Selecting the correct Database Architecture helps in quick and secure access to this data.
Different types of DBMS architecture are:
The simplest of Database Architecture is 1 tier where the Client, Server, and Database all reside on the same machine. Anytime you install a DB in your system and access it to practice SQL queries it is 1 tier architecture. But such architecture is rarely used in production.
A two-tier architecture is a database architecture where
- Presentation layer runs on a client (PC, Mobile, Tablet, etc)
- Data is stored on a Server.
An application interface is called ODBC (Open Database Connectivity) an API that allows the client-side program to call the DBMS. Today most of the DBMS offer ODBC drivers for their DBMS. 2 tier architecture provides added security to the DBMS as it is not exposed to the end-user directly.
The 3-tier schema is an extension of the 2-tier architecture. 3-tier architecture has the following layers
- Presentation layer (your PC, Tablet, Mobile, etc.)
- Application layer (server)
- Database Server
This DBMS architecture contains an Application layer between the user and the DBMS, which is responsible for communicating the user’s request to the DBMS system and send the response from the DBMS to the user.
The application layer(business logic layer) also processes functional logic, constraint, and rules before passing data to the user or down to the DBMS
Three-tier architecture is the most popular DBMS architecture.
The goal of Three-tier architecture is:
- To separate the user applications and physical database
- Proposed to support DBMS characteristics
- Program-data independence
- Support of multiple views of the data
What is Data Abstraction?
Data Abstraction is the property by which we hide the non-essential features from clients. Application developers use abstraction to make the system efficient in terms of retrieval of data and reduce complexity in terms of usability of users.
Data Abstraction is used for the following purposes:
- To provide an abstract view of data.
- To hide complexity from users.
- To simplify user interaction with DBMS.
Different Levels of Data Abstraction in DBMS are as follows:
- Physical Level
The lowest level of abstraction describes how the data are actually stored.
- Logical Level
The Next-higher level of abstraction describes what data are stored in the database and what is relationship exists among those data.
- View Level
The Highest Level of Data Abstraction describes only part of the entire database. Even though the logical level uses a simpler structure, complexity remains because of the variety of information stored in a larger database.