0% found this document useful (0 votes)
38 views28 pages

Fundamental of Database Systems

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
38 views28 pages

Fundamental of Database Systems

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 28

Fundamental of

database systems
Unit 1

 Basic Concepts – Data, Information, Records and files. Traditional file –


based Systems-File Based Approach-Limitations of File Based Approach,
Database Approach-Characteristics of Database Approach, Database
Management System (DBMS), Components of DBMS Environment, DBMS
Functions and Components, Advantages and Disadvantages of DBMS,
Roles in the Database Environment - Data and Database Administrator,
Database Designers, Applications Developers and Users.
Database management system

 A database management system (DBMS) is a software application that


enables users to create and manage databases. A DBMS can be used to
store data for a variety of purposes, including websites, customer
information, and inventory tracking.
 There are many different types of DBMSs available, but the most
common is the SQL database. SQL is a standard data manipulation
language that enables users to create, read, update, and delete (CRUD)
data from a database.
 SQL is the most popular DBMS because it is easy to use and provides a
high level of security.
 Data is the raw material that can be processed for any computing
machine. For example − Employee name, Product name, Name of the
student, Marks of the student, Mobile number, Image etc.
 Information is the data that has been converted into more useful or
intelligent form. For example: Report card sheet.
 Record - a record represents a collection of attributes that describe a
real-world entity. A record consists of fields, with each field describing an
attribute of the entity.
 File - a group of related records.
Traditional file based Systems

 File system is collection of data. In this system, user has to write


procedures for managing database. It provides details of data
representation and storage of data. In this –
 Data is stored in files.
 Each file has specific format.
 Programs that use these files depend on knowledge about that format.
 In earlier days, database applications were built on top of file systems.
Advantages of Traditional File
System
 File processing cost less and can be more speed than database.
 File processing design approach was well suited to mainframe hardware
and batch input.
 Companies mainly use file processing to handle large volumes of
structured data on a regular basis.
 It can be more efficient and cost less than DBMS in certain situations.
 Design is simple.
 Customization is easy and efficient.
Disadvantages of Traditional File
System
 Data redundancy and inconsistency.
 Difficulty in accessing data.
 Data isolation – multiple files and formats.
 Integrity problems
 Unauthorized access is not restricted.
 It co-ordinates only physical access.

To overcome disadvantages of File system, DBMS came


in use
Database approach
characteristics
Self-Describing Nature

 One of the most fundamental characteristics of the database approach


is that the database system contains not only the database itself but
also an entire definition or description of the database structure and
constraints also known as metadata of the database.
 This definition is stored within the DBMS catalog, which contains
information like the structure of every file, the sort and storage format
of every data item, and various constraints/rules on the information.
 The knowledge stored within the catalog is named meta-data, and it
describes the structure of the first database The catalog is employed by
the DBMS software and also by database users such as database
administrators who required to know the information about the database
structure.
Isolation between Programs and
Data, and Data Abstraction
 In a traditional file processing system, the structure of database
knowledge files is embedded within the application programs, so any
changes to the structure of a file may require changing all programs that
access that file.
 Against this, DBMS access programs don’t require such changes in most
cases, so independence is achieved between them.
 The structure of knowledge files is stored within the DBMS catalog
separately from the programs that access them. We call this property
program-data independence.
 The characteristic that allows program-data independence and program-
operation independence is known as data abstraction.
Support for Multiple Views of the
Data
 A database sometimes has many users, each of whom may require a
special perspective or view of the database.
 A view could also be a subset of the database, or it’s going to contain
virtual data that is derived from the database files but isn’t explicitly
stored.
 Some users might not get to remember whether the information they
ask for is stored or derived.
 A multi-user DBMS whose users have a spread of distinct applications
must provide facilities for outlining multiple views. This provides many
benefits for large databases such as the Aadhaar database.
Sharing of knowledge and Multi-
user Transaction Processing
 A multi-user DBMS, as its name implies, must allow multiple users to
access the database at an equivalent time or concurrently.
 This is often essential if data for multiple applications is to be integrated
and maintained during a single database such as the latest feature of
Whats App integration with Facebook.
 The DBMS must implement concurrency control in the software to make
sure that several users trying to update equivalent data do so in a
controlled manner in order that the results of the updates are correct.
Key features of DBMS

 Data modeling: A DBMS provides tools for creating and modifying data models, which define
the structure and relationships of the data in a database.
 Data storage and retrieval: A DBMS is responsible for storing and retrieving data from the
database, and can provide various methods for searching and querying the data.
 Concurrency control: A DBMS provides mechanisms for controlling concurrent access to the
database, to ensure that multiple users can access the data without conflicting with each other.
 Data integrity and security: A DBMS provides tools for enforcing data integrity and security
constraints, such as constraints on the values of data and access controls that restrict who can
access the data.
 Backup and recovery: A DBMS provides mechanisms for backing up and recovering the data
in the event of a system failure.
 DBMS can be classified into two types: Relational Database Management System (RDBMS) and
Non-Relational Database Management System (NoSQL or Non-SQL)
 RDBMS: Data is organized in the form of tables and each table has a set of rows and columns.
The data is related to each other through primary and foreign keys.
COMPONENTS OF DATABASE SYSTEM
ENVIRONMENT
 The database system is divided into three components:
 Query Processor,
 Storage Manager,
 Disk Storage
Query Processor

It interprets the requests (queries) received from end user via an


application program into instructions. It also executes the user request
which is received from the DML compiler.
Query Processor contains the following components –
 DML Compiler: It processes the DML statements into low level
instruction (machine language), so that they can be executed.
 DDL Interpreter: It processes the DDL statements into a set of table
containing meta data (data about data).
 Embedded DML Pre-compiler: It processes DML statements
embedded in an application program into procedural calls.
 Query Optimizer: It executes the instruction generated by DML
Compiler.
Storage Manager

Storage Manager is a program that provides an interface between the data stored in the database and the queries received.
It is also known as Database Control System. It maintains the consistency and integrity of the database by applying the
constraints and executing the DCL statements. It is responsible for updating, storing, deleting, and retrieving data in the
database.
It contains the following components –
 Authorization Manager: It ensures role-based access control, i.e,. checks whether the particular person is
privileged to perform the requested operation or not.
 Integrity Manager: It checks the integrity constraints when the database is modified.
 Transaction Manager: It controls concurrent access by performing the operations in a scheduled way that it
receives the transaction. Thus, it ensures that the database remains in the consistent state before and after the
execution of a transaction.
 File Manager: It manages the file space and the data structure used to represent information in the database.
 Buffer Manager: It is responsible for cache memory and the transfer of data between the secondary storage and
main memory.
Disk Storage

 Data Files: It stores the data.


 Data Dictionary: It contains the information about the structure of any
database object. It is the repository of information that governs the
metadata.
 Indices: It provides faster retrieval of data item.
FUNCTIONS OF
DATABASE
MANAGEMENT SYTEM
 Security Management.
 Backup and Recovery Management.
 Data Transformation and Presentation.
 Creating and Modifying Database Schema.
 Inserting, Updating, and Deleting Data.
 Querying and Retrieving Data.
 Implementing Access Control Mechanisms.
 Enforcing Data Integrity Constraints.
Advantages and disadvantages of DBMS
Roles in database environment

 “Actors on the Scene”


 Database Administrators: Administrating the primary (database) and
secondary (DBMS and related software) is the responsibility of
the database administrator (DBA). The DBA is responsible for
authorizing access to the database, coordinating and monitoring its use,
and acquiring software and hardware resources as needed.
 Database Designers: Database Designers are responsible for
identifying the data to be stored in the database and for choosing
appropriate structures to represent and store this data. Database
designers typically interact with each potential group and user and
develop a view of the database that meets the data and processing
requirements of these groups.
 End Users: End users are the people whose jobs require access to the database for
querying, updating, and generating reports; the database primarily exists for their
use. There are several categories of end users:
 Casual end user: Occasionally access the database, but they may need different
information each time. They are typically middle-or high-level managers or other
occasional browsers.
 Naive or Parametric end user: Their main job function revolves around constantly
querying and updating the database, using standard types of queries and updates that
have been carefully programmed and tested. Bank tellers, Reservation Clerks for airlines,
hotels, etc are the example of Naive end users.
 Sophisticated end users: Sophisticated end users include engineers, scientists,
business analysts, and others who thoroughly familiarize themselves with the facilities of
the DBMS so as to implement their applications to meet their complex requirements.
 Stand-alone users: They maintain the personal databases by using ready-made program
packages that provide an easy-to-use menu or graphics-based interfaces.
 Software Engineers: System analysts determines the requirements of
end users, especially naive and parametric end users, and develop
specifications for canned transactions that meet these
requirements.Application programmers implement these specifications
as programs; then they test, debug, document, and maintain these
canned transactions. Such analysts and programmers are
called Software Engineers.
There are several personnel involved in the management of a
database management system, including:
 Database administrators (DBAs): These professionals are
responsible for the overall management of the database system. They
are in charge of setting up, configuring, and maintaining the database,
as well as ensuring its security and performance.
 Database developers: These professionals design and create the
database schema, tables, views, and queries. They work closely with the
DBAs to ensure that the database is designed and implemented to meet
the needs of the organization.
 Data analysts: These professionals use the database to extract and analyze data to
provide insights into business performance, trends, and customer behavior.
 Data architects: These professionals are responsible for designing the overall structure of
the database and ensuring that it is scalable, secure, and optimized for performance.
 Application developers: These professionals create applications that interact with the
database. They work closely with the database developers and DBAs to ensure that the
applications are efficient and use the database resources appropriately.
 System administrators: These professionals are responsible for the hardware and
software infrastructure that supports the database system. They ensure that the database
servers are up and running and that they have adequate resources to support the
database.
 Security personnel: These professionals are responsible for ensuring that the database is
secure and that data is protected from unauthorized access or theft. They work closely
with the DBAs and system administrators to implement security measures and monitor the
database for security breaches.
Several personnel are typically involved in managing and maintaining a Database
Management System (DBMS) to ensure its efficient functioning. The key personnel
include:
 Database Administrators (DBAs): DBAs are responsible for managing and
maintaining the DBMS. They are responsible for tasks such as installing and
configuring the DBMS, designing and implementing the database schema, ensuring
data security and backup, and optimizing database performance.
 Database Developers: Database developers are responsible for developing and
implementing the database applications using the DBMS. They are responsible for
tasks such as designing and implementing the database schema, developing stored
procedures, triggers, and functions, and writing database queries.
 Data Analysts: Data analysts are responsible for analyzing the data stored in the
DBMS to derive insights and trends. They use tools and techniques such as data
mining, statistical analysis, and machine learning to analyze the data and provide
insights to the organization.
 Business Analysts: Business analysts are responsible for
understanding the business requirements of the organization and
translating them into data requirements. They work closely with the
data analysts and DBAs to ensure that the database is designed to meet
the business requirements.
 End Users: End users are the people who use the DBMS to access and
retrieve the data. They can be employees within the organization or
external customers and partners who need access to the data.

Overall, a team of skilled personnel is required to manage and


maintain a DBMS efficiently. Each member of the team plays a
specific role and contributes to the successful operation of the
DBMS.

You might also like