In modern software development, several types of databases are in use, each designed to handle specific data storage needs and access patterns. While relational databases are still widely adopted, especially in enterprise systems, other types of databases have emerged to address scalability, flexibility, and performance in large-scale and distributed environments. However, relational databases will continue to play a critical role in the future due to their strong consistency guarantees, robust transaction support, and well-established standards, making them especially suitable for applications that require complex querying and strict data integrity.
Relational databases store data in tables with rows and columns and use structured query language (SQL) for defining and manipulating data. They are well-suited for structured data and support complex queries and transactions. Examples include MySQL, PostgreSQL, Oracle Database, and Microsoft SQL Server.
NoSQL ("Not Only SQL") databases are designed for flexibility, scalability, and performance, especially for large volumes of unstructured or semi-structured data. There are several subtypes:
This course will primarily focus on relational databases and the use of SQL, which remain foundational to many information systems.
A database is an organized collection of data for one or more purposes, usually in digital form. The data is typically organized to model relevant aspects of reality. The database may contain, for example, hospital patient data or institution grades and course informations.
The term "database" refers both to the way its users view it, and to the logical and physical materialization of its data, content, in files, computer memory, and computer data storage. This definition is very general, and is independent of the technology used. However, not every collection of data is a database; the term database implies that the data is managed to some level of quality (measured in terms of accuracy, availability, usability, and resilience) and this in turn often implies the use of a general-purpose Database management system (DBMS).
Here are some common requirements for the database:
DBMS is typically a complex software system that meets many usage requirements, and the databases that it maintains are often large and complex. The utilization of databases is now spread to such a wide degree that virtually every technology and product relies on databases and DBMSs for its development and commercialization, or even may have such embedded in it. Also, organizations and companies, from small to large, heavily depend on databases for their operations.
Some of the most popular DBMS's:
DBS = Database + DBMS