Eroxl's Notes
Database

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:

  1. Physical Level — Describes how data is physically stored (file organization, indexing structures, storage allocation).
  2. Logical Level — Describes what data is stored and the relationships among the data. This is the level at which the schema operates.
  3. View Level — Describes subsets of the database visible to particular users or applications.

This separation of concerns is known as data independence: changes at one level do not necessitate changes at another.

Data Models

A data model is a collection of conceptual tools for describing data, data relationships, data semantics, and consistency constraints.