Part03_了解数据库系统
01. 数据抽象
1.物理层(physical level):描述数据上实际上是怎样存储的。(最低层次的抽象)
2.逻辑层(logical level):描述数据库存储什么数据及这些数据间存在什么关系。(数据库管理员使用抽象的逻辑层)
3.视图层(view level):最高层次的抽象,只描述整个数据库的某个部分。
02. 实例和模式
1.数据库的实例(instance):特定时刻存储在数据库中的信息的集合。
2.数据库的模式(schema):数据库的总体设计。
1.物理模式(physical schema):在物理层描述数据库的设计。
2.逻辑模式(logical schema):在逻辑层描述数据库的设计。
3.子模式(subschema):描述数据库的不同视图。
03. 数据模型(data model)
0.概念:
数据库结构的基础是数据模型。
1.关系模型(relation model):
用表的集合来表示数据和数据间的联系。
2.实体-联系模型(entity-relationship model):
实体-联系(E-R)数据模型基于对现实世界的这样一种认识:
现实世界由一组称作实体的基本对象以及这些对象间的联系构成。
实体是现实世界中可区别于其他对象的一件“事情”或一个“物体”。
3.基于对象的数据模型(object-based data model):
可以看成是E-R模型增加了封装、方法(函数)和对象标识等概念后的扩展。
4.半结构化数据模型(semistructured data model):
允许那些相同类型的数据项含有不同的属性集的数据定义。
04.数据库语言(在Part01的学习笔记中也有提及到,不同模型的数据库这些操作语言会有些许不同)
1.数据库操作语言(Data-Manipulation Language, DML)
0.概念:
使得用户可以访问或操纵那些按照某种适当的数据模型组织起来的数据。
1.过程化DML(procedural DML)
要求用户指定需要什么数据以及如何获得这些数据。
2.声明式DML(declarative DML)
只要求用户指定需要什么数据,而不指明如何获得这些数据。
2.数据定义语言(Data-Definition Language, DDL)
0.概念:
数据库系统所使用的存储结构和访问方式是通过一系列特殊的DDL语句来说明的。
1.一致性约束(consistency constraint):存储在数据库中的数据值必须满足的条件。
1.域约束(domain constraint)
2.参照完整性(referential integrity)
3.断言(assertion)
4.授权(authorization)
05.数据库设计
0.概念:
数据库设计的主要内容是数据库模式的设计,数据库系统被设计用来管理大量信息。
1.设计过程
初始阶段:数据需求。(全面刻画预期的数据库用户的数据需求)
概念设计阶段:选择数据模型,根据需求将其转换成相对应的数据模式。
功能需求说明:设计模对模式进行复审,以确保它满足功能需求。
逻辑设计阶段:将高层的念模式映射到要使用的数据库系统的实现数据模型上。
物理设计阶段:指定数据库的物理特性。
06.数据库的子系统
1.存储管理器
2.查询管理器
07.事务
0.概念:
构成单一逻辑工作单元的操作集合称作事务。
1.系统维护事务的特性:(ACID特性,来自每个特性的第一个英文字母)
1.原子性:事务的所有操作在数据库中要么全部正确反映出来,要么全部不反映。
2.一致性:隔离执行事务时(即,没有其他事务并发执行的状态下)保持数据库的一致性。
3.隔离性:尽管多个事务可能并发执行,但每个事务都感觉不到系统中有其他事务在并发执行。
4.持久性:一个事务成功完成后,它对数据库的改变必须是永久的,即使出现系统故障。
08.数据库的体系结构
1.集中式与客户-服务器体系结构。
2.服务器系统体系结构
3.并行系统
4.分布式系统
09.数据挖掘与信息检索
数据挖掘(data mining):指半自动地分析大型数据库并从中找出有用的模式的过程。
数据仓库(data warehouse):从多个来源收集数据,建立统一的模式,驻留在单个节点上。
信息检索(information retrieval):查询非结构化的文本数据。
10.数据库用户
1.无经验用户(naive user):
是默认经验的用户,他们通过激活事先已经写好的应用程序同系统进行交互。
2.应用程序员(application programmer):
是编写应用程序的计算机专业人员。
3.老练的用户(sophisticated user)
不通过编写程序来同系统交互,而是用数据库查询语言或数据分析软件这样的工具来表达他们的要求。
4.专门的用户(specialized user)
是编写专门的、不适合于传统数据处理框架的数据库应用的富有经验的用户。
11.数据库管理员
0.概念:
对系统进行集中控制的人。
1.职责:
模式定义(schema definition)
存储结构及存取方法定义(storage structure and access-method definition)
模式及物理组织的修改(schema and physical-organization modification)
数据访问授权(granting of authoriztion for data access)
日常维护(routine maintenance)