Database: Difference between revisions
From Rice Wiki
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
A '''database''' is a system that stores, retrieves, and operates on a collection of related data. | A '''database management system (DBMS)''' is a system that stores, retrieves, and operates on a collection of related data. This page will describe why we want a system specifically for this task, a high-level breakdown of its functionality, as well as an overview of how it is implemented. | ||
== Motivation == | |||
A separate system for the management of collections of data is necessary because of two things: 1) the task's prevalence in many application, and 2) the difficulty to implement such a system correctly and efficiently. The former point is relatively intuitive, but the second point is more involved. | |||
To design a way to manage collections of data is to solve the following problems among many. | |||
* '''Data integrity''': Ensure that data stored is valid and will not cause errors upon operation and/or retrieval. Examples include type checking. | |||
* '''Efficient implementation:''' Implementation needs to be efficient for the task at hand. Examples include data structures and concurrency. | |||
* '''Durability:''' Ensure the safety of the data during system errors and modifications. Examples include computer crashing. | |||
As such, it is unproductive to do this for every application. | |||
[[Category:Computer Science]] | [[Category:Computer Science]] |
Revision as of 22:49, 20 July 2024
A database management system (DBMS) is a system that stores, retrieves, and operates on a collection of related data. This page will describe why we want a system specifically for this task, a high-level breakdown of its functionality, as well as an overview of how it is implemented.
Motivation
A separate system for the management of collections of data is necessary because of two things: 1) the task's prevalence in many application, and 2) the difficulty to implement such a system correctly and efficiently. The former point is relatively intuitive, but the second point is more involved.
To design a way to manage collections of data is to solve the following problems among many.
- Data integrity: Ensure that data stored is valid and will not cause errors upon operation and/or retrieval. Examples include type checking.
- Efficient implementation: Implementation needs to be efficient for the task at hand. Examples include data structures and concurrency.
- Durability: Ensure the safety of the data during system errors and modifications. Examples include computer crashing.
As such, it is unproductive to do this for every application.