本节书摘来自华章出版社《数据库原理与应用(第3版)》一 书中的第2章,第2.5节,作者:何玉洁,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2.5 数据库管理系统
数据库管理系统(DBMS)是处理数据库访问的系统软件,从概念上讲,它包括以下处理过程(参见图2-12):
1)用户使用数据库语言(比如SQL)发出一个访问请求。
2)DBMS接受请求并分析。
3)然后DBMS检查用户外模式、相应的外模式/概念模式间的映像、概念模式、概念模式/内模式间的映像和存储结构定义。
通常在检索数据时,从概念上讲,DBMS首先检索所有要求的存储记录的值,然后构造所要求的概念记录值,最后再构造所要求的外部记录值。每个阶段都可能需要数据类型或其他方面的转换。当然,这个描述是简化了的,非常简单的。但这也说明了整个过程是解释性的,因为它表明分析请求的处理、检查各种模式等都是在运行时进行的。
DBMS至少支持以下功能。
1)数据定义。DBMS必须能够接受数据库定义的源形式,并把它们转换成相应的目标形式,即DBMS必须包括支持各种数据定义语言(DDL)的DDL处理器或编译器。
2)数据操纵。DBMS必须能够检索、更新或删除数据库中已有的数据,或向数据库中插入数据,即DBMS必须包括数据操纵语言(DML)的DML处理器或编译器。
3)优化和执行。计划(在请求执行前就可以预见到的请求)的或非计划(不可预知的请求)的数据操纵语言请求必须经过优化器的处理,优化器用来决定执行请求的最佳方式。
4)数据安全和完整性保证。DBMS要监控用户的请求,拒绝那些破坏DBA定义的数据库安全性和完整性的请求。在编译时或运行时或两种情况下都会执行这些任务。在实际操作中,运行管理器调用文件管理器来访问存储的数据。
5)数据恢复和并发控制。DBMS或其他相关的软件,通常称为“事务处理器”或“事务处理监控器”——必须保证有恢复和并发控制功能。
6)数据字典管理。DBMS包括数据字典。数据字典本身也可以看作一个数据库,只不过它是系统数据库,而不是用户数据库。“字典”是“关于数据的数据”(有时也称为数据的描述或元数据)。特别地,在数据字典中,也保存各种模式和映像的各种安全性和完整性约束。
有些人也把数据字典称为目录或分类,有时甚至称为数据存储池。
7)性能维护。DBMS应尽可能高效地完成上述任务。
总而言之,DBMS的目标就是提供数据库的用户接口。用户接口可定义为系统的边界,在此之下的数据对用户来说是不可见的。