A software system that provides comprehensive facilities for the organization and management of a body of information required for some particular application or group of related applications. This implies some overall logical view of the database in terms of some particular data model, and database management systems are conventionally categorized according to the data model they implement. The system will provide a database language in which schemas and subschemas (user views) can be specified and retrieval and update programs written. There will be facilities to specify and modify the storage schema, for logging, rollback, and recovery. A major objective of a DBMS is to provide data independence within the constraints of its data model. More modern DBMS provide a higher degree of data independence than earlier products where significant schema modification requires the database system to cease to be operational and for the data to be reorganized and reloaded. This can be impractical for large operational systems, a main reason for them becoming out of date and requiring redevelopment.
Well-known DBMS include the relational database systems ORACLE, INGRES, Sybase and Microsoft SQL Server, INFORMIX, mySQL, and PostgreSQL, as well as more recent NoSQL-based systems such as MongoDB. Earlier systems such as IMS, IDMS, and ADABAS, are still widely used in practice. See also object-oriented database, XML database.