You are on page 1of 29

CMSC 127

File Processing & Database System

DBMS Concepts

Wk 2 – Lec 4
Topics:

1. What is Data, Database and Database Management System (DBMS)?


2. Popular/well-known DBMS
3. Functions of DBMS
4. Well-known DBMS
5. Advantages & disadvantages of DBMS
6. Structure of DBMS
7. Benefits/Advantages of DBMS
8. Components of a DBMS
9. Users of DBMS
10. Applications of DBMS
11. Why study Databases?
Recall:

Disadvantages of File Processing

• Program-data dependence


Duplication of Data Database Management
Incompatibility of Files
• Limited Data Sharing Solution Approach was
• Lengthy Development Times
• Excessive program maintenance introduced
• Fixed queries and proliferation of applications
• Questionable data integrity

Solution Database
and DBMS
What is Data?

• Data is facts and statistics stored or free flowing over a network, generally it's raw and
unprocessed.
• Data becomes information when it is processed, turning it into something meaningful.

What is database?

• A database is a collection of related data organized Sales &


Accoun
in a way that data can be easily accessed, managed ting & Marke-
and updated. Finance ting

• During early computer days, data was collected and


stored on tapes, which were mostly write-only. They Human Sales &
Resour- Marke-
were slow and bulky, and soon computer scientists ting
ces
realized that they needed a better solution to this
problem.
Source: http://oradbatech.blogspot.com/
What is DBMS?

• DBMS = Database + Management System


• is a set of programs or software tools to store/create, retrieve, update, delete
and manage those data.
• refers to the technology solution used to optimize and manage the storage and
retrieval of data from databases.

Source: https://www.bmc.com/blogs/dbms-database-management-systems/
What is DBMS?

• offers a systematic approach to manage databases via an interface for users as


well as workloads accessing the databases via apps. The management
responsibilities for DBMS encompass information within the databases, the
processes applied to databases (such as access and modification), and the
database’s logic structure.
• facilitates additional administrative operations such as change management,
disaster recovery, compliance, and performance monitoring, among others.
Source: https://www.bmc.com/blogs/dbms-database-management-systems/
Primary Functions of DBMS

1. Data definition – Defining new data structures for a database, removing


data structures from the database, modifying the structure of existing
data. 

2. Update data – Inserting, modifying, and deleting data. 

3. Data retrieval – Obtaining information either for end-user queries and


reports or for processing by applications. 

4. Administration – Registering and monitoring users, enforcing data security,


monitoring performance, maintaining data integrity, dealing with
concurrency control, and recovering information if the system fails. 
Other functions of DBMS

• It provides interface between users & database/s.

• It provides convenient and efficient ways to store, access, update and manage
data.

• It allows sharing and maintains data consistency in case of multiple users.

• It manages very large, integrated collection of data

• It provides protection and security against system failure or tampering


Some of the well-known DBMS
• IMS (hierarchical data model, IBM mainframes) 
• DB2 (relational data model, IBM mainframes) 
• CODASYL (network data model) 
• Oracle (relational data model) 
• SQL Server (relational data model) 
• MariaDB, PostgreSQL, SQLite, Oracle, SAP HANA, dBASE, FoxPro, IBM DB2,
LibreOffice Base, FileMaker Pro, InterSystems Caché 
• MS Access (relational data model) - MS Access is better suited to home and
small office use
• Microsoft SQL Server - more robust database management system than Access
and more suited to enterprise applications such as corporate CRMs & websites
etc.
• MySQL –is a competitor to SQL Server and the world's most popular open
source DBMS. Its GUI tool is called MySQL Workbench, which is similar to SQL
Server Management Studio.
Well-known DBMS:

MS Access is better suited to home and small office use


Microsoft SQL Server is a more robust database MySQL is a competitor to SQL Server and the
management system than Access and more world's most popular open source DBMS. Its GUI
suited to enterprise applications such as tool is called MySQL Workbench, which is similar to
corporate CRMs & websites etc. SQL Server Management Studio.
Key Components of DBMS

1. Software. DBMS is primarily a software system that can be


considered as a management console or an interface to interact with
and manage databases.

2. Data.  DBMS contains operational data, access to database


records and metadata as a resource to perform the necessary
functionality. The data may include files with such as index files,
administrative information, and data dictionaries used to represent
data flows, ownership, structure, and relationships to other records
or objects.

3. Procedures
• refer to general instructions to use a DBMS such as
procedures to setup and install a DBMS, to login and logout
of DBMS software, to manage databases, to take backups,
generating reports etc.
Key Components of DBMS

4. Database languages.  These are components of the DBMS used


to access, modify, store, and retrieve data items from databases;
specify database schema; control user access; and perform other
associated database management operations.

Types of DBMS languages include:


• Data Definition Language (DDL),
• Data Manipulation Language (DML),
• Data Control Language (DCL).
Key Components of DBMS

5. Query processor. 
• a fundamental component of the DBMS,
• acts as an intermediary between users and the DBMS data engine in order to
communicate query requests.
• the query processor also optimizes queries to ensure fast processing and accurate
results.

6. Runtime database manager. 


• A centralized management component of DBMS that handles functionality associated
with runtime data, which is commonly used for context-based database access.
• It checks for user authorization to request the query; processes the approved queries;
devises an optimal strategy for query execution; supports concurrency so that multiple
users can simultaneously work on same databases; and ensures integrity of data
recorded into the databases.
Key Components of DBMS

7. Database manager. 
• allows a set of commands to perform different DBMS operations that include creating,
deleting, backup, restoring, cloning, and other database maintenance tasks.
• The database manager may also be used to update the database with patches from
vendors.

8. Database engine. 
• This is the core software component within the DBMS solution that performs the core
functions associated with data storage and retrieval.
• A database engine is also accessible via APIs that allow users or apps to create, read,
write, and delete records in databases.

9. Reporting. The report generator extracts useful information from DBMS files and displays
it in structured format based on defined specifications. This information may be used for
further analysis, decision making, or business intelligence.
Advantages and Benefits of DBMS

1. Data security.  DBMS allows organizations to enforce policies that enable compliance and
security. The databases are available for appropriate users according to organizational policies.
The DBMS system is also responsible to maintain optimum performance of querying operations
while ensuring the validity, security and consistency of data items updated to a database.

2. Data sharing.  Fast and efficient collaboration between users.

3. Data access and auditing.  Controlled access to databases. Logging associated access
activities allows organizations to audit for security and compliance.

4. Data integration.  Instead of operating island of database resources, a single interface is used
to manage databases with logical and physical relationships.

5. Uniform management and administration.  A single console interface to perform basic


administrative tasks makes the job easier for database admins and IT users.
Advantages and Benefits of DBMS

6. It can handle storage of large amount of data 


7. It allows fast retrieval of data:
8. It reduces application development time. 
9. Improved data quality and consistency
• Data integrity and security
• Allows data sharing
• Improved data accessibility
• Controlled data redundancy
• Planned data redundancy
10. Concurrent access, recovery from crashes. 
11. Program-data independence 
12. Increased application development productivity  and reduced program
maintenance 
13. Improved decision support 
Disadvantages of DBMS

1. Requires new, specialized Personnel 


2. High Installation and management cost
3. Complexity 
4. Conversion Cost (licensed DBMSs are generally costly except MySQL, which is
open source)  
5. Need for Explicit backup and recovery 
6. Organizational Conflict/resistance to change
File Processing DBMS Approach

Program-data dependence program-data independence

duplication of data is common duplication of data is controlled


incompatibility of files uniform data administration
limited data sharing allows data sharing

questionable integrity high data integrity & security

lengthy development time reduced application devt time

excessive program maintenance  


fixed queries  

proliferation of applications  
Situation/Scenario when we need a DBMS 

A company has a large collection (say, 500 GB) of data on employees, departments,
products, sales, and so on. This data is accessed concurrently by several employees. 

Questions about the data must be answered quickly, changes made to the data by different
users must be applied consistently, and access to certain parts of the data (e.g., salaries)
must be restricted. 

We can try to manage the data by storing it in operating system files. This approach has
many drawbacks, including the following: 

1. We probably do not have 500 GB of main memory to hold all the data. We must therefore
store data in a storage device such as a disk or tape and bring relevant parts into main
memory for processing as needed. 

2. Even if we have 500 GB of main memory, on computer systems with 32-bit addressing,
we cannot refer directly to more than about 4 GB of data. We have to program some
method of identifying all data items. 
Situation/Scenario when we need a DBMS 

3. We have to write special programs to answer each question a user may want to ask
about the data. These programs are likely to be complex because of the large volume of
data to be searched. 

4. We must protect the data from inconsistent changes made by different users accessing
the data concurrently. If applications must address the details of such concurrent access,
this adds greatly to their complexity.

5. We must ensure that data is restored to a consistent state if the system crashes while
changes are being made. Operating systems provide only a password mechanism for
security. This is not sufficiently flexible to enforce security policies in which different users
have permission to access different subsets of the data. 
Situation/Scenario when we need a DBMS 

A DBMS is a piece of software designed to make the preceding tasks easier. By storing data
in a DBMS rather than as a collection various files, we can use the DBMS's features to
manage the data in a robust and efficient manner. 

As the volume of data and the number of users grow hundreds of gigabytes of data and
thousands of users are common in current corporate databases DBMS support becomes
indispensable. 
Users of DBMS

Database Administrators (DBA)


• manages the complete database management system
• takes care of the security of the DBMS, it's availability,
• managing the license keys, managing user accounts
and access etc.

Application Programmer or Software Developer


• This user group is involved in developing and designing
the parts of DBMS.

End Users
• End users are the one who store, retrieve, update and
delete data.
Applications of Database

1. Banking: all transactions 


2. Transportation: reservations, schedules 
3. Universities: financial management system, student academic information
system, executive information system, HR information system 
4. Sales: customers, products, purchases 
5. Manufacturing: production, inventory, orders, supply chain 
6. Human resources: employee records, salaries, tax deductions 
7. Sari2x Store: Inventory system, customer relations management system,
supply chain management system
Why Study Databases? 

• Shift from computation to information 


• Datasets increasing in diversity and volume. 
o Digital libraries, interactive video, Human Genome project, EOS
project 
o need for DBMS exploding 

• DBMS encompasses most of CS 


o OS, languages, theory, “AI”, multimedia, logic 
References:

https://www.w3schools.in/dbms/
https://www.studytonight.com/dbms/overview-of-dbms.php
https://www.quackit.com/database/tutorial/
https://beginnersbook.com/2015/04/dbms-introduction/
https://www.tutorialspoint.com/dbms/index.htm
https://www.bmc.com/blogs/dbms-database-management-systems/
Thank you!

You might also like