系统分析师--11数据库系统

11.数据库系统

数据库模式

三级模式-两层映射

三级模式-两层映射


ER模型

数据库设计过程

数据库设计过程

ER模型建模

  • 集成的方法
    • 多个局部E-R图一次集成
    • 逐步集成
  • 集成产生的冲突及解决办法
    • 属性冲突
      • 包括属性域冲突和属性取值冲突
    • 命名冲突
      • 包括同名异义和异名同义
    • 结构冲突
      • 包括同一对象在不同应用中具有不同的抽象,以及同一实体在不同局部E-R图中所包含的属性个数和属性排列次序不完全相同
E-R图转换为关系模式
  • 一对一进行任意归并
  • 一对多归并到多端
  • 多对多不能进行归并,需要新建联系
  • 三个以上的实体之间的一个多元联系则需要转换成实体数+关系数个联系

关系代数

并-交-叉

并交叉

笛卡尔积-投影-选择

笛卡尔积投影选择

自然连接

自然连接


规范化理论

  • 非规范化的关系模式,可能存在的问题包括:数据冗余、更新异常、插入异常、删除异常。
函数依赖

设R(U)是属性U上的一个关系模式,X和Y是U的子集,r为R的任一关系,如果对与r中的任意两个元组u,v,只要由u[X]=v[X],就有u[Y]=v[Y],则称X函数决定Y,或称Y函数依赖于X记为X->Y
函数依赖

  • 候选键
    • 唯一标识元组,且无冗余
    • 候选键可以有1个也可以有多个
    • 候选键可以是单属性,也可以是多属性组合
  • 主键
    • 从候选键中任选一个
  • 外键
    • 其它关系的主键
    • 不是本关系的候选键
求候选键
  • 将关系模式的函数依赖关系用‘有向图’的方式表示
  • 找入度为0的属性,并以该属性集合为起点,尝试遍历有向图,若能正常遍历图中所有节点,则该属性集即为关系模式的候选键
  • 若入度为0的属性集不能遍历图中所有节点,则需要尝试性的将一些中间结点并入入度为0的属性集中,直至该集合能遍历所有结点,集合为候选键
范式

范式

无损分解
  • 保持函数依赖分解
    • 设数据库模式p={R1,R2,…,RK}是关系模式R的一个分解,F是R上的函数依赖集,p中每个模式Ri上的FD集是Fi。如果{F1,F2,…,FK}与F是等价的(即相互逻辑蕴含),那么称分解p保持FD
  • 无损分解
    • 有损
      • 不能还原
    • 无损
      • 可以还原
  • 无损联接分解
    • 指将一个关系模式分解成若干个关系模式后,通过自然联结和投影等运算仍能还原到原来的关系模式

无损分解


并发控制

基本概念

并发控制基本概念

  • 一级封锁协议
    • 事务T在修改数据R之前必须先对其加X锁,直到事务结束后才释放
    • 可以防止丢失修改
  • 二级封锁协议
    • 一级封锁协议加上事务T在读取数据R之前先对其加S锁,读完后可释放S锁
    • 可防止丢失修改,还可以防止读“赃”数据
  • 三级封锁协议
    • 一级封锁协议加上事务T在读取数据R之前先对其加S锁,直到事务结束才释放
    • 可以防止丢失修改,防止读“赃数据”与防止数据重复读
  • 两端锁协议
    • 可串行化的。可能发生死锁
  • S锁
    • 对于T1如果对A加了读锁,其它事务只能在A上加读锁,不能加写锁,事务T1自己可以升级S锁到X锁
  • X锁
    • 对于T1如果对A加了写锁,其他事务不能对A加任何锁

数据库完整性约束

  • 实体完整性约束
    • 主键
    • 唯一,且非空
  • 参照完整性约束
    • 外键
    • 外键必定是其他属性的码,或者为空
  • 用户自定义完整性约束
    • 限定取值区间
  • 触发器
    • 脚本编程

数据库安全

  • 用户标识和鉴定
    • 最外层的安全保护措施,可以使用用户账户,口令及随机数检验等方式
  • 存取控制
    • 对用户进行授权,包括操作类型(查询、插入、删除、修改)和数据对象(主要是数据范围)的权限
  • 密码存储和传输
    • 对远程终端信息用密码传输
  • 视图的保护
    • 对视图进行授权
  • 审计
    • 使用一个专用文件或数据库,自动将用户对数据库的所有操作记录下来

数据备份

  • 冷备份
    • 也称为静态备份,是将数据库正常关闭,在停止状态下,将数据库的文件全部备份(复制)下来
  • 热备份
    • 也称为动态备份,是利用备份软件,在数据库正常运行的状态下,将数据库中的数据文件备份出来
  • 冷备份
    • 优点
      • 非常快速的备份方法(只需复制文件);容易归档(简单复制即可);容易恢复到某个时间点上(只需将文件再复制回去);能归档方法相结合,做数据库“最佳状态”的恢复;低度维护,高度安全
    • 缺点
      • 单独使用时,只能提供到某一时间点上的恢复;再实施备份的全过程中,数据库必须要作备份而不能做其他工作;若磁盘空间有限,只能复制到磁带等其他外部存储设备上,速度会很慢;不能按表或按用户恢复
  • 热备份
    • 优点
      • 可在表空间或数据库文件级备份,备份的时间短;备份时数据库仍然可以使用;可达到秒级恢复(恢复到某一时间点上);可对几乎所有数据库实体做恢复;恢复是快速的
    • 缺点
      • 不能出错,否则后果严重;若热备份不成功,所得结果不可用于时间点的恢复;因难于维护,所以要特别小心,不允许失败
备份方式
  • 完全备份
    • 备份所有数据
  • 差量备份
    • 只备份上一次完全备份之后变化的数据
  • 增量备份
    • 备份上一次备份之后变化的数据
  • 日志文件
    • 事务日志是针对数据库改变所做的记录,它可以记录针对数据库的任何操作,并将记录结果保存再独立的文件中

数据库故障与恢复

故障关系故障原因解决方法
事务本身的可预期故障本身逻辑在程序中预先设置Rollback语句
事务本身的不可预期故障算术溢出、违反存储保护由于DBMS的恢复子系统通过日志,撤销事务对数据库的修改,回退到事务初始状态
系统故障系统停止运转通常使用检查点法
介质故障外存被破坏一般使用日志重做业务

分布式数据库

体系结构

分布式数据库-体系结构

各种概念
  • 分布透明性
    • 分片透明性
      • 分不分片,用户感受不到
    • 位置透明性
      • 数据存放再那里,用户不用管
    • 局部数据模型透明性(逻辑透明)
      • 用户不用关系局部数据模型
  • 分布式数据库管理系统-组成
    • LDBMS
    • GDBMS
    • 全局数据字典
    • 通信管理(CM)
  • 分布式数据库管理系统-结构
    • 全局控制集中的DDBMS
    • 全局控制分散的DDBMS
    • 全局控制部分分散的DDBMS
联邦数据库
  • 联邦数据库系统(FDBS)是一个彼此协作却又相互独立的成员数据库(CDBS)的集合,它将成员数据库系统按不同程度进行集成,对该系统整体提供控制和协同操作的软件叫做联邦数据库管理系统(FDBMS)
  • 联邦数据库特征
    • 分布性
    • 异构性
    • 自治性
    • 透明性
  • 联邦数据库分类
    • 紧耦合
    • 松耦合
NoSQL

NoSQL(Not-only SQL):随着互联网web2.0网站的兴起,传统的关系数据库再应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展

NoSQL

  • 缺点
    • 成熟度不够,大量关键特性有待实现
    • 开源数据库产品的支持力度有限
    • 数据挖掘与商务智能支持不足,现有的产品无法直接使用NoSQL数据库
    • NoSQL数据库专家较少,大部分都处于学习阶段
  • SQL + NoSQL = MoreSQL/NewSQL
  • redis、mongodb、flare、cassandra、couchdb、oracle nosql database、Tokyo cabinet

反规范化

由于规范化会使表不断的拆分,从而导致数据表过多,这样虽然减少了数据冗余,提高了增、删、改的速度,但会增加查询的工作量。系统需要进行多次连接,才能进行查询操作,使得系统的效率大大的下降

  • 技术手段
    • 增加派生性冗余列
    • 增加冗余列
    • 重新组表
    • 分割表

内存数据库

  • 内存数据库抛弃了磁盘数据管理的传统方式,基于全部数据都在内存中重新设计了体系结构,并且再数据缓存、快速算法、并行操作方面也进行了相应的改进、所以数据处理比传统数据库的数据处理速度要快很多,一般都在10倍以上。内存数据库的最大特点是其“主拷贝”或“工作版本”常驻内存,即活动事务只与实时内存数据库的内存拷贝打交道
  • 常见的内存数据库包括:redis,extremedb,tt,fastdb,sqlite,microsoft sol server compact,mysql的memory存储引擎等

数据库性能优化

数据库性能优化


大数据

大数据

  • 大数据处理系统应该具有的重要特征
  • 高度可扩展性
  • 高性能
  • 高度容错
  • 支持异构环境
  • 较短的分析延迟
  • 易用且开放的接口
  • 较低成本
  • 向下兼容性
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值