A database is a collection of information that is organized so that it can easily be accessed, managed, and updated. The data are typically organized to model relevant aspects of reality in a way that supports processes requiring this information.
A database is similar to a data file in that it is a storage place for data. Like a data file, a database does not present information directly to a user; the user runs an application that accesses data from the database and presents it to the user in an understandable format.
Database systems are more powerful than data files. The data is more highly organized. In a well-designed database, there are no duplicate pieces of data that the user or application has to update at the same time. Related pieces of data are grouped together in a single structure or record, and relationships can be defined between these structures and records.
When working with data files, an application must be coded to work with the specific structure of each data file. In contrast, a database contains a catalog that applications use to determine how data is organized. Generic database applications can use the catalog to present users with data from different databases dynamically, without being tied to a specific data format.
A database typically has two components: the files holding the physical database and the database management system (DBMS) software that applications use to access data.
DataBase Management System (DBMS)
Database management systems are specially designed applications that interact with the user, other applications, and the database itself to capture and analyze data. A general-purpose database management system (DBMS) is a software system designed to allow the definition, creation, querying, update, and administration of databases. Well-known DBMSs include MySQL, PostgreSQL, SQLite, Microsoft SQL Server, Oracle, SAP, dBASE, FoxPro, IBM DB2, LibreOffice Base and FileMaker Pro. A database is not generally portable across different DBMS, but different DBMSs can interoperate by using standards such as SQL and ODBC or JDBC to allow a single application to work with more than one database.
A “database management system” is a suite of computer software providing the interface between users and a database or databases. Because they are so closely related, the term “database” when used casually often refers to both a DBMS and the data it manipulates.
Relational DataBase Management System (RDBMS)
A relational database management system (RDBMS) is a database management system (DBMS) that is based on the relational model as introduced by E. F. Codd, of IBM’s San Jose Research Laboratory. Many popular databases currently in use are based on the relational database model. The most popular RDBMS are Microsoft SQL Server, Oracle, MySQL, IBM DB2 and PostgreSQL.
The three leading open source database management system are MySQL, PostgreSQL, and SQLite.
DBMS vs. RDBMS
- Relationship among tables is maintained in a RDBMS whereas this not the case DBMS as it is used to manage the database.
- DBMS accepts the ‘flat file’ data that means there is no relation among different data whereas RDBMS does not accepts this type of design.
- DBMS is used for simpler business applications whereas RDBMS is used for more complex applications.
- Although the foreign key concept is supported by both DBMS and RDBMS but its only RDBMS that enforces the rules.
- RDBMS solution is required by large sets of data whereas small sets of data can be managed by DBMS.