数据库系统有数据库、数据库管理系统和硬件等组成,数据库系统是在文件系统的基础上发展起来的。数据库系统由于能够减少数据冗余,提高数据独立性,并集中检查数据完整性,才获得了广泛应用。数据库系统提供给用户的接口是数据库语言,具有数据定义、数据操作、数据检查功能,可独立使用,也可嵌入宿主语言使用。SQL语言已被国际标准化组织采纳为关系型数据库的标准语言。
二.数据库系统的体系结构
分布式数据库系统是传统集中式数据库系统的发展,因此它具有集中式数据库系统的特点。同时,由于他的分布性而使这些特点具有新的含义。传统的数据库系统针对文件系统的弱点,采用了集中控制以实现数据共享。对于分布式数据库系统来说,由于数据的分散性,分布式数据库系统具有分散与集中统一的特性。分布式主要有以下几个特点:
(1)数据的集中控制性,分布式数据库是由传统的数据库发展而来,因此也具有集中控制的特性。
(2)数据独立性,独立性指的是数据的组成对应用程序来说是透明的。应用程序只需要考虑数据的逻辑结构,而不用考虑数据的物理存放,因而数据在物理组织上的改变不会影响应用程序。
(3)数据冗余可控性,分布式数据库中的数据一般存储在经常使用的场地上,但应用对两个或两个以上场地的同一数据有存取要求也是时常发生的,而且当传输代价高于存储代价时,可以将同一数据有存储在两个(甚至更多)场地上,以节省传输开销。由于这种冗余是在系统控制下的,所以给系统造成的不利影响是可控制的。
(4)场地自治性,局部用户使用的数据可以不参与到全局数据库中去,这种局部应用独立于全局应用的特征就是局部数据库的自治性。存取的有效性分布式数据库系统的全局查询可以分解成等效的子查询,即全局查询的执行计划可分解成多个子查询执行计划,而子查询计划又是在各场地上分布执行的。
三级模式两级映像
外模式,对应于用户级数据库。外模式(子模式、用户模式)用以描述用户看到或使用的那部分数据的逻辑结构,用户根据外模式用数据操作语句或应用程序去操作数据库中的数据。外模式主要描述组成用户视图的各个记录的组成、相互联系、数据项的特征、数据的安全性和完整性约束条件。
外模式是数据库用户(包括程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。一个数据库可以有多个外模试,一个应用程序只能有一个外模式。
概念模式,对应于概念及数据库。概念模式(模式、逻辑模式)用以描述整个数据库中数据库的逻辑结构,描述现实世界中实体及其性质与联系,定义记录、数据项、数据的完整性约束条件及记录之间的联系,是数据项值的框架。
数据库系统概念模式通常还包含有访问控制、保密定义、完整性检查等方面的内容,以及概念/物理之间的映射。
概念模式是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。一个数据库只有一个概念模式。
内模式,对应于物理级数据库。内模式是整个数据库的最低层表示,不同于物理层,它假设外存是一个无限的线性地址空间。内模式定义的是存储记录的类型、存储域的表示以及存储记录的物理顺序,指引元、索引和存储路径等数据的存储组织。
内模式是数据库物理结构和存储方式的描述,是数据在数据库内部的表示方式。一个数据库只有一个内模式。
三.独立性
数据库系统两级独立性是指物理独立性和逻辑独立性。三个抽象级间通过两级映射(外模式/模式,模式/内模式)进行相互转换,使得数据库的三级形成一个统一的整体。
(1)物理独立性。物理独立性是指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的。当数据的物理存储改变时,应用程序不需要改变。
物理独立性存在于概念模式和内模式之间的映射转换,说明物理组织发生变化时应用程序的独立程度。
(2)逻辑独立性。逻辑独立性是指用户的应用程序与数据库中的逻辑结构是相互独立的。当数据的逻辑结构发生改变时,应用程序不需发生改变。
(3)逻辑独立性存在于外模式和概念模式之间的映射转换,说明概念模式发生变化时应用程序的独立程度。逻辑独立性比物理独立性更难实现。
四.数据库的设计
数据库逻辑设计是数据库应用系统生命周期中非常重要的一个环节,如果数据库逻辑结构不好,利用其他方法来改善数据库性能都将很有限,而逻辑结构设计的关键是如何使数据库能合理地存储数据用户的数据,方便用户进行数据处理。关系规范化理论是将一个不合理关系模式如何转化为合理关系模式的理论,其目的就是解决数据冗余、插入异常、删除异常和更新异常等问题。
ER 数据模型所采用的三个主要概念是:实体集、联系集和属性。这三个是构成ER模型的基本成分。
五.关系代数
笛卡尔积乘积运算,R*S
连接是从两个关系的笛卡尔积结果中选取属性间满足一定条件的元组。
自然连接,是通过两个关系中相同属性的相同值来进行连接的一种关系运算。
投影是从关系中挑选若干属性组成新的关系,他是对关系进行列操作的方法。
选择是从关系中找到满足条件的所有元组的操作,即不改变关系表中属性个数但能减少元组个数操作,她是对关系进行行操作的方法。
六.数据仓库
面向主题的特征是指关于主题的数据组织起来分析数据及数据之间的关系。集成是将业务系统中关于主题的数据集中起来,对数据进行一系列预处理。随时间变化的特征体是不进行分析数据更新操作,但数据仓库随时间变化会不断增加、删除、修改数据。
领取专属 10元无门槛券
私享最新 技术干货