A database is an organized collection of data that is structured to facilitate efficient storage, retrieval, and manipulation. Databases are managed by database management systems (DBMS), which provide tools for defining schemas, inserting and querying data, and enforcing integrity constraints.
A database is characterized by three levels of abstraction:
This separation of concerns is known as data independence: changes at one level do not necessitate changes at another.
A data model is a collection of conceptual tools for describing data, data relationships, data semantics, and consistency constraints.