系统架构设计师-数据库系统(3)

目录

一、数据控制

        1、安全性

        2、完整性

        3、并发控制

        4、故障恢复

二、数据库设计概述

        1、数据库设计关注的问题

        2、数据库性能优化

        3、规范化与反规范化


一、数据控制

        1、安全性

系统架构设计师-数据库系统(3)_第1张图片

        2、完整性

                (1)实体完整性约束:规定基本关系的主属性不能取空值。

                (2)参照完整性约束:关系与关系间的引用,其他关系的主键或空值。

                (3)用户自定义完整性约束:应用环境决定。

                【触发器】:可以完成一些复杂的完整性约束。例如:对表A的某行或某个字段进行监听,如果发生变化就可以同步做更新。

        3、并发控制

系统架构设计师-数据库系统(3)_第2张图片

         【事务】

        (1)原子性 

                事务中包含的各项操作在一次执行过程中,只允许出现两种状态之一,要么都成功,要么都失败。任何一项操作失败都会导致整个事务的失败,同时其它已经被执行的操作都将被撤销并回滚,只有所有的操作全部成功,整个事务才算是成功完成。

        (2)一致性

                事务的执行不能破坏数据库数据的完整性和一致性,一个事务在执行前和执行后,数据库都必须处在一致性状态。例如:从A账号向B账号转钱,不可能A账户扣了钱,B账户却没收到钱。                

        (3)隔离性

                在并发环境中,并发的事务是相互隔离的,一个事务的执行不能被其它事务干扰。不同事务并发操作相同数据时,每个事务都有各自完整的数据空间。 

        (4)持续性(持久性)

                事务一旦提交后,数据库中的数据必须被永久保存下来。即使服务器系统崩溃或服务器宕机等故障,只要数据库重新启动,就一定能够将其恢复到事务成功结束后的状态。

        【封锁协议

                S封锁:共享锁,读锁,可重复加锁。

                X封锁:排他锁,写锁,不可重复加锁,如已加别的锁需等待解锁后在进行加锁。

        (1)一级封锁协议:只有X锁,只能加一次。可以解决丢失更新问题

        (2)二级封锁协议:有S锁也有X锁,读完立即释放S锁。可以解决脏数据的读出

        (3)三级封锁协议:有S锁也有X锁,事务结束才释放S锁。可以解决不可重复读问题

        (4)两段锁协议:加解锁操作在整个事务的代码段中分开,前半段都是加锁,后半段都是解锁。

        4、故障恢复

                (1)冷备份

                        也称为静态备份,是将数据库正常关闭,在停止状态下,将数据库的文件全部备份(复制)下来。

                (2)热备份

                        也称为动态备份,是利用备份软件,在数据库正常运行的状态下,将数据库中的数据文件备份出来。

                【完全备份】:备份所有数据。

                【差量备份】:仅备份上一次全备份之后变化的和数据。

                【增量备份】:备份上一次备份之后变化的数据。

                【日志文件】:事务日志是针对数据库改变所作的记录,它可以记录针对数据库的任何操作,并将记录结果保存在独立的文件中。

                例如下计划:

系统架构设计师-数据库系统(3)_第3张图片

                        周日全备,周一周二根据周日数据进行增备,周三根据周日数据进行差备,周四根据周三数据进行增备,周五根据周日数据进行差备,周六根据周五数据进行增备。

                【故障及解决方法

系统架构设计师-数据库系统(3)_第4张图片

二、数据库设计概述

        1、数据库设计关注的问题

                性能数据一致性、安全

        2、数据库性能优化

                理论上看:在数据库优化设计方面,同等条件下,自然连接的性能优于笛卡尔积。

系统架构设计师-数据库系统(3)_第5张图片

        3、规范化与反规范化

                【规范化

系统架构设计师-数据库系统(3)_第6张图片

                随着规范化范式级别的提升,查询效率降低了。

                【反规范化

系统架构设计师-数据库系统(3)_第7张图片

系统架构设计师-数据库系统(3)_第8张图片

                【反规范化优缺点

                        优点:连接操作少,检索快统计快,需要查的表减少,检索容易。

                        缺点

系统架构设计师-数据库系统(3)_第9张图片

你可能感兴趣的:(软考高级,系统架构师,系统架构,软件工程)