Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
3 views5 pages

Introduction of DBMS

A Database Management System (DBMS) is software that manages, organizes, and retrieves data efficiently, supporting data-driven decision-making across various applications. It offers features such as data modeling, integrity, security, and backup, and comes in types like RDBMS, NoSQL, and OODBMS. DBMS provides advantages over traditional file systems, including reduced redundancy, improved security, and concurrent access, although it can be complex and costly to implement.

Uploaded by

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

Introduction of DBMS

A Database Management System (DBMS) is software that manages, organizes, and retrieves data efficiently, supporting data-driven decision-making across various applications. It offers features such as data modeling, integrity, security, and backup, and comes in types like RDBMS, NoSQL, and OODBMS. DBMS provides advantages over traditional file systems, including reduced redundancy, improved security, and concurrent access, although it can be complex and costly to implement.

Uploaded by

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

Introduction of DBMS (Database Management System)



A Database Management System (DBMS) is a software solution designed to efficiently manage, organize, and
retrieve data in a structured manner. It serves as a critical component in modern computing, enabling
organizations to store, manipulate, and secure their data effectively. From small applications to enterprise
systems, DBMS plays a vital role in supporting data-driven decision-making and operational efficiency.
What is a DBMS?
A DBMS is a system that allows users to create, modify, and query databases while ensuring data integrity,
security, and efficient data access. Unlike traditional file systems, DBMS minimizes data redundancy, prevents
inconsistencies, and simplifies data management with features like concurrent access and backup mechanisms. It
organizes data into tables, views, schemas, and reports, providing a structured approach to data management.
Example:
A university database can store and manage student information, faculty records, and administrative data,
allowing seamless retrieval, insertion, and deletion of information as required.
Key Features of DBMS
1. Data Modeling: Tools to create and modify data models, defining the structure and relationships within the
database.
2. Data Storage and Retrieval: Efficient mechanisms for storing data and executing queries to retrieve it
quickly.
3. Concurrency Control: Ensures multiple users can access the database simultaneously without conflicts.
4. Data Integrity and Security: Enforces rules to maintain accurate and secure data, including access
controls and encryption.
5. Backup and Recovery: Protects data with regular backups and enables recovery in case of system failures.
Types of DBMS
There are several types of Database Management Systems (DBMS), each tailored to different data structures,
scalability requirements, and application needs. The most common types are as follows:
1. Relational Database Management System (RDBMS)
RDBMS organizes data into tables (relations) composed of rows and columns. It uses primary keys to uniquely
identify rows and foreign keys to establish relationships between tables. Queries are written in SQL
(Structured Query Language), which allows for efficient data manipulation and retrieval.
Examples: MySQL, Oracle, Microsoft SQL Server and Postgre SQL.
2. NoSQL DBMS
NoSQL systems are designed to handle large-scale data and provide high performance for scenarios where
relational models might be restrictive. They store data in various non-relational formats, such as key-value pairs,
documents, graphs, or columns. These flexible data models enable rapid scaling and are well-suited for
unstructured or semi-structured data.
Examples: MongoDB, Cassandra, DynamoDB and Redis.
3. Object-Oriented DBMS (OODBMS)
OODBMS integrates object-oriented programming concepts into the database environment, allowing data to be
stored as objects. This approach supports complex data types and relationships, making it ideal for applications
requiring advanced data modeling and real-world simulations.
Examples: ObjectDB, db4o.
Database Languages
Database languages are specialized sets of commands and instructions used to define, manipulate, and control
data within a database. Each language type plays a distinct role in database management, ensuring efficient
storage, retrieval, and security of data. The primary database languages include:
1. Data Definition Language (DDL)
DDL is the short name for Data Definition Language, which deals with database schemas and descriptions, of
how the data should reside in the database.
 CREATE: to create a database and its objects like (table, index, views, store procedure, function, and
triggers)
 ALTER: alters the structure of the existing database
 DROP: delete objects from the database
 TRUNCATE: remove all records from a table, including all spaces allocated for the records are removed
 COMMENT: add comments to the data dictionary
 RENAME: rename an object
2. Data Manipulation Language (DML)
DML focuses on manipulating the data stored in the database, enabling users to retrieve, add, update, and delete
data.
 SELECT: retrieve data from a database
 INSERT: insert data into a table
 UPDATE: updates existing data within a table
 DELETE: Delete all records from a database table
 MERGE: UPSERT operation (insert or update)
 CALL: call a PL/SQL or Java subprogram
 EXPLAIN PLAN: interpretation of the data access path
 LOCK TABLE: concurrency Control
3. Data Control Language (DCL)
DCL commands manage access permissions, ensuring data security by controlling who can perform certain
actions on the database.
 GRANT: Provides specific privileges to a user (e.g., SELECT, INSERT).
 REVOKE: Removes previously granted permissions from a user.
4. Transaction Control Language (TCL)
TCL commands oversee transactional data to maintain consistency, reliability, and atomicity.
 ROLLBACK: Undoes changes made during a transaction.
 COMMIT: Saves all changes made during a transaction.
 SAVEPOINT: Sets a point within a transaction to which one can later roll back.
5. Data Query Language (DQL)
DQL is a subset of DML, specifically focused on data retrieval.
 SELECT: The primary DQL command, used to query data from the database without altering its structure
or contents.
Paradigm Shift from File System to DBMS
Before the advent of modern DBMS, data was managed using basic file systems on hard drives. While this
approach allowed users to store, retrieve, and update files as needed, it came with numerous challenges.
A typical example can be seen in a file-based university management system, where data was stored in separate
sections such as Departments, Academics, Results, Accounts, and Hostels. Certain information like student
names and phone numbers was repeated across multiple files, leading to the following issues:
1. Redundancy of data
When the same data exists in multiple places, any update must be manually repeated everywhere. For instance,
if a student changes their phone number, it must be updated across all sections. Failure to do so leads to
unnecessary duplication and wasted storage.
2. Inconsistency of Data
Data is said to be inconsistent if multiple copies of the same data do not match each other. If the Phone number
is different in Accounts Section and Academics Section, it will be inconsistent. Inconsistency may be because of
typing errors or not updating all copies of the same data.
3. Complex Data Access
A user should know the exact location of the file to access data, so the process is very cumbersome and tedious.
If the user wants to search the student hostel allotment number of a student from 10000 unsorted students’
records, how difficult it can be.
4. Lack of Security
File systems provided limited control over who could access certain data. A student who gained access to a file
with grades might easily alter it without proper authorization, compromising data integrity.
5. No Concurrent Access
File systems were not designed for multiple users working at the same time. If one user was editing a file, others
had to wait, which hindered collaboration and slowed down workflows.
6. No Backup and Recovery
File systems lacked built-in mechanisms for creating backups or recovering data after a loss. If a file was
accidentally deleted or corrupted, there was no easy way to restore it, potentially causing permanent data loss.
Advantages of DBMS
1. Data organization: A DBMS allows for the organization and storage of data in a structured manner,
making it easy to retrieve and query the data as needed.
2. Data integrity: A DBMS provides mechanisms for enforcing data integrity constraints, such as constraints
on the values of data and access controls that restrict who can access the data.
3. Concurrent access: 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.
4. Data security: A DBMS provides tools for managing the security of the data, such as controlling access to
the data and encrypting sensitive data.
5. Backup and recovery: A DBMS provides mechanisms for backing up and recovering the data in the event
of a system failure.
6. Data sharing: A DBMS allows multiple users to access and share the same data, which can be useful in a
collaborative work environment.
Disadvantages of DBMS
1. Complexity: DBMS can be complex to set up and maintain, requiring specialized knowledge and skills.
2. Performance overhead: The use of a DBMS can add overhead to the performance of an application,
especially in cases where high levels of concurrency are required.
3. Scalability: The use of a DBMS can limit the scalability of an application, since it requires the use of
locking and other synchronization mechanisms to ensure data consistency.
4. Cost: The cost of purchasing, maintaining and upgrading a DBMS can be high, especially for large or
complex systems.
5. Limited Use Cases: Not all use cases are suitable for a DBMS, some solutions don't need high reliability,
consistency or security and may be better served by other types of data storage.
Applications of DBMS
1. Enterprise Information: Sales, accounting, human resources, Manufacturing, online retailers.
2. Banking and Finance Sector: Banks maintaining the customer details, accounts, loans, banking
transactions, credit card transactions. Finance: Storing the information about sales and holdings, purchasing
of financial stocks and bonds.
3. University: Maintaining the information about student course enrolled information, student grades, staff
roles.
4. Airlines: Reservations and schedules.
5. Telecommunications: Prepaid, postpaid bills maintenance.

Difference Between File System and DBMS


Basics File System DBMS

The file system is a way of arranging the


DBMS is software for managing the
files in a storage medium within a
database.
Structure computer.

Data Redundant data can be present in a file


In DBMS there is no redundant data.
Redundancy system.

Backup and It doesn't provide Inbuilt mechanism for It provides in house tools for backup and
Recovery backup and recovery of data if it is lost. recovery of data even if it is lost.

Query There is no efficient query processing in Efficient query processing is there in


processing the file system. DBMS.

There is less data consistency in the file There is more data consistency because of
Consistency system. the process of normalization .

It has more complexity in handling as


It is less complex as compared to DBMS.
Complexity compared to the file system.

Security File systems provide less security in DBMS has more security mechanisms as
Constraints comparison to DBMS. compared to file systems.

It has a comparatively higher cost than a


It is less expensive than DBMS.
Cost file system.

In DBMS data independence exists,


mainly of two types:
There is no data independence.
Data 1) Logical Data Independence .
Independence 2)Physical Data Independence.

User Access Only one user can access data at a time. Multiple users can access data at a time.
Basics File System DBMS

The users are not required to write The user has to write procedures for
Meaning procedures. managing databases

Data is distributed in many files. So, it is Due to centralized nature data sharing is
Sharing not easy to share data. easy

Data It give details of storage and representation


It hides the internal details of Database
Abstraction of data

Integrity Integrity Constraints are difficult to Integrity constraints are easy to


Constraints implement implement

To access data in a file , user requires


No such attributes are required.
Attribute s attributes such as file name, file location.

Example Cobol , C++ Oracle , SQL Server

Different Types of Database Users


A Database User is defined as a person who interacts with data daily for updating, reading, and modifying the
given data. Database users can access and retrieve data from the database through the Database Management
System (DBMS) applications and interfaces.
Types of Database Users
Database users are categorized based on their interaction with the database. There are seven types of database
users in DBMS. Below mentioned are the types of database users:
1. Database Administrator (DBA)
A Database Administrator (DBA) defines the schema and manages all three levels of the database architecture.
They create user accounts, control access, and ensure data security by authorizing only trusted users. DBAs are
also responsible for handling security breaches and optimizing system performance.
 DBA also monitors the recovery and backup and provides technical support.
 The DBA has a DBA account in the DBMS which is called a system or superuser account.
 DBA repairs damage caused due to hardware and/or software failures.
 DBA is the one having privileges to perform DCL (Data Control Language) operations such as GRANT
and REVOKE, to allow/restrict a particular user from accessing the database.
2. Naive / Parametric End Users
Parametric End Users are the unsophisticated who lacks DBMS knowledge but they frequently use the database
applications in their daily life to get the desired results. For example, Railway’s ticket booking users, Clerks in
any bank are naive user because they lacks DBMS knowledge but they still use the database.
3. A System Analyst
A system Analyst is a user who analyzes the requirements of parametric end users. They check whether all the
requirements of end users are satisfied.
4. Sophisticated Users
Sophisticated users like engineers or analysts interact directly with the database using SQL queries. They don't
write full application code but use the query processor to access and manipulate data. These users develop
custom database applications based on their specific needs.
5. Database Designers
Database Designers create the structure of a database, including tables, views, indexes, triggers, and constraints.
They decide what data to store and how it should be related based on user requirements. Their design is
finalized before the database is built or populated with data.
6. Application Programmers
Application Programmers, also known as System Analysts or Software Engineers, write backend code for
application programs. They use languages like C, Visual Basic, COBOL, etc., to design, test, and maintain
programs. These programs, called "canned transactions," help naive users interact with the database efficiently.
7. Casual Users / Temporary Users
Casual Users are the users who occasionally use/access the database but each time when they access the
database they require the new information, for example, Middle or higher level manager.
8. Specialized users
Specialized users are sophisticated users who write specialized database application that does not fit into the
traditional data-processing framework. Among these applications are computer aided-design systems,
knowledge-base and expert systems etc.

You might also like