上云网站做等保,推广渠道方式,国外网页设计欣赏,常州专业网站建设数据库技术基础
导航 文章目录 数据库技术基础导航一、基础概念数据库系统数据库管理系统DBMS分类数据库技术的发展数据库体系结构 二、数据模型数据模型基本概念 三、数据库的控制功能事务概述SOL中事务定义语句日志文件故障种类两个操作Undo/Redo事务故障的恢复系统故障的恢…数据库技术基础
导航 文章目录 数据库技术基础导航一、基础概念数据库系统数据库管理系统DBMS分类数据库技术的发展数据库体系结构 二、数据模型数据模型基本概念 三、数据库的控制功能事务概述SOL中事务定义语句日志文件故障种类两个操作Undo/Redo事务故障的恢复系统故障的恢复介质故障的恢复介质故障的恢复需要DBA的介入封锁封锁协议活锁死锁 四、数据库安全机制五、数据仓库数据仓库的数据模式数据仓库的体系结构 六、数据挖掘数据挖掘相关技术 一、基础概念
数据库系统
★人员
系统分析员和数据库设计人员应用程序员最终用户数据库管理员 数据库管理系统
功能
★数据定义★数据操作★数据库运行管理★数据组织、存储和管理★数据库的建立和维护★其它功能
特征
★数据结构化且统一管理★有较高的数据独立性★数据控制功能 数据库的安全性数据库的完整性并发控制故障恢复
DBMS分类
关系数据库系统(RDBS):是支持关系模型的数据库系统借助于集合代数等概念和方法来处理数据库中的数据。面向对象的数据库系统(OODBS):支持以对象形式进行数据建模的数据库管理系统。对象关系数据库系统(ORDBS):在传统的关系数据模型基础上提供元组、数组和集合等更为丰富的数据类型以及处理新的数据类型的能力。
数据库技术的发展
人工管理阶段(20世纪50年代中期以前) 特点:数据量较少;数据不保存;没有软件系统对数据进行管理。 文件系统阶段(20世纪50年代后期至20世纪60年代中期)√ 特点:数据长期保存;使用文件系统管理数据;文件结构多样化。 数据库系统阶段(20世纪60年代后期至今) √特点:数据结构化;共享高;冗余低易扩充;独立性高;由DBMS统一管理和控制。
数据库体系结构
集中式数据库系统(20世纪60年代中期) 硬件结构决定;单用户数据库系统;高性能数据库系统。 C/S(客户端/服务器)体系结构 前端客户机系统和后端服务器系统;事务服务器和数据服务器。 并行数据库系统 由多个物理上连在一起的CPU组成而分布式系统的各个CPU在地理上式分开的。分为共享内存式多处理器和无共享式并行体系结构。 分布式数据库系统 分布式DBMS包括物理上分布、逻辑上集中的分布式结构和物理上逻辑上都分布的分布式数据库结构两种。
二、数据模型
数据模型基本概念 模型 对现实世界特征的模拟和抽象 数据模型 对现实世界数据特征的抽象 数据模型的三要素 数据结构、数据操作、数据的约束条件 概念数据模型 主要用于数据库设计 E-R模型 基本数据模型 用于实现DBMS 层次模型、网状模型、关系模型 实体的属性
简单属性复合属性单值属性多值属性NULL属性派生属性 扩充的E-R模型
弱实体 实体对于另一些实体具有很强的依赖关系例如:家属总是属于某职工的特殊化 一个实体集按照某些特征可以区分为几个子实体 例如:学生实体集可以分为研究生、本科生等子集 概括聚集
超类和子类模型使用特殊化圆圈和连线的一般方法来表示双竖边矩表示 子类“U表示特殊化圆圈中的0表示全特殊化“D表示不相交特殊化。
层次模型
采用树型结构表示数据与数据间的联系。
网状模型
采用网络结构表示数据与数据间联系。
关系模型
用二维表格结构表达实体集用外键表示实体间联系的数据模型称为关系模型关系同网状和层次模型的最大区别 用表中的数据而不是通过指针链来表示和实现实体间的联系
三、数据库的控制功能
事务概述
定义 事务是一系列的数据库操作是数据库应用程序的基本逻辑单位即应呈序对数据库的操作都应该以事务的方式执行。 4个特性(ACID) 原子性(Atomicity)一致性(Consistency)隔离性(lsolation)持久性(Durability)
事务状态
5种状态活动状态、部分提交状态、失败状态、提交状态、中止状态状态转换Begin-Transation、 End-Transation、Commit-Transation、 Abort-Transation SOL中事务定义语句
事务开始BEGIN TRANSACTION事务结束END TRANSACTIONROLLBACK事务回滚 表示事务非成功地结束COMMIT 事务提交 表示事务成功结束
日志文件
有两种格式供数据库系统采用
以记录为单位的日志文件 事务标识、操作类型、操作对象、更新前数据的旧值、更新后数据的新值以数据块为单位的日志文件 包括事务标识、被更新的数据块登记日志文件时必须严格按照并发事务执行的时间次序来登记且先写日志文件后写数据库
故障种类
事务故障 由于事务程序内部错误而引起的有些可以预期如金额不足等;有些不可以预期如非法输入、运算溢出等(逻辑错误)。系统进入一种不良状态导致事务无法继续执行(系统错误) 系统故障(通常称为软故障) 特定类型的硬件错误、操作系统故障、DBMS代码错误、突然停电等 介质故障(称为硬件故障) 是指外存故障例如磁盘损坏、磁头碰撞瞬时强磁场干扰等
两个操作Undo/Redo
Undo 撤销事务(Undo) 使数据库回复到执行前的正确状态将未完成的事务撤销 Redo 重做事务(Redo) 对已经提交的事务重新执行
事务故障的恢复
事务故障的恢复由系统自动完成对用户是透明的
步骤1:反向(从后向前)扫描日志文件查找该事务的更新操作步骤2:对该事务的更新操作执行逆操作也就是将日志记录更新前的值写入数据库步骤3:继续反向扫描日志文件查找该事务的其他更新操作并作同样处理步骤4:如此处理下去直到读到了此事务的开始标记事务故障恢复就完成
系统故障的恢复
在系统重启之后自动执行的
正向(从头到尾)扫描日志文件找出故障发生前已经提交的事务(这些事务既有BEGIN TRANSACTION 记录也有COMMIT记录)将其事务标识记入重做(REDO)队列。同时找出故障发生时尚未完成的事务(这些事务只有BEGIN TRANSACTION 记录无相应的COMMIT记录)将其事务标识记入撤销(UNDO)队列反向扫描日志文件对每个UNDO事务的更新操作执行逆操作也就是将日志记录中更新前的值写入数据库。正向扫描日志文件对每个REDO事务重新执行日志文件登记的操作也将是将日志记录中更新后的值写入数据库
介质故障的恢复
需要DBA的介入
装入最新的数据库后备副本使数据库恢复到最近一次转储时的一致性状态。转入相应的日志文件副本重做已完成的事务
介质故障的恢复需要DBA的介入
DBA只需要重装最近转储的数据库副本和有关的各日志文件副本然后执行系统提供的恢复命令具体的恢复操作仍由DBMS完成 封锁
排它锁 (简称X锁)又称写锁保证了其他事务在T释放A上的锁之前就不能再读取和修改A 共享锁 (简称S锁)又称读锁保证了其他事务可以读A但在T释放A上的S锁之前不能对A做任何修改 封锁的粒度 封锁对象的大小称为封锁的粒度封锁对象 可以是逻辑单元(如:属性、元组、关系、索引项、整个索引甚至整个数据库)可以是物理单元(如:数据页索引页)
封锁协议
三级封锁协议 一级封锁协议 解决丢失更新问题二级封锁协议 解决了读“脏”数据;不能保证可重复读三级封锁协议 防止丢失修改;不读“脏”数据;防止了不可重复读 两段封锁协议 保证可串行化第一阶段是获得封锁第二阶段是释放封锁
活锁
举个例子来说明活锁的概念如果事务T1封锁了数据R事多T2又请求封锁R于是T2等待。若T3也请求封锁R当T1释放了R上的锁之后系统首先批准了T3 的请求而T2仍等待。之后T4又请求封锁R当T3释放了R上的封锁后系统批准了T4的请求如此继续下去T2有可能永远等待这就形成了活锁避免活锁的简单方法是采用先来先服务的策略
死锁
举例来说明死锁的概念如果事务T1封锁了数据R1T2封锁了数据R2然后T1又请求封锁R2 因为T2已经封锁了R2所以T1等待T2释放R2:接着T2有申请封锁R1而T1已经封锁了R1T2则只能等待T1释放R1上的锁。这样就出现了这样的情况即T1在等待T2而T2又在等待T1T1和T2两个事务永远不能结束这就形成了死锁目前在数据库中解决死锁问题主要有两种方法√ 一个是采取一定的措施来预防死锁的发生另一个是允许发生死锁并采用一定手段定期诊断系统中是否有死锁如果发现了死锁则立即解除掉
四、数据库安全机制
用户标识与鉴别
访问控制
自主存取控制 授权角色 强制存取控制基于角色的存取控制
视图机制
数据加密
审计
备份/恢复
聚合、推理和多实例
五、数据仓库
改据仓库的基本特性
面向主题的数据是集成的数据是相对稳定的数据是反映历史变化的 数据仓库的数据模式
星状模式 一个事实表一级维表 雪花模式 一个事实表多级维表 事实星状模式 不止一个事实表共享维表
数据仓库的体系结构
三层体系 ·底 层 数据仓库服务器中间层 OLAP服务器顶层 前端工具口 从结构的角度 企业仓库数据集市虚拟仓库
数据转移
简单转移清洗集成聚集和概括
多维分析的基本动作
切片切块旋转
OLAP 中的基本概念
变量·维维的层次维的成员多维数组数据单元
六、数据挖掘
数据挖掘相关技术
关联分析 Apriori、FP-growth序列模式分析 AprioriAll、Apriorisome、GsP回归分析分类 C4.5、ID3、Logistic回归、朴素贝叶斯聚类 K-Means、DBSCAN、EM
数据挖掘的应用过程
确定挖掘对象准备数据建立模型数据挖掘结果分析知识应用