Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
A database management system (DBMS) is a software package designed to define, manipulate, retrieve and manage data in a database. A DBMS generally manipulates the data itself, the data format, field names, record structure and file structure. It also defines rules to validate and manipulate this data.
Database management systems are set up on specific data handling concepts, as the practice of administrating a database evolves. The earliest databases only handled individual single pieces of specially formatted data. Today’s more evolved systems can handle different kinds of less formatted data and tie them together in more elaborate ways.
Over time, the models for database management systems have changed considerably. This is a key part of understanding how various DBMS options work.
The earliest types of database management systems consisted mainly of hierarchy and network models.
However, over time, these models became overtaken by something called a relational database. In the relational database model, individual components have attributes that are linked to their identities through a database table design. The rows and columns of an individual database table include those identities and attributes in such a way that traditional structured query language or SQL can be used to pull various kinds of information on these relational models.
Since then, an even newer concept has emerged called NoSQL. Experts suggest that the best way to understand NoSQL is to translate it to mean “not only SQL,” or in other words, using NoSQL broadly to describe systems that are beyond the traditional SQL and relational database models.
It's also important to note that NoSQL is a much more abstract term than the traditional "relational database." In a sense, NoSQL is “not relational,” at least in the traditional sense. One prominent type of NoSQL DBMS is called the object-oriented database model. Here, instead of being composed of relational tables, database systems use object designs to work with the identities and attributes discussed above.
Some of the considerations for NoSQL database design involve the degree of normalization or structuring of data that occurs, and how the database system handles that. Engineers also have to look at tools for consistency and resolution of data throughout the system, to promote uniformity and fix various problems of correlation.
Other types of DBMS models include a graph database model, where graph models are used for semantic queries, and an entity-relational model. These offer further alternatives to traditional relational database design.
Some of the newest types of DBMS can be used where a data center may have a wide disparity of differently formatted or relatively unformatted or “raw” data to work with, where records are not normalized in the conventional way. This and other types of advances have made the world of the DBMS more complex, and have heightened the value of seasoned DB engineers and administrators for modern systems.