二、数据库系统的结构 1.数据库系统的三级模式结构4 [6 T$ E8 K" ~/ N' C
数据库管理系统的三级模式结构由外模式、模式和内模式组成。- ~5 ^8 T9 c9 L' s
外模式(external schema),或子模式(subschema)或用户模式(user schema),是指数据库用户所看到的数据结构,是用户看到的数据视图。) t0 L: C1 R& s+ ^
模式(schema)或逻辑模式(logic schema),是数据库中对全体数据的逻辑结构和特性的描述,是所有用户所见到的数据视图的总和。外模式是模式的一部分。
+ C3 @! e- b3 }2 }4 W3 `) t0 c+ { 内模式(internal schema),或存储模式(storage schema),或物理模式(physical schema),是指数据在数据库系统内的存储介质上的表示,即对数据的物理结构和存取方式的描述。0 W0 }; h$ `6 s; B3 ~
模式描述的是数据的全局的逻辑结构,决定了DBMS的功能。外模式涉及的仅是局部的逻辑结构,是模式的子集,是对模式的调用。数据库系统的三级模式是对数据进行三个层次抽象的工具。通过三级模式,把对数据的具体组织留给DBMS来完成,使得用户能在高层次上处理数据的逻辑结构,而不必关心数据的物理结构。为了实现这三个层次这间的联系,DBMS在沟通三级模式中提供了两个映象:外模式-模式映象、模式-内模式映象2 T1 A& G% ^, A
(1)模式 模式规定了数据库中全部数据的一个逻辑表示或描述形式。模式既不同于内模式,也不同于外模式。它比内模式抽象,不涉及数据的物理结构和存储介质。它与具体的应用程序或高级语言无关。
1 k; \% J; u. R! ~ (2)外模式 外模式是个别用户的数据视图,即与某一应用有关的数据的逻辑表示。8 e3 l" Z: O% |- |, F1 N3 j
(3)内模式 内模式是全部数据库的内部表示或底层描述,是用来定义数据的物理结构和存取方式的。
0 r+ @4 E3 M: K1 C$ B (4)二级映象 对于同一个模式,可以有任意多个外模式。外模式-模式的映象定义了某个外模式和模式之间的对应关系。这些映象的定义通常包含在各自的外模式中。当模式改变时,外模式-模式的映象要做相应的改变,以保证外模式的不变性。这是数据库管理员(DBA)的责任。
3 T/ c) r; h* l# V 模式-内模式的映象定义了数据逻辑结构和存储结构之间的对应关系。例如,字段的内部表示等。当数据库的存储结构改变时,模式-内模式的映象也须做相应的修改,以使得模式保持不变性。这仍是DBA的责任。正是由于上述二级映象的功能及其自动实现,使得数据库系统中的数据具有较高的逻辑独立性和物理独立性,从而大大地方便了用户的使用。
3 s; \. S! K2 q" i (5)概念模式与模式ANSI研究组于1975年2月提出一个临时报告。1978年提出一个最终报告,称之为ANˉSI/SPARC报告,简称为SPARC报告。SPARC报告中指出,数据库管理系统应具有三级模式的结构,即概念模式、外模式和内模式。其中外模式和内模多与上面所讲的大致相当。但SPARC报告中的概念模式是指一个组织或部门所对应的现实世界的真实模型,即概念模型。概念模式仅描述实体及其属性和联系,不涉及机器世界的概念。概念模型是信息世界范畴内的信息的结构,而模式是机器世界范畴内的概念模型的逻辑表示。概念模型独立于具体的计算机系统,甚至是和计算机无关的,是一个组织或部门的模型。常用的描述概念模式的方法是E-R方法。模式是依赖于具体的计算机及其DBMS的。模式通过三种具体模型:层次模型、网状模型和关系模型来加以实现。概念模式必须转换成具体的数据模型,然后才能在相应的DBMS上实现。概念模型和模式都是描述信息或数据的整体结构的,然而它们是在不同的抽象层次上加以描述的。概念模型离机器更远,形式化程度低。从远离机器的观点看,概念模型更抽象些,但更接近现实世界。而模式描述使用的是形式化的语言-模式DDL,而概念模型描述使用的是E-R图和一些自然语言。! j2 l5 ]# I" C( X' u0 D
2.使用数据库的计算机系统结构
5 u! D2 j A; U 广义地讲,实际上使用数据库的计算机系统由下列几个部分组成的:
/ S( o9 `8 H Q. f: [7 W (1)硬件部分 包括主机、外部存储设备、网络设备和电源等。
& o3 K& d8 W/ [* R) A) B; G5 r (2)软件部分 包括操作系统、DBMS、编译系统和应用开发工具软件等。0 X6 _% D9 l2 D2 [0 h' b
(3)人员 包括数据库管理员(Data Base Administrator-DBA),系统分析员(System Anaˉlyst)、应用程序员(Application Programmer)和用户(User)。
8 @' s7 G, I5 _8 l4 h+ Z; z 3.数据库管理系统
( r9 A/ f0 B6 H, D- S 数据库管理系统DBMS是数据库系统的核心。DBMS是负责数据库的建立、使用和维护的软件。DBMS建立在操作系统之上,实施对数据库的统一管理和控制。用户使用的各种数据库命令以及应用程序的执行,最终都必须通过DBMS。另外,DBMS还承担着数据库的安全保护工作,按照DBA所规定的要求,保证数据库的完整性和安全性。DBMS的主要功能包括以下几个主要方面:
; w$ V w6 s" d X: [9 R. \
! q) o; H k* j$ n5 @% g' ^" J: j (1)数据库的定义功能 DBMS通过提供数据描述语言(也称数据定义语言)(Data Descripˉtive Language———DDL)来对外模式、模式和内模式加以描述。然后模式翻译程序把用DDL写的各种模式的定义源码翻译成相应的内部表示,形成相应的目标形式,分别叫目标外模式、目标模式、目标内模式,这些目标模式是对数据库的描述,而不是数据本身。(目标)模式只刻画了数据库的形式或框架,而不包括数据库的内容。这些目标模式被保存在数据字典(或系统目标)之中,作为DBMS存取和管理数据的基本依据。例如,DBMS根据这些模式定义,进行物理结构和逻辑结构的映象,进行逻辑结构和用户视图的映象,以导出用户要检索的数据的存取方式。 |