0% found this document useful (0 votes)
5 views

DBMS

The document outlines the history and evolution of Database Management Systems (DBMS), starting from the early 1960s with Charles Bachman's Integrated Data Store to the development of relational databases by Edgar Codd and the introduction of SQL in the 1980s. It highlights the transition from file systems to DBMS, emphasizing the advantages of data organization, integrity, security, and concurrent access. Additionally, it describes various types of DBMS, key features, and applications across different sectors.

Uploaded by

Riya Jain
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)
5 views

DBMS

The document outlines the history and evolution of Database Management Systems (DBMS), starting from the early 1960s with Charles Bachman's Integrated Data Store to the development of relational databases by Edgar Codd and the introduction of SQL in the 1980s. It highlights the transition from file systems to DBMS, emphasizing the advantages of data organization, integrity, security, and concurrent access. Additionally, it describes various types of DBMS, key features, and applications across different sectors.

Uploaded by

Riya Jain
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/ 17

History of DBMS

Data is a collection of facts and figures. The data collection was increasing day to day and they
needed to be stored in a device or a safer software. Charles Bachman was the first person to
develop the Integrated Data Store (IDS) which was based on a network data model for which he
was inaugurated with the Turing Award (The most prestigious award which is equivalent to the
Nobel prize in the field of Computer Science.). It was developed in the early 1960s. In the late
1960s, IBM (International Business Machines Corporation) developed the Integrated Management
Systems which is the standard database system used to date in many places. It was developed
based on the hierarchical database model. It was during the year 1970 that the

relational database model

was developed by Edgar Codd. Many of the database models we use today are relational-based. It
was considered the standardized database model from then. The relational model was still in use
by many people in the market. Later during the same decade (1980’s), IBM developed the

Structured Query Language (SQL)

as a part of the R project. It was declared as a standard language for the queries by ISO and ANSI.
The Transaction Management System for processing transactions was also developed by James
Gray for which he was felicitated the Turing Award. Further, there were many other models with
rich features like complex queries, datatypes to insert images, and many others. The Internet Age
has perhaps influenced the data models much more. Data models were developed using object-
oriented programming features, embedding with scripting languages like

Hyper Text Markup Language (HTML)

for queries. With humongous data being available online, DBMS is gaining more significance day
by day.

Techniques for data storage and processing have evolved over the years:

 1950s and early 1960s: Magnetic tapes were developed for data storage. Data processing
tasks such as payroll were automated, with data stored on tapes. Processing of data
consisted of reading data from one or more tapes and writing data to a new tape. Data
could also be input from punched card decks, and output to printers. For example, salary
raises were processed by entering the raises on punched cards and reading the punched
card deck in synchronization with a tape containing the master salary details. The records
had to be in the same sorted order. The salary raises would be added to the salary read
from the master tape, and written to a new tape; the new tape would become the new
master tape. Tapes (and card decks) could be read only sequentially, and data sizes were
much larger than main memory; thus, data processing programs were forced to process
data in a particular order, by reading and merging data from tapes and card decks.

 Late 1960s and 1970s: Widespread use of hard disks in the late 1960s changed the scenario
for data processing greatly, since hard disks allowed direct access to data. The position of
data on disk was immaterial, since any location on disk could be accessed in just tens of
milliseconds. Data were thus freed from the tyranny of sequentiality. With disks, network
and hierarchical databases could be created that allowed data structures such as lists and
trees to be stored on disk. Programmers could construct and manipulate these data
structures. A landmark paper by Codd [1970] defined the relational model and
nonprocedural ways of querying data in the relational model, and relational databases
were born. The simplicity of the relational model and the possibility of hiding
implementation details completely from the programmer were enticing indeed. Codd later
won the prestigious Association of Computing Machinery Turing Award for his work.

 1980s: Although academically interesting, the relational model was not used in practice
initially, because of its perceived performance disadvantages; relational databases could
not match the performance of existing network and hierarchical databases. That changed
with System R, a groundbreaking project at IBM Research that developed techniques for
the construction of an efficient relational database system. Excellent overviews of System
R are provided by Astrahan et al. [1976] and Chamberlin et al. [1981]. The fully functional
System R prototype led to IBM’s first relational database product, SQL/DS. At the same
time, the Ingres system was being developed at the University of California at Berkeley. It
led to a commercial product of the same name. Initial commercial relational database
systems, such as IBM DB2, Oracle, Ingres, and DEC Rdb, played a major role in advancing
techniques for efficient processing of declarative queries. By the early 1980s, relational
databases had become competitive with network and hierarchical database systems even
in the area of performance. Relational databases were so easy to use that they eventually
replaced network and hierarchical databases; programmers using such databases were
forced to deal with many low-level implementation details, and had to code their queries
in a procedural fashion. Most importantly, they had to keep efficiency in mind when
designing their programs, which involved a lot of effort. In contrast, in a relational
database, almost all these low-level tasks are carried out automatically by the database,
leaving the programmer free to work at a logical level. Since attaining dominance in the
1980s, the relational model has reigned supreme among data models. The 1980s also saw
much research on parallel and distributed databases, as well as initial work on object-
oriented databases.

 Early 1990s: The SQL language was designed primarily for decision support applications,
which are query-intensive, yet the mainstay of databases in the 1980s was transaction-
processing applications, which are update-intensive. Decision support and querying re-
emerged as a major application area for databases. Tools for analyzing large amounts of
data saw large growths in usage. Many database vendors introduced parallel database
products in this period. Database vendors also began to add object-relational support to
their databases.

 1990s: The major event of the 1990s was the explosive growth of the World Wide Web.
Databases were deployed much more extensively than ever before. Database systems now
had to support very high transaction-processing rates, as well as very high reliability and
24 × 7 availability (availability 24 hours a day, 7 days a week, meaning no downtime for
scheduled maintenance activities). Database systems also had to support Web interfaces
to data.

 2000s: The first half of the 2000s saw the emerging of XML and the associated query
language XQuery as a new database technology. Although XML is widely used for data
exchange, as well as for storing certain complex data types, relational databases still form
the core of a vast majority of large-scale database applications. In this time period we have
also witnessed the growth in “autonomic-computing/auto-admin” techniques for
minimizing system administration effort. This period also saw a significant growth in use of
open-source database systems, particularly PostgreSQL and MySQL. The latter part of the
decade has seen growth in specialized databases for data analysis, in particular column-
stores, which in effect store each column of a table as a separate array, and highly parallel
database systems designed for analysis of very large data sets. Several novel distributed
data-storage systems have been built to handle the data management requirements of
very large Web sites such as Amazon, Facebook, Google, Microsoft and Yahoo!, and some
of these are now offered as Web services that can be used by application developers.
There has also been substantial work on management and analysis of streaming data, such
as stock-market ticker data or computer network monitoring data. Data-mining techniques
are now widely deployed; example applications include Web-based product-
recommendation systems and automatic placement of relevant advertisements on Web
pages.

Introduction of DBMS (Database Management System) – Set 1

A Database Management System (DBMS) is a software system that is designed to manage and
organize data in a structured manner. It allows users to create, modify, and query a database, as well
as manage the security and access controls for that database.

DBMS provides an environment to store and retrieve the data in convenient and efficient manner.

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 are related to each other through primary and foreign keys.

 NoSQL: Data is organized in the form of key-value pairs, documents, graphs, or column-
based. These are designed to handle large-scale, high-performance scenarios.

A database is a collection of interrelated data which helps in the efficient retrieval, insertion, and
deletion of data from the database and organizes the data in the form of tables, views, schemas,
reports, etc. For Example, a university database organizes the data about students, faculty, admin
staff, etc. which helps in the efficient retrieval, insertion, and deletion of data from it.

Database Languages

 Data Definition Language

 Data Manipulation Language

 Data Control Language

 Transactional Control Language

Data Definition Language

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

Data Manipulation Language

DML is the short name for Data Manipulation Language which deals with data manipulation and
includes most common SQL statements such SELECT, INSERT, UPDATE, DELETE, etc., and it is used to
store, modify, retrieve, delete and update data in a database. Data query language(DQL) is the
subset of “Data Manipulation Language”. The most common command of DQL is SELECT statement.
SELECT statement help on retrieving the data from the table without changing anything in the table.

 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

Data Control Language


DCL is short for Data Control Language which acts as an access specifier to the database.(basically to
grant and revoke permissions to users in the database

 GRANT: grant permissions to the user for running DML(SELECT, INSERT, DELETE,…)
commands on the table

 REVOKE: revoke permissions to the user for running DML(SELECT, INSERT, DELETE,…)
command on the specified table

Transactional Control Language

TCL is short for Transactional Control Language which acts as an manager for all types of
transactional data and all transactions. Some of the command of TCL are

 Roll Back: Used to cancel or Undo changes made in the database

 Commit: It is used to apply or save changes in the database

 Save Point: It is used to save the data on the temporary basis in the database

Data Query Language (DQL):

Data query language(DQL) is the subset of “Data Manipulation Language”. The most common
command of DQL is 1the SELECT statement. SELECT statement helps us in retrieving the data from
the table without changing anything or modifying the table. DQL is very important for retrieval of
essential data from a database.

Database Management System

The software which is used to manage databases 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 the creation, modification, and removal of definitions that define
the organization of data in the database.

 Data Updation: It helps in the insertion, modification, and deletion of the actual data in the
database.

 Data Retrieval: It helps in the 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.

Applications of DBMS:

 Enterprise Information: Sales, accounting, human resources, Manufacturing, online retailers.

 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.

 University: Maintaining the information about student course enrolled information, student
grades, staff roles.
 Airlines: Reservations and schedules.

 Telecommunications: Prepaid, postpaid bills maintance.

Paradigm Shift from File System to DBMS

File System manages data using files on a hard disk. Users are allowed to create, delete, and update
the files according to their requirements. Let us consider the example of file-based University
Management System. Data of students is available to their respective Departments, Academics
Section, Result Section, Accounts Section, Hostel Office, etc. Some of the data is common for all
sections like Roll No, Name, Father Name, Address, and Phone number of students but some data is
available to a particular section only like Hostel allotment number which is a part of the hostel office.
Let us discuss the issues with this system:

 Redundancy of data: Data is said to be redundant if the same data is copied at many places.
If a student wants to change their Phone number, he or she has to get it updated in various
sections. Similarly, old records must be deleted from all sections representing that student.

 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.

 Difficult 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.

 Unauthorized Access: File Systems may lead to unauthorized access to data. If a student gets
access to a file having his marks, he can change it in an unauthorized way.

 No Concurrent Access: The access of the same data by multiple users at the same time is
known as concurrency. The file system does not allow concurrency as data can be accessed
by only one user at a time.

 No Backup and Recovery: The file system does not incorporate any backup and recovery of
data if a file is lost or corrupted.

Advantages of DBMS

 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.

 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.

 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.

 Data security: A DBMS provides tools for managing the security of the data, such as
controlling access to the data and encrypting sensitive data.
 Backup and recovery: A DBMS provides mechanisms for backing up and recovering the data
in the event of a system failure.

 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

 Complexity: DBMS can be complex to set up and maintain, requiring specialized knowledge
and skills.

 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.

 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.

 Cost: The cost of purchasing, maintaining and upgrading a DBMS can be high, especially for
large or complex systems.

 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.

These are the main reasons which made a shift from file system to DBMS. Also, see

A Database Management System (DBMS) is a software system that allows users to create, maintain,
and manage databases. It is a collection of programs that enables users to access and manipulate
data in a database. A DBMS is used to store, retrieve, and manipulate data in a way that provides
security, privacy, and reliability.

Several Types of DBMS

 Relational DBMS (RDBMS): An RDBMS stores data in tables with rows and columns, and uses
SQL (Structured Query Language) to manipulate the data.

 Object-Oriented DBMS (OODBMS): An OODBMS stores data as objects, which can be


manipulated using object-oriented programming languages.

 NoSQL DBMS: A NoSQL DBMS stores data in non-relational data structures, such as key-value
pairs, document-based models, or graph models.

Overall, a DBMS is a powerful tool for managing and manipulating data, and is used in many
industries and applications, such as finance, healthcare, retail, and more.

DBMS Architecture 1-level, 2-Level, 3-Level

A Database stores a lot of critical information to access data quickly and securely. Hence it is
important to select the correct architecture for efficient data management. DBMS Architecture helps
users to get their requests done while connecting to the database. We choose database architecture
depending on several factors like the size of the database, number of users, and relationships
between the users. There are two types of database models that we generally use, logical model and
physical model. Several types of architecture are there in the database which we will deal with in the
next section.
Types of DBMS Architecture

There are several types of DBMS Architecture that we use according to the usage requirements.
Types of DBMS Architecture are discussed here.

 1-Tier Architecture

 2-Tier Architecture

 3-Tier Architecture

1-Tier Architecture

In 1-Tier Architecture the database is directly available to the user, the user can directly sit on the
DBMS and use it that is, the client, server, and Database are all present on the same machine. For
Example: to learn SQL we set up an SQL server and the database on the local system. This enables us
to directly interact with the relational database and execute operations. The industry won’t use this
architecture they logically go for 2-tier an

d 3-
tier Architecture.

DBMS 1-Tier Architecture

Advantages of 1-Tier Architecture

Below mentioned are the advantages of 1-Tier Architecture.

 Simple Architecture: 1-Tier Architecture is the most simple architecture to set up, as only a
single machine is required to maintain it.

 Cost-Effective: No additional hardware is required for implementing 1-Tier Architecture,


which makes it cost-effective.

 Easy to Implement: 1-Tier Architecture can be easily deployed, and hence it is mostly used in
small projects.

2-Tier Architecture
The 2-tier architecture is similar to a basic client-server model. The application at the client end
directly communicates with the database on the server side. APIs like ODBC and JDBC are used for
this interaction. The server side is responsible for providing query processing and transaction
management functionalities. On the client side, the user interfaces and application programs are run.
The application on the client side establishes a connection with the server side to communicate with
the DBMS.
An advantage of this type is that maintenance and understanding are easier, and compatible with
existing systems. However, this model gives poor performance when there are a large number of
users.

DBMS 2-Tier Architecture

Advantages of 2-Tier Architecture

 Easy to Access: 2-Tier Architecture makes easy access to the database, which makes fast
retrieval.

 Scalable: We can scale the database easily, by adding clients or upgrading hardware.

 Low Cost: 2-Tier Architecture is cheaper than 3-Tier Architecture and Multi-Tier Architecture.

 Easy Deployment: 2-Tier Architecture is easier to deploy than 3-Tier Architecture.

 Simple: 2-Tier Architecture is easily understandable as well as simple because of only two
components.

3-Tier Architecture

In 3-Tier Architecture, there is another layer between the client and the server. The client does not
directly communicate with the server. Instead, it interacts with an application server which further
communicates with the database system and then the query processing and transaction
management takes place. This intermediate layer acts as a medium for the exchange of partially
processed data between the server and the client. This type of architecture is used in the case of
large web applications.
Advantages of 3-Tier Architecture

 Enhanced scalability: Scalability is enhanced due to the distributed deployment of


application servers. Now, individual connections need not be made between the client and
server.

 Data Integrity: 3-Tier Architecture maintains Data Integrity. Since there is a middle layer
between the client and the server, data corruption can be avoided/removed.

 Security: 3-Tier Architecture Improves Security. This type of model prevents direct
interaction of the client with the server thereby reducing access to unauthorized data.

Disadvantages of 3-Tier Architecture

 More Complex: 3-Tier Architecture is more complex in comparison to 2-Tier Architecture.


Communication Points are also doubled in 3-Tier Architecture.

 Difficult to Interact: It becomes difficult for this sort of interaction to take place due to the
presence of middle layers.

Introduction of 3-Tier Architecture in DBMS – Set 2

The 3-tier architecture is a commonly used architectural approach in Database Management Systems
(DBMSs) for the design and development of applications that work with databases. The 3-tier
architecture divides an application’s components into three tiers or layers. Each layer has its own set
of responsibilities.

DBMS 3-Tier architecture divides the complete system into three inter-related but independent
modules as shown below:
 Physical Level: At the physical level, the information about the location of database objects
in the data store is kept. Various users of DBMS are unaware of the locations of these
objects.In simple terms,physical level of a database describes how the data is being stored in
secondary storage devices like disks and tapes and also gives insights on additional storage
details.

 Conceptual Level: At conceptual level, data is represented in the form of various database
tables. For Example, STUDENT database may contain STUDENT and COURSE tables which will
be visible to users but users are unaware of their storage.Also referred as logical schema,it
describes what kind of data is to be stored in the database.

 External Level: An external level specifies a view of the data in terms of conceptual level
tables. Each external level view is used to cater to the needs of a particular category of
users. For Example, FACULTY of a university is interested in looking course details of students,
STUDENTS are interested in looking at all details related to academics, accounts, courses and
hostel details as well. So, different views can be generated for different users. The main focus
of external level is data abstraction.

Data Independence

Data independence means a change of data at one level should not affect another level. Two types of
data independence are present in this architecture:

 Physical Data Independence: Any change in the physical location of tables and indexes
should not affect the conceptual level or external view of data. This data independence is
easy to achieve and implemented by most of the DBMS.

 Conceptual Data Independence: The data at conceptual level schema and external level
schema must be independent. This means a change in conceptual schema should not affect
external schema. e.g.; Adding or deleting attributes of a table should not affect the user’s
view of the table. But this type of independence is difficult to achieve as compared to
physical data independence because the changes in conceptual schema are reflected in the
user’s view.

Phases of Database Design

Database designing for a real-world application starts from capturing the requirements to physical
implementation using DBMS software which consists of following steps shown below:
DBMS Phases

 Conceptual Design: The requirements of database are captured using high level conceptual
data model. For Example, the ER model is used for the conceptual design of the database.

 Logical Design: Logical Design represents data in the form of relational model. ER diagram
produced in the conceptual design phase is used to convert the data into the Relational
Model.

 Physical Design: In physical design, data in relational model is implemented using


commercial DBMS like Oracle, DB2.

Advantages of DBMS

DBMS helps in efficient organization of data in database which has following advantages over typical
file system:

 Minimized redundancy and data inconsistency: Data is normalized in DBMS to minimize the
redundancy which helps in keeping data consistent. For Example, student information can be
kept at one place in DBMS and accessed by different users.This minimized redundancy is due
to primary key and foreign keys

 Simplified Data Access: A user need only name of the relation not exact location to access
data, so the process is very simple.

 Multiple data views: Different views of same data can be created to cater the needs of
different users. For Example, faculty salary information can be hidden from student view of
data but shown in admin view.

 Data Security: Only authorized users are allowed to access the data in DBMS. Also, data can
be encrypted by DBMS which makes it secure.

 Concurrent access to data: Data can be accessed concurrently by different users at same
time in DBMS.

 Backup and Recovery mechanism: DBMS backup and recovery mechanism helps to avoid
data loss and data inconsistency in case of catastrophic failures.

3 Tier Schema Architecture in DBMS


In DBMS, the 3-tier architecture is a client-server architecture that separates the user interface,
application processing, and data management into three distinct tiers or layers. The 3-tier
architecture is widely used in modern web applications and enterprise systems because it offers
scalability, flexibility, and security. Here is a brief description of each tier in the 3-tier architecture:

 Presentation Tier: The presentation tier is the user interface or client layer of the
application. It is responsible for presenting data to the user and receiving input from the
user. This tier can be a web browser, mobile app, or desktop application.

 Application Tier: The application tier is the middle layer of the 3-tier architecture. It is
responsible for processing and managing the business logic of the application. This tier
communicates with the presentation tier to receive user input and communicates with the
data management tier to retrieve or store data. This tier may include application servers,
web servers, or APIs.

 Data Management Tier: The data management tier is the bottom layer of the 3-tier
architecture. It is responsible for managing and storing data. This tier can include databases,
data warehouses, or data lakes. The data management tier communicates with the
application tier to receive or store data.

3rd tier Architecture

Benefits of 3-Tier Architecture

The 3-tier architecture in DBMS provides several benefits, including:

 Scalability: The architecture separates the application processing and data management
layers, which allows for easy scalability of each layer independently.

 Flexibility: The architecture allows for the replacement or upgrade of one layer without
affecting the other layers.
 Security: The architecture provides an additional layer of security, as the data management
tier can be isolated from the application and presentation tiers, reducing the risk of
unauthorized access.

Overall, the 3-tier architecture in DBMS is a flexible, scalable, and secure approach to building
modern web applications and enterprise systems. It separates the user interface, application
processing, and data management into distinct layers, providing clear boundaries between each layer
and improving system performance, reliability, and maintainability.

Conclusion

In conclusion, a Database Management System (DBMS) employs the 3-Tier Architecture, a tried-and-
true structure that separates an application into three main layers: Presentation, Application Logic,
and Data. This architectural technique is increasingly popular for creating dependable and
maintainable software systems that communicate with databases because it improves the
modularity, scalability, security, reusability, and flexibility of applications.

Difference between File System and DBMS

The file system is basically a way of arranging the files in a storage medium like a hard disk. The file
system organizes the files and helps in the retrieval of files when they are required. File systems
consist of different files which are grouped into directories. The directories further contain other
folders and files. The file system performs basic operations like management, file naming, giving
access rules, etc.

Example: NTFS(New Technology File System), EXT(Extended File System).

File System

DBMS(Database Management System)

Database Management System is basically software that manages the collection of related data. It is
used for storing data and retrieving the data effectively when it is needed. It also provides proper
security measures for protecting the data from unauthorized access. In Database Management
System the data can be fetched by SQL queries and relational algebra. It also provides mechanisms
for data recovery and data backup.

Example:

Oracle, MySQL, MS SQL server.


DBMS

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


Redundancy system. data.

It doesn’t provide Inbuilt mechanism It provides in house tools for


Backup and for backup and recovery of data if it is backup and recovery of data even if
Recovery lost. it is lost.

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


processing the file system. in DBMS.

There is more data consistency


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

Complexity It is less complex as compared to It has more complexity in handling


Basics File System DBMS

DBMS. as compared to the file system.

DBMS has more security


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

It has a comparatively higher cost


It is less expensive than DBMS.
Cost than a file system.

In DBMS data independence exists,


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

Only one user can access data at a Multiple users can access data at a
User Access time. time.

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

Data is distributed in many files. So, it is Due to centralized nature data


Sharing not easy to share data. sharing is easy

It give details of storage and It hides the internal details of


Data Abstraction representation of data Database

Integrity Integrity Constraints are difficult to Integrity constraints are easy to


Constraints implement implement

To access data in a file , user requires


attributes such as file name, file No such attributes are required.
Attributes location.
Basics File System DBMS

Example Cobol, C++ Oracle, SQL Server

The main difference between a file system and a DBMS (Database Management System) is the way
they organize and manage data.

1. File systems are used to manage files and directories, and provide basic operations for
creating, deleting, renaming, and accessing files. They typically store data in a hierarchical
structure, where files are organized in directories and subdirectories. File systems are simple
and efficient, but they lack the ability to manage complex data relationships and ensure data
consistency.

2. On the other hand, DBMS is a software system designed to manage large amounts of
structured data, and provide advanced operations for storing, retrieving, and manipulating
data. DBMS provides a centralized and organized way of storing data, which can be accessed
and modified by multiple users or applications. DBMS offers advanced features like data
validation, indexing, transactions, concurrency control, and backup and recovery
mechanisms. DBMS ensures data consistency, accuracy, and integrity by enforcing data
constraints, such as primary keys, foreign keys, and data types.

In summary, file systems are suitable for managing small amounts of unstructured data, while DBMS
is designed for managing large amounts of structured data, and offers more advanced features for
ensuring data integrity, security, and performance.

You might also like