数据库系统架构与DBMS功能探微:现代信息时代数据管理的关键
数据库系统架构与DBMS功能探微:现代信息时代数据管理的关键
数据库系统是现代信息时代数据管理的核心,它以数据库技术为核心,通过数据库管理系统(DBMS)实现对数据的高效管理和访问。本文将从数据库系统的架构、特点、模式结构以及DBMS的主要功能等方面,深入探讨数据库系统的工作原理和应用价值。
数据库系统概述
数据库系统是以数据库技术为核心的计算机应用系统,其主要目的是处理生产和实践过程中产生的数据和信息,实现生产过程管理的自动化和信息化,提高信息管理效率。
数据库系统一般包含 4 个部分
数据库:是数据库系统存放结构化数据的地方,是长期存储的、有组织的、可共享的数据的集合。数据最终是以文件的形式存储在磁盘上,只有数据库管理系统才能对这些文件进行存取操作。每一个数据库都至少有一个数据文件,称为数据文件。SQL Server 数据库的数据文件以.mdf或.ndf为扩展名。
数据库管理系统(DBMS):是数据库的管理软件,是应用程序和数据库之间桥梁,即应用程序必须通过 DBMS 才能存取数据库中的数据。DBMS 对数据的存取操作最终体现为对数据文件的更新和修改但应用程序不能直接执行这种更新和修改操作。SQL Server 2008 就是 SQL Server 数据库系统的一种 DBMS。
应用程序:是指通过访问数据库来完成用户操作的程序。它介于系统用户和 DBMS 之间,用户通过操作应用程序来获取他们的需求,而应用程序则通过 DBMS 访问数据库来实现用户提出的需求。应用程序可以用Java、JSP、.NET 等技术开发。
系统用户:大致分为两类——系统用户和系统管理员,系统用户是指应用程序的用户,他们是整个数据库系统的最终使用者;系统管理员可以分为不同级别类型的管理人员,他们主要负责数据库的管理和维护工作。
数据库系统各部分之间的关系
数据库系统各部分之间相互协作,共同实现数据的存储、管理和访问。应用程序通过DBMS访问数据库中的数据,系统用户通过应用程序与数据库系统进行交互,系统管理员负责数据库的管理和维护工作。
数据库系统特点
数据结构化
整体数据的结构化是数据库的主要特征之一,是数据库系统与文件系统的本质区别。整体数据结构化不再仅仅针对某一个应用,而是面向全组织。不仅数据内部结构化,整体是结构化的,数据之间具有联系。数据库中实现的是数据的真正结构化,数据的结构用数据模型描述,无需程序定义和解释。数据可以变长,数据的最小存取单位是数据项。
数据的共享性高,冗余度低,易扩充
数据库系统从整体角度看待和描述数据,数据面向整个系统可以被多个用户、多个应用共享使用。数据共享的好处包括:
- 减少数据冗余,节约存储空间
- 避免数据之间的不相容性与不一致性
- 使系统易于扩充
数据独立性高
- 物理独立性:指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。当数据的物理存储改变了,应用程序不用改变。
- 逻辑独立性:指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变了,用户程序也可以不变。
- 数据独立性通过 DBMS 二级映像功能保证
数据由 DBMS 统一管理和控制
数据库的共享是并发的(Concurrency)共享,即多个用户可以同时存取数据库中的数据甚至可以同时存取数据库中同一个数据。DBMS 提供的数据控制功能包括:
- 数据的安全性(Security)保护:指保护数据,以防止不合法的使用造成的数据的泄密和破坏。使每个用户只能按规定,对某些数据以某些方式进行使用和处理
- 数据的完整性(Integrity)检查:将数据控制在有效的范围内,或保证数据之间满足一定的关系。
- 并发(Concurrency)控制:对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。
- 数据库恢复(Recovery):将数据库从错误状态恢复到某一已知的正确状态。
数据库系统的模式结构
现在数据库系统软件产品非常多,它们可能基于不同的操作系统支持不同的数据库语言,采用不同的数据结构,等等。但是它们的体系结构却基本相同,那就是三级模式结构。三级模式结构是由美国国家标准学会(American NationalstandardsInstitute, ANSI)所属的标准计划和要求委员会(Standards Planning And Reguirements committeeSPARC )于1975 年提出的,称为SPARC分级结构。
三级模式结构
三级模式结构将数据库系统抽象为三个层次,分别为内模式、概念模式和外模式。
内模式:又称存储模式,它是数据在数据库系统中最底层的表示,描述了数据的物理结构和存储方式,即定义了存储记录的类型、存贮域的表示、存储记录的物理顺序、索引等。一个数据库仅有一个内模式
概念模式:又称逻辑模式,简称模式,它用于对整个数据库中数据的逻辑结构和特征、实体及其性质与联系进行描述。但这种描述并不涉及具体的物理存储方式和硬件环境,也不涉及任何特定的应用程序及其开发工具。一个数据库也只有一个概念模式。
外模式:外模式是概念模式的一个子集,这个子集是为一个特定用户所使用的。从这个角度看,外模式是面向用户的,所以外模式又称子模式或用户模式。本质上,外模式是应用程序所使用的局部数据的逻辑结构和特征的描述,是使用该应用程序的用户所看到的数据视图,即用户视图。不同的人员涉及不同的数据抽象级别,具有不同的数据视图
数据库管理系统(DBMS)DBMS 的功能主要包括以下几个方面:
数据库定义功能:DBMS一般都提供数据定义语言(Data Definition Language,DDL),可以分别用于定义外模式、概念模式和内模式。用DDL编写的外模式、概念模式和内模式分别称为源外模式、源概念模式和源内模式它们经过模式翻译程序翻译后将形成相应的内部表示,分别称为目标外模式、目标概念模式和目标内模式。这些目标模式被保存在数据字典中(又称系统目录),它们是用于刻画数据库的框架结构,是对数据库(而不是数据)的一种描述,也是DBMS 存取和管理数据的基本依据。
数据操纵功能:DBMS 还提供数据操作语言(Data Manipulation LanguageDML),用于实现对数据库的查询、添加、修改和删除等基本操作。DML分为宿主型的和自主型的(或自含型的)DML。宿主型的 DML用于嵌入到其他语言(称为主语言)当中,例如把它嵌入到 PASCAL、FORTRAN,C等高级语言中。自主型的(或自含型)DML则是交互式命令语言,其语法简单,每条语句都可以独立执行。如今, DBMS一般既提供宿主型的 DML也提供自主型的 DML,或者提供集宿主型和自主型于一体的 DML,其典型的代表就是著名的 SQL(Structured QueryLanguage)。SQL语句既可以嵌入到其他的高级语言,也可以单独交互执行。用户或者应用程序对数据库的操作实际上是通过DBMS 控制并执行 DML语句来实现的。自主型的 DML是交互式命令语言,DBMS通常以解释执行的方式运行它们。对于宿主型的 DML,DBMS 提供两种执行方法:预编译方法和修改、扩充主语言编译程序的方法。
数据库运行管理功能(DCL):数据库运行管理是 DBMS 提供的重要功能之一,它是数据系统能够正确、有效运行的基本保证。这种管理功能主要包括存取控制、安全性检测、并发控制、完整性约束条件的检查和执行、数据库内部的维护和管理等。
数据库的建立和维护功能:这包括数据库初试数据的装载和转换、数据库的转储和恢复、数据库的重组织功能和性能监视、分析功能等。这些功能主要是由 DBMS 提供的实用程序来完成。
数据库(DB)、数据库系统(DBS)数据库管理系统(DBMS)三者之间的关系
DB是数据存储的地方,DBMS是管理数据的软件,而DBS是使用DBMS来操作DB的整体系统(环境)。这三者相互关联,共同构成了一个组织、存储、管理数据的体系。