|
DBMS主要是实现对共享数据有效地组织、管理和存取,因此DBMS应具有如下几个方面的功能及特征。
|
|
|
|
DBMS的功能主要包括数据定义,数据库操作,数据库运行管理,数据组织、存储和管理,数据库的建立和维护。
|
|
|
|
DBMS提供数据定义语言(Data Definition Language,DDL),用户可以对数据库的结构描述,包括外模式、模式和内模式定义;数据库的完整性定义;安全保密定义,如口令、级别和存取权限等。这些定义存储在数据字典中,是DBMS运行的基本依据。
|
|
|
|
DBMS向用户提供数据操纵语言(Data Manipulation Language,DML),实现对数据库中数据的基本操作,如检索、插入、修改和删除。DML分为两类:宿主型和自含型。所谓宿主型,是指将DML语句嵌入某种主语言(如C、Java、COBOL等)中使用;自含型是指可以单独使用DML语句,供用户交互使用。
|
|
|
|
数据库在运行期间多用户环境下的并发控制、安全性检查和存取控制、完整性检查和执行、运行日志的组织管理、事务管理和自动恢复等是DBMS的重要组成部分。这些功能可以保证数据库系统的正常运行。
|
|
|
|
DBMS分类组织、存储和管理各种数据,包括数据字典、用户数据和存取路径等。要确定以何种文件结构和存取方式在存储级上组织这些数据,以提高存取效率。实现数据间的联系、数据组织和存储的基本目标是提高存储空间的利用率。
|
|
|
|
数据库的建立和维护包括数据库的初始建立、数据的转换、数据库的转储和恢复、数据库的重组和重构、性能监测和分析等。
|
|
|
|
如DBMS与网络中其他软件系统的通信功能,一个DBMS与另一个DBMS或文件系统的数据转换功能等。
|
|
|
|
|
(1)数据结构化且统一管理。数据库中的数据由DBMS统一管理。由于数据库系统采用复杂的数据模型表示数据结构,数据模型不仅描述数据本身的特点,还描述数据之间的联系。数据不再面向某个应用,而是面向整个应用系统。数据易维护、易扩展,数据冗余明显减少,真正实现了数据的共享。
|
|
|
(2)有较高的数据独立性。数据的独立性是指数据与程序独立,将数据的定义从程序中分离出去,由DBMS负责数据的存储,应用程序关心的只是数据的逻辑结构,无须了解数据在磁盘上的数据库中的存储形式,从而简化应用程序,大大减少应用程序编制的工作量。数据的独立性包括数据的物理独立性和数据的逻辑独立性。
|
|
|
(3)数据控制功能。DBMS提供了数据控制功能,以适应共享数据的环境。数据控制功能包括对数据库中数据的安全性、完整性、并发和恢复的控制。
|
|
|
.数据的安全性(security)是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。这样,用户只能按规定对数据进行处理,例如,划分了不同的权限,有的用户只能有读数据的权限,有的用户有修改数据的权限,用户只能在规定的权限范围内操纵数据库。
|
|
|
.数据的完整性(integrality)是指数据库正确性和相容性,是防止合法用户使用数据库时向数据库加入不符合语义的数据。保证数据库中数据是正确的,避免非法的更新。
|
|
|
.并发控制(concurrency control)是指在多用户共享的系统中,许多用户可能同时对同一数据进行操作。DBMS的并发控制子系统负责协调并发事务的执行,保证数据库的完整性不受破坏,避免用户得到不正确的数据。
|
|
|
.故障恢复(recovery from failure)。数据库中的4类故障是事务内部故障、系统故障、介质故障及计算机病毒。故障恢复主要是指恢复数据库本身,即在故障引起数据库当前状态不一致后,将数据库恢复到某个正确状态或一致状态。恢复的原理非常简单,就是要建立冗余(redundancy)数据。换句话说,确定数据库是否可恢复的方法就是其包含的每一条信息是否都可以利用冗余地存储在别处的信息重构。冗余是物理级的,通常认为逻辑级是没有冗余的。
|
|
|
|
|
(1)关系数据库系统(Relation DataBase Systems,RDBS)。关系数据库系统是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据。目前主流的关系数据库有Oracle、Db2、Sybase、Microsoft SQL Server、Microsoft Access、MySQL等。在关系模型中,实体以及实体间的联系都是用关系来表示的。在一个给定的现实世界领域中,相应的所有实体及实体之间联系的关系的集合构成一个关系数据库,有型和值之分。关系数据库的型也称为关系数据库模式,它是对关系数据库的描述,是关系模式的集合。关系数据库的值也称为关系数据库,是关系的集合。关系数据库模式与关系数据库通常统称为关系数据库。
|
|
|
(2)面向对象的数据库系统(Object-Oriented DataBase System,OODBS)。面向对象的数据库系统是支持以对象形式对数据建模的数据库管理系统,包括对对象的类、类属性的继承和子类的支持。面向对象数据库系统主要有两个特点:一是面向对象数据模型能完整地描述现实世界的数据结构,能表达数据间的嵌套、递归联系;二是具有面向对象技术的封装性和继承性,提高了软件的可重用性。
|
|
|
(3)对象关系数据库系统(Object-Oriented Relation DataBase System,ORDBS)。在传统的关系数据模型基础上提供元组、数组、集合等更为丰富的数据类型以及处理新的数据类型操作的能力,这样形成的数据模型被称为“对象关系数据模型”,基于对象关系数据模型的DBS称为对象关系数据库系统。
|
|
|