小编给大家分享一下OLTP是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
一、定义
联机交易处理(OLTP, Online transaction processing)是指通过信息系统、电脑网络及数据库,以在线交易的方式处理一般实时性的作业数据,和更早期传统数据库系统大量批量的作业方式并不相同。OLTP通常被运用于自动化的数据处理工作,如订单输入、金融业务…等反复性的日常性交易活动。也称为面向交易的处理系统,其基本特征是顾客的原始数据可以立即传送到计算中心进行处理,并在很短的时间内给出处理结果。
二、特征
1、支持大量并发用户定期添加和修改数据。
2、反映随时变化的单位状态,但不保存其历史记录。
3、包含大量数据,其中包括用于验证事务的大量数据。
4、具有复杂的结构。
5、可以进行优化以对事务活动做出响应。
6、提供用于支持单位日常运营的技术基础结构。
7、个别事务能够很快地完成,并且只需访问相对较少的数据。OLTP 系统旨在处理同时输入的成百上千的事务。
8、实时性要求高。数据量不是很大。
交易一般是确定的,所以OLTP是对确定性的数据进行存取。比如存取款都有一个特定的金额)
并发性要求高并且严格的要求事务的完整、安全性。比如这种情况:有可能你和你的家人同时在不同的银行取同一个帐号的款)。
三、注意事项
事务处理系统数据库应设计为支持:
1.很好的数据放置。
对于 OLTP 系统,输入/输出瓶颈是一个尤为关心的问题,原因在于修改整个数据库中数据的用户很多。确定数据的可能访问模式,并将经常访问的数据放在一起。在此过程中,可辅以文件组和 RAID(独立磁盘冗余阵列)系统。
2.缩短事务以将长期锁减至最少,提高并发性。
在事务期间,避免用户交互。无论何时,只要有可能,就通过执行单个存储过程来处理整个事务。在事务内对表的引用顺序可能会影响并发性。将对经常访问的表的引用置于事务的末尾,以便将控制锁的持续时间减至最短。
3.联机备份。
OLTP 系统通常的特征是连续操作(一天 24 小时,一周 7 天),为达到此目的,停工时间要保持绝对最短。尽管 Microsoft SQL Server 2000 可以在数据库正在使用时对其进行备份,但是应将备份过程安排在活动不频繁时进行,以使对用户的影响减至最小。
4.数据库的高度规范化。
尽可能减少冗余信息以提高更新的速度,从而提高并发性。减少数据还可以提高备份的速度,因为只需要备份更少的数据。
5.很少或没有历史或聚合数据。
可以将很少引用的数据归档到单独的数据库中,或者从经常更新的表中移出,并置于仅含历史数据的表中。这将保持表尽可能地小,从而缩短备份时间,改善查询性能。
6.小心使用索引。
每次添加或修改行时,必须更新索引。若要避免对经常更新的表进行过多的索引,索引范围应保持较窄。请用索引优化向导设计索引。
四、OLAP与OLTP区别
OLTP | OLAP | |
用户 | 操作人员,低层管理人员 | 决策人员,高级管理人员 |
功能 | 日常操作处理 | 分析决策 |
DB设计 | 面向应用 | 面向主题 |
数据 | 当前的, 最新的细节的, 二维的分立的 | 历史的, 聚集的, 多维的集成的, 统一的 |
存取 | 读/写数十条记录 | 读上百万条记录 |
工作单位 | 简单的事务 | 复杂的查询 |
用户数 | 上千个 | 上百万个 |
DB大小 | 100MB-GB | 100GB-TB |
时间要求 | 具有实时性 | 对时间的要求不严格 |
主要应用 | 数据库 | 数据仓库 |