数据库三级--第一章
第一章 数据库应用系统开发方法
数据的三级模式和两级映像中的三级模式结构
- 外模式:用户可见的部分数据的存在形式,最外层,反映了用户对数据的要求
- 模式:全体数据的逻辑结构且用户不可见,是三级模式的中间部分,反映了设计的全局逻辑要求
- 内模式:数据库的物理结构和存储方式,最底层,反映了数据在计算机物理结构中的实际存储形式
- 模式改变时,由数据库管理员对各个外模式/模式的映像作相应的改变,但是外模式可以不变
- 应用程序是依据数据的外模式编写的,从而应用程序不必修改,因此,外模式/模式映像保证了数据与程序的逻辑独立性
- 模式/内模式保证了数据库中数据与应用程序间的物理独立性
概念数据模型
- 用来描述数据的概念化结构
- 使数据库设计人员在设计的初始阶段摆脱计算机系统及DBMS的具体技术问题,集中精力分析数据以及数据之间的联系等,与具体的数据库管理系统无关,所以没有描述数据的完整性约束条件
数据字典
- 对数据的数据项、数据结构、数据流 、数据存储、处理逻辑、外部实体等进行定义和描述
- 各种对象的描述信息存放在数据库的数据字典中
- 目的:对数据流程图中的各个元素做出详细的说明
- 数据字典一般由数据库管理系统本身管理和维护
数据库设计
-
数据库应用系统逻辑设计阶段工作内容:
- 数据库逻辑结构设计
- 数据库事务概要设计
- 应用程序概要设计
-
物理设计阶段主要活动:
- 数据库逻辑描述、确定存储结构
- 存文件组织与存取设计、取路径的选择和调整
- 数据分布设计、确定数据存放位置和确定存储分配
模型
- 瀑布模型:基于严格的、明确的需求作为软件系统开发基础的软件开发模型
- 快速原型模型是一种快速开发方法,其指导思想是不必把前期各阶段的活动做的尽善尽美后才启动下阶段的活动
- 螺旋模型是将瀑布模型的系统化与快速模型的可修改性结合起来,引入风险评估活动
事务规范
数据处理需求分析结果也可以表示为事务规范
- 事务用户
- 事务名称
- 事务描述
- 事务所访问的数据项
操作可行性:人员资源、软件资源、硬件资源、工作环境
DBAS生命周期模型
- DBAS生命周期中规划与分析的主要工作内容包括系统规划与定义、项目规划和可行性分析
- DBAS规划与分析阶段任务:
- 系统规划与定义(任务陈述、确定任务目标、确定范围和边界、确定用户视图)
- 可行性分析(技术可行性、经济可行性、操作可行性、开发方案可行性)
- 项目规划(项目团队、项目环境、项目活动、成本预算、进度计划)
- 需求分析
- 数据需求分析:描述信息内容形成数据字典
- 功能需求分析:数据处理需求分析、业务规则需求分析
- 性能需求分析:响应时间、系统吞吐量、允许并发访问的最大用户数、每秒TPS代价值
- 每TPS代价值是用于衡量系统性价或性能价格比的指标
- 其他需求分析:存储需求分析、安全性需求分析、备份和恢复需求分析
- 系统设计
- 数据库应用系统设计(根据三级模式结构进行设计)
- 概念设计:
- 数据库概念模式设计 自下而上的ER设计
- 系统总体设计
- 逻辑设计阶段工作内容:
- 数据库逻辑结构设计 设计视图和关系模式的完整性约束
- 数据库事务概要设计
- 应用程序概要设计
- 物理设计阶段主要活动:(以下三点未严格区分)
- 数据库逻辑描述、确定存储结构
- 存文件组织与存取设计、取路径的选择和调整
- 数据分布设计、确定数据存放位置和确定存储分配
- 概念设计:
- 数据库应用系统设计(根据三级模式结构进行设计)
- 实现与部署
- 建立数据库结构
- 数据加载
- 事务和应用程序的编码及测试
- 系统集成、测试和运行
- 系统部署
- 运行和维护(主要由DBA负责 时间最长)
- 主要包括日常维护、系统监控与分析、系统性能优化调整、系统进化升级等
数据库视图
- 是从一个或几个基本表(或视图)中导出的虚表
- 数据库中只存放了视图的定义,不存视图对应的数据
- 它是原始数据库数据的一种变换,是查看表中数据的一种方式
- 可以将视图看成是一个移动的窗口,通过它可以看到感兴趣数据
- 视图是从一个或多个实际表中获得的
- 视图的特点
- 简单性:简化用户对数据的理解,简化操作
- 安全性:通过视图只能查询和修改所看到的数据,数据库中的其他数据不能读取修改
- 逻辑独立性:帮助用户屏蔽真实表结构变化带来的影响
- 视图的作用(根据特点理解):
- 简化数据查询语句
- 使用户从多角度看待同一数据
- 提高数据安全性
- 提供一定程度上的逻辑独立性
数据库性能优化:
- 数据库运行环境
- 参数调整
- 索引调整
- 事务调整
- 模式调整
- 硬件调整与升级和应用程序优化 存储介质更改优化
数据库应用系统日常维护
- 备份与恢复
- 完整性维护
- 安全性维护
- 存储空间管理和并发控制
关系与关系模式
- 关系模式描述关系的静态结构,是静态的、稳定的
- 关系是动态、随用户对数据库的操作而变化的
DBAS分四个层次来实现
- 表示层:负责所有与用户交互的功能,用户对数据库应用系统最直观感受在这层实现
- 业务逻辑层:将表示层获取的数据进行组织后,传递给数据访问层,或将数据访问层获取的数据进行相应加工处理后,传送给表示层用于展示
- 数据访问层:负责与DBAS交互,提取或存入应用系统所需的数据
- 数据持久层:负责保存和管理应用系统数据
TIPS:
- 一个实体集中的属性名要唯一
- 属性名一般用名词或者名词短语命名
- 一个属性的值必须属于唯一的域
- 实体集的标识属性能够唯一识别实体集中每一个实体
- 表示属性的取值不能重复且不可以为空
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?