《数据库技术基础与应用(第2版)》学习笔记——第2章

简介:

第2章 数据库系统概述

2.1 数据库(DB)

2.1.1 三级模式结构
模式是数据库的抽象描述。
模式的主体是数据模型。
模式的表示分为图示与语言描述
用语言书写的模式称为源模式。
把源模式翻译成机器代码,变为机器可使用的模式,称为目标模式。
数据库的结构分为外部级、概念级和内部级三级,每一级都有对应的模式,所以数据库的体系结构称为三级模式结构。
概念模式(Conceptual Schema)
概念模式通常简称为模式,或全局视图,或DBA视图。

从某个角度看到的数据特性称为数据视图(View)。

概念模式是数据库中全部数据的整体逻辑结构的描述。
目的是为了把用户视图有机地结合成一个逻辑整体,统一地考虑所有用户的要求。
模式数据描述语言(Schema Data Description Language,简称模式DDL)的作用就是用来书写数据库的概念模式,也称为数据定义语言(Data Definition Language)。
外模式(External Schema)
外模式又称为子模式(Subschema)或用户模式,或用户视图。
外模式是用户与数据库系统的接口,是用户用到的那部分数据(全局逻辑数据的子集)的描述。
外模式是模式的一个逻辑子集。
用户使用数据操纵语言(Data Manipulation Language,DML)对数据库的数据进行操作。
外模式数据描述语言(External Schema Data Description Language,外模式DDL)也称子模式数据描述语言(Subschema Data Description Language,子模式DDL或SDDL),它的作用就是用来书写数据库的外模式。
内模式(Internal Schema)
内模式是数据库在物理存储方面的描述,也称为程序员视图,或存储视图。

位(Bit)、字节(Byte)、字(Word)、块(Block)。

数据库的数据是用一定的文件组织方式构造起来的一个个物理文件
内模式数据描述语言(Internal Schema Data Description Language,内模式DDL)的作用就是用来书写数据库的内模式。
三级模式结构的优点
接口简单,使用方便
实现数据共享
数据独立性强
数据安全性强
2.1.2 四种数据记录格式
物理记录
计算机内存与外存间进行一次数据交换的最小单位是一个物理记录。
物理记录的长度是由系统程序员决定的。
内部记录
内部记录不仅包含实际所需要的数据,还包含DBMS在管理数据时所需要的“系统数据”。
内部记录不等同于物理记录,也不涉及设备的约束。
概念记录
概念记录是模式的一个逻辑数据单位。
概念记录强调的是数据的逻辑结构
外部记录
外部记录即用户所需要的数据记录。
2.1.3 两层映射和两级数据独立性
映射(Mapping)
映射又称映像,它实质是一种对应规则,指出映射双方如何进行转换。
模式∕内模式映射
模式∕内模式映射定义模式与内模式之间的对应性,一般在内模式中描述的。
外模式∕模式映射
外模式∕模式映射定义外模式与模式之间的对应性,一般在外模式中描述的。
数据独立性
数据独立性是要维护数据与应用程序之间的无关性。
分类
物理数据独立性

如果数据库内部级的存储设备和存储方法有所变化,那么只需要对模式∕内模式映射做相应的修改,使概念模式尽可能地保持不变,进而使外模式和应用程序也保持不变。这样,称数据库达到了物理数据独立性。

逻辑数据独立性

如果数据库的概念模式需要进行修改,那么只需要对外模式∕模式映射做相应的修改,使外模式尽可能地保持不变,进而使应用程序也保持不变。这样,称数据库达到了逻辑数据独立性。

2.1.4 DBA及数据语言
数据库管理员(DBA)
DBA的主要任务
创建并维护模式
建立外模式
确定数据库的存储结构和访问策略
决定数据库的保护策略
监视系统的运作
DBA的主要工具
装载程序
重组织程序
工作日志
数据字典
数据语言
数据描述语言(DDL)
数据描述语言又称数据定义语言,用于描述和定义数据的各种特性。
分类

模式DDL:用于描述概念级的逻辑结构。

描述数据模型中各个数据逻辑单位的特征

描述各数据逻辑单位之间的联系

描述访问规则

外模式DDL:用于描述外部级数据的逻辑结构。

描述数据模型中各个数据逻辑单位的特征

描述各数据逻辑单位之间的联系

描述访问规则

内模式DDL:用于描述内部级数据的物理特征。

描述数据的存储结构

描述逻辑数据到物理数据的映射

数据操纵语言(DML)
DML是用户操作数据库中数据的工具。
分类依据

基于对数据的处理

存取数据为主的处理

检索(或查询)

更新(包括插入、删除、修改)

分析运算为主的处理

基于语言使用的形式

自含型DML:是一种同时具有描述存取数据处理和描述分析运算处理两方面功能的DML

嵌入型DML:自成一体,有专门的编译程序,由DBMS提供用户所需要的一切服务。又称宿主型DML,或数据子语言(Data Sub-Language,DSL)

基于过程性

过程性DML:早期层次、网状的DML

非过程性DML:关系型DML,简单易学,操作方便

数据库控制语言(Database Control Language,DCL):用于建立和维护数据库。
设备介质控制语言(Device Medium Control Language,DMCL):与操作系统接口的作用,它把数据库的数据映射到物理存储设备上。

2.2 数据库管理系统(DBMS)

DBMS是DBS的核心组成部分,是管理数据的综合性软件。
2.2.1 DBMS的主要功能及其组成
DBMS的主要功能
数据库的定义功能
定义数据库的外模式、模式和内模式三级模式及其两层映射。
定义数据的完整性和安全控制等约束。
数据库的操纵功能
DBMS提供DML及其相应的DML编译程序或解释程序,用户使用DML对数据库中的数据实施各种操作。
数据库的存储管理功能
检查用户访问数据是否合法
事务管理
把各种DML语句转换成OS的命令和参数,让OS执行相应的I/O操作。
管理系统缓冲区。
数据库的保护功能
数据库的恢复
数据库的完整性控制
数据库的并发控制
数据的安全性控制
数据库的维护功能
备份程序
性能监控程序
数据字典(Data Dictionary,DD)
DBMS把DDL所描述的各项内容从源形式转换成目标形式,存放在DD中供系统查阅。
DBMS的组成
语言处理部分
DDL编译程序
DML编译或解释程序
嵌入型DML预处理程序
终端访问命令解释程序
DCL解释程序
系统运行控制部分
系统总控程序
存储管理器
数据查询运行程序
管理DD的实用程序
安全性控制程序
通信控制程序
数据库的建立和维护部分
装载程序
工作日志程序
备份程序
性能监控程序
数据库重新组织程序
系统恢复程序
2.2.2 用户这DBMS查询数据的过程
图2.2 用户通过DBMS查询数据的过程
用户发出查询请求
DBMS确定外部记录
DBMS确定概念记录
DBMS确定内部记录
请求OS读物理记录
DBMS接收内部记录
DBMS提取概念记录
UWA接收外部记录
DBMS填写工作日志
DBMS填写状态码
用户分析查询结果

2.3 数据库系统(DBS)

2.3.1 DBS的组成
数据库(DB):一个结构化的数据集合
硬件:数据库赖以存在的物理设备。
软件:DBMS、OS、各种宿主语言和应用开发软件工具等。
数据库管理员(DBA):创建、监控和维护数据库,并使之始终处于最佳状态的技术人员。
2.3.2 DBS的主要特征
有很好的效益
数据集中控制
有很高的灵活性
方便程序设计和维护
有利推广标准化

本文转自BlogJava朱远翔的博客,原文链接:《数据库技术基础与应用(第2版)》学习笔记——第2章,如需转载请自行联系原博主。

相关文章
|
20天前
|
中间件 关系型数据库 数据库
docker快速部署OS web中间件 数据库 编程应用
通过Docker,可以轻松地部署操作系统、Web中间件、数据库和编程应用。本文详细介绍了使用Docker部署这些组件的基本步骤和命令,展示了如何通过Docker Compose编排多容器应用。希望本文能帮助开发者更高效地使用Docker进行应用部署和管理。
50 19
|
16天前
|
人工智能 Cloud Native 多模数据库
实力见证!数据管理服务DMS、云原生多模数据库Lindorm荣获“2024技术卓越奖”
实力见证!数据管理服务DMS、云原生多模数据库Lindorm荣获“2024技术卓越奖”
|
1月前
|
SQL 存储 关系型数据库
【SQL技术】不同数据库引擎 SQL 优化方案剖析
不同数据库系统(MySQL、PostgreSQL、Doris、Hive)的SQL优化策略。存储引擎特点、SQL执行流程及常见操作(如条件查询、排序、聚合函数)的优化方法。针对各数据库,索引使用、分区裁剪、谓词下推等技术,并提供了具体的SQL示例。通用的SQL调优技巧,如避免使用`COUNT(DISTINCT)`、减少小文件问题、慎重使用`SELECT *`等。通过合理选择和应用这些优化策略,可以显著提升数据库查询性能和系统稳定性。
88 9
|
2月前
|
存储 运维 OLAP
【Meetup回顾 第1期】竟是这样的国产数据库,YashanDB技术内幕曝光
YashanDB是一款基于统一内核,支持单机/主备、共享集群、分布式等多种部署方式,覆盖OLTP/HTAP/OLAP交易和分析混合负载场景的新型数据库系统;YashanDB同时提供开发平台、运维平台和迁移平台3大工具平台以满足数据全生命周期管理。
53 2
【Meetup回顾 第1期】竟是这样的国产数据库,YashanDB技术内幕曝光
|
24天前
|
存储 关系型数据库 分布式数据库
PolarDB开源数据库进阶课16 接入PostGIS全功能及应用举例
本文介绍了如何在PolarDB数据库中接入PostGIS插件全功能,实现地理空间数据处理。此外,文章还提供了使用PostGIS生成泰森多边形(Voronoi diagram)的具体示例,帮助用户理解其应用场景及操作方法。
40 0
|
2月前
|
缓存 NoSQL JavaScript
Vue.js应用结合Redis数据库:实践与优化
将Vue.js应用与Redis结合,可以实现高效的数据管理和快速响应的用户体验。通过合理的实践步骤和优化策略,可以充分发挥两者的优势,提高应用的性能和可靠性。希望本文能为您在实际开发中提供有价值的参考。
68 11
|
2月前
|
关系型数据库 分布式数据库 数据库
1月17日|阿里云云谷园区,PolarDB V2.0技术沙龙,畅聊国产数据库
为了助力国产化项目顺利推进,阿里云邀请企业开发者和数据库负责人到云谷园区,与PolarDB V2.0技术专家面对面交流。扫描海报二维码报名,我们将根据信息为您申请入园。欢迎参与,共同探讨PolarDB的最新技术和应用!
|
3月前
|
存储 JSON NoSQL
学习 MongoDB:打开强大的数据库技术大门
MongoDB 是一个基于分布式文件存储的文档数据库,由 C++ 编写,旨在为 Web 应用提供可扩展的高性能数据存储解决方案。它与 MySQL 类似,但使用文档结构而非表结构。核心概念包括:数据库(Database)、集合(Collection)、文档(Document)和字段(Field)。MongoDB 使用 BSON 格式存储数据,支持多种数据类型,如字符串、整数、数组等,并通过二进制编码实现高效存储和传输。BSON 文档结构类似 JSON,但更紧凑,适合网络传输。
97 15
|
3月前
|
人工智能 物联网 大数据
解密时序数据库的未来:TDengine Open Day技术沙龙精彩回顾
在数字化时代,开源已成为推动技术创新和知识共享的核心力量,尤其在数据领域,开源技术的涌现不仅促进了行业的快速发展,也让更多的开发者和技术爱好者得以参与其中。随着物联网、工业互联网等技术的广泛应用,时序数据库的需求愈发强烈,开源的兴起更是为这一技术的创新与普及提供了强有力的支持。
59 3
|
3月前
|
人工智能 容灾 关系型数据库
【AI应用启航workshop】构建高可用数据库、拥抱AI智能问数
12月25日(周三)14:00-16:30参与线上闭门会,阿里云诚邀您一同开启AI应用实践之旅!

热门文章

最新文章