View on GitHub

Notes

reference notes

Database System Environment

DB systems refers to an organization of components that define and regulate thr collection, storage, management and use of data. The components of a DB system are:

  1. hardware
  2. software
  3. people
  4. procedures
  5. data

Hardware

Software

People

Procedures

Data

ANSI-SPARC architecture

It consists of 3 layers:

  1. External level, how data is viewed by an individual user.(viewed based on the user’s needs, e.g shanging an attribute name aka aliasing)
  2. Conceptual level, how data is viewed by A community of users.(original data)
  3. Internal level, how data is physically stored.

Objectives of the architecture:

Again, all these objectives are required to achieve data independence.

Database architecture

ANSI-SPARC architecture is a conceptual model of a DBMS. It does not specify how the DB is physically implemented. The physical implementation is called the DB architecture.

a few database system architectures that are presently in use:

Database architectures can be distinguished by examinig the application logic is distributed throught the system. Application logic has 3 components:

… the type of architecture is determined based on where these components are processed.

Traditional mainframe architecture

Personal computer - stand-alone architecture

File sharing architecture

Two-tier client/server architecture

Three-tier client/server architecture

any large wibsites on the internet are built using this architecture.

Qs?

Data is a collection of raw facts. Information is data that has been processed to be meaningful and useful.

Two-tier client-server architecture is a traditional architecture that consists of two layers: the client layer and the server layer. In this architecture, the client application directly communicates with the database server. The client layer provides the user interface and the application logic, while the server layer provides the database management system and the data storage.

Three-tier client-server architecture, on the other hand, is an architecture that consists of three layers: the presentation layer, the application layer, and the data layer. In this architecture, the client layer communicates with the application server, which in turn communicates with the database server. The presentation layer provides the user interface, the application layer provides the application logic, and the data layer provides the data storage and management.

The main difference between the two architectures is that in the three-tier architecture, there is an additional layer between the client and the database server. The application server acts as an intermediary between the client and the database server, providing additional functionality such as application logic, data validation, and security.

The three-tier architecture is more appropriate for the Web because it provides better scalability, reliability, and flexibility compared to the two-tier architecture. The application server in the three-tier architecture allows for load balancing and horizontal scaling, which can help to handle large numbers of concurrent users. Additionally, the three-tier architecture separates the application logic from the data storage, making it easier to modify and upgrade the application without affecting the data storage. This makes it easier to adapt to changing business needs and user requirements.

Furthermore, the three-tier architecture also provides improved security, as the application server can act as a firewall, protecting the database server from direct access by the client. This helps to prevent unauthorized access and improves data privacy.

Overall, the three-tier architecture is more suitable for Web applications, as it provides better scalability, reliability, and security, and enables more flexibility in application development and maintenance.

Data independence refers to the ability to change the database schema without affecting the applications that use the data. There are two types of data independence: logical data independence and physical data independence.