DataBase Management System
DataBase Management System
A DBMS makes it possible for end users to create, read, update and delete data in a
database. The DBMS essentially serves as an interface between the database and end
users or application programs, ensuring that data is consistently organized and remains
easily accessible.
The DBMS manages three important things: the data, the database engine that allows
data to be accessed, locked and modified -- and the database schema, which defines the
database’s logical structure. These three foundational elements help
provide concurrency, security, data integrity and uniform administration procedures.
Typical database administration tasks supported by the DBMS include change
management, performance monitoring/tuning and backup and recovery. Many database
management systems are also responsible for automated rollbacks, restarts and
recovery as well as the logging and auditing of activity.
The DBMS is perhaps most useful for providing a centralized view of data that can be
accessed by multiple users, from multiple locations, in a controlled manner. A DBMS
can limit what data the end user sees, as well as how that end user can view the data,
providing many views of a single database schema. End users and software programs
are free from having to understand where the data is physically located or on what
type of storage media it resides because the DBMS handles all requests.
The DBMS can offer both logical and physical data independence. That means it can
protect users and applications from needing to know where data is stored or having to
be concerned about changes to the physical structure of data ( storage and hardware).
As long as programs use the application programming interface ( API) for the database
that is provided by the DBMS, developers won't have to modify programs just
because changes have been made to the database.
With relational DBMSs (RDBMSs), this API is SQL, a standard programming language
for defining, protecting and accessing data in a RDBMS.
Popular types of DBMSes
Relational database management system (RDMS) - adaptable to most use cases, but
RDBMS Tier-1 products can be quite expensive.
NoSQL DBMS - well-suited for loosely defined data structures that may evolve over
time.
Cloud-based data management system - the cloud service provider is responsible for
providing and maintaining the DBMS.
Advantages of a DBMS
Using a DBMS to store and manage data comes with advantages, but also overhead.
One of the biggest advantages of using a DBMS is that it lets end users and
application programmers access and use the same data while managing data integrity.
Data is better protected and maintained when it can be shared using a DBMS instead
of creating new iterations of the same data stored in new files for every new
application. The DBMS provides a central store of data that can be accessed by
multiple users in a controlled manner.
Central storage and management of data within the DBMS provides:
A DBMS can also provide many views of a single database schema. A view defines
what data the user sees and how that user sees the data. The DBMS provides a level of
abstraction between the conceptual schema that defines the logical structure of the
database and the physical schema that describes the files, indexes and other physical
mechanisms used by the database. When a DBMS is used, systems can be modified
much more easily when business requirements change. New categories of data can be
added to the database without disrupting the existing system and applications can be
insulated from how data is structured and stored.