A database is a collection of information carefully organized into a system.
The technology that allows us to organize data and represent the information necessary for an information system is called Database Management System (DBMS).
A DBMS is software that encapsulates the data of a database and provides us with a centralized way to store, retrieve, edit, persist, and perform other operations on it.
Let’s define some of the main properties of a DBMS:
- Efficiency: A database needs to provide optimal performance for storing and retrieving data.
- Persistence: Data stored in the database should be permanent. Even if the database software is terminated or the machine reboots, the data (excluding hardware failures) should still be there.
- Privacy and security: A database allows us to securely store data and control access to it. Each user should only be able to access and modify the data they are authorized to. Some users may have read-only access, while others may have read-write access.
- Shared access: Multiple users, with the appropriate permissions, should be able to access shared data. Multiple applications can also access the same database.
- Scalability: A database can handle large amounts of data and can scale according to the needs of the system. It employs advanced techniques to efficiently manage and process the data. However, even with a small amount of data, a database can still be useful due to its other properties.
There are numerous DBMS options available on the market, ranging from similar to vastly different systems.
Relational DBMS, built on the relational model, are widely used in real-world applications.
In upcoming articles, I will provide detailed information about three popular open-source Relational Database Management Systems: PostgreSQL, MySQL, and SQLite.