数据第一讲
联机事务处理设计注意事项
> 对于OLTP系统来说,I/O瓶颈是个很大的问题.原因是修改整个数据库中数据的用户很多.所以设计数据库的时,应确定数据可能的访问模式,并将经常访问的数据放在一起,使用File Group和RAID(独立磁盘冗余阵列).
>缩短事务,无论何时,只要有可能,就通过运行单个Procedure来处理整个事务.在事务内对表的引用顺序可能会影响并发性.将对经常访问的表的引用置于事务的末尾,一边控制锁的持续时间减至最短.
>联机备份,OLTP系统的常见特点是连续操作,所以应将备份操作安排再活动不频繁时进行.以使对用户的影响减至最少.
>数据库的高度规范化.减少冗余信息,以加快Update速度.,还能影响备份的速度.
>很少或者没有历史数据或者聚合数据. 可以将很少引用的数据鬼挡道单独的数据库中,或者从经常更新的表中一处,放在只包含历史数据的表中.这样使表尽可能的小,缩短备份时间.改善性能.
>小心使用索引.每次添加或者修改时,必须更新Index,若要避免对经常更新的表进行过多的索引.索引应该保持较窄.
决策支持
决策支持数据库应用程序最适于不更改数据的数据查询。例如,公司可以定期地按日期、销售地区或产品汇总其销售数据,并将该信息存储在单独的数据库中以供高级管理人员分析时使用。若要作出业务决策,用户必须能够基于各种条件,通过查询数据快速地确定销售趋势。然而,他们不必更改这些数据。决策支持数据库中的表建立了大量索引,通常要对原始数据进行预处理和组织,以支持要使用的各种查询。因为用户并不更改数据,所以不存在并发性和原子性问题;又因为数据只定期更改,所以可以在非工作时间和低流量时间对数据库进行大容量更新。
决策支持设计注意事项
决策支持系统数据库的设计应能够改进下列方面:
- 大量索引
决策支持系统只需要很少的更新,但数据量很大。可使用大量索引提高查询性能。
- 数据库的非规范化
引入预聚合或汇总数据以满足常见的查询要求,并缩短查询响应时间。
- 使用星型架构或雪花架构来组织数据库内的数据。