UNIT I: CONCEPTUAL DATA MODELING INTRODUCTION Data:Raw fact i.e unprocessed data. Eg : Suresh,25,Chennai Information: Processed data. Eg : The age of suresh is 25
Database: A Database is a collection of related data organized in a way that data can be easily accessed, managed and updated. Any piece of information can be a data, for example name of your school. Database is actualy a place where related piece of information is stored and various operations can be performed on it.
Database Management System (DBMS) The software which is used to manage database is called Database Management System (DBMS). For Example, MySQL , Oracle etc. are popular commercial DBMS used in different applications.
DBMS allows users the following tasks: Data Definition: It helps in creation, modification and removal of definitions that define the organization of data in database. Data Updation : It helps in insertion, modification and deletion of the actual data in the database. Data Retrieval: It helps in retrieval of data from the database which can be used by applications for various purposes. User Administration: It helps in registering and monitoring users, enforcing data security, monitoring performance, maintaining data integrity, dealing with concurrency control and recovering information corrupted by unexpected failure.
DBMS Architecture The DBMS design depends upon its architecture. The basic client/server architecture is used to deal with a large number of PCs, web servers, database servers and other components that are connected with networks. The client/server architecture consists of many PCs and a workstation which are connected via the network. DBMS architecture depends upon how users are connected to the database to get their request done
T ypes of DBMS Architecture Database architecture can be seen as a single tier or multi-tier. But logically, database architecture is of two types like: 2-tier architecture and 3-tier architecture.
1-Tier Architecture In this architecture, the database is directly available to the user. It means the user can directly sit on the DBMS and uses it. Any changes done here will directly be done on the database itself. It doesn't provide a handy tool for end users. The 1-Tier architecture is used for development of the local application, where programmers can directly communicate with the database for the quick response. Tier Architecture in DBMS is the simplest architecture of Database in which the client, server, and Database all reside on the same machine. A simple one tier architecture example would be anytime you install a Database in your system and access it to practice SQL queries. But such architecture is rarely used in production
1-Tier Architecture
2-Tier Architecture The 2-Tier architecture is same as basic client-server. In the two-tier architecture, applications on the client end can directly communicate with the database at the server side. For this interaction, API's like: ODBC, JDBC are used. The user interfaces and application programs are run on the client-side. The server side is responsible to provide the functionalities like: query processing and transaction management. To communicate with the DBMS, client-side application establishes a connection with the server side. A 2 Tier Architecture in DBMS is a Database architecture where the presentation layer runs on a client (PC, Mobile, Tablet, etc.), and data is stored on a server called the second tier. Two tier architecture provides added security to the DBMS as it is not exposed to the enduser directly. It also provides direct and faster communication.
2-Tier Architecture In the above 2 Tier client-server architecture of database management system, we can see that one server is connected with clients 1, 2, and 3.
3-Tier Architecture The 3-Tier architecture contains another layer between the client and server. In this architecture, client can't directly communicate with the server. The application on the client-end interacts with an application server which further communicates with the database system. End user has no idea about the existence of the database beyond the application server. The database also has no idea about any other user beyond the application. The 3-Tier architecture is used in case of large web application.
3-Tier database Architecture design is an extension of the 2-tier client-server architecture. A 3-tier architecture has the following layers: Presentation layer (your PC, Tablet, Mobile, etc.) Application layer (server) Database Server The Application layer resides 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.
The goal of Three Tier client-server architecture is: To separate the user applications and physical database To support DBMS characteristics Program-data independence Supporting multiple views of the datA
Three schema Architecture The three schema architecture is also called ANSI/SPARC architecture or three-level architecture. This framework is used to describe the structure of a specific database system. The three schema architecture is also used to separate the user applications and physical database. The three schema architecture contains three-levels. It breaks the database down into three different categories.
DATABASE ENVIRONMENT One of the primary aims of a database is to supply users with an abstract view of data, hiding a certain element of how data is stored and manipulated. Therefore, the starting point for the design of a database should be an abstract and general description of the information needs of the organization that is to be represented in the database. And hence you will require an environment to store data and make it work as a database
V IEWS OF DATA/DATA ABSTRACTION A major purpose of a database system is to provide users with an abstract view of data. I e ., the system hides certain details of how the data are stored and maintained. Three Schema Architecture: Separates the user applications and physical database.
Schemas can be defined in three levels: ( i ) Internal Level: It has an internal schema which describes physical storage structure of the database. How the data are actually stored uses physical model D escribes the complete details of data storage and access paths for the database.e.g ., customer
(ii) Conceptual Level It has an conceptual schema which describes the structure of whole database What data are stored and what relationships exist among data. Uses high level or implementational data model. Hides the details of physical storage structures and describes datatypes , relationships, operations and constraints. Eg : typecustomer = record customer_id : string; customer_name : string; customer_street : string; customer_city : string; end
(iii) External or View Level includes a number of external schemas or views. Each external schema describes the part of the database and hides the rest. Uses high level or implementation data model. such as an employee’s salary