OLTP与OLAP的差异

系统类型

OLTP(在线交易系统)

OLAP(联机分析系统),DW(数据仓库)

数据来源

操作数据,OLTP通常是原始性数据源

联合型数据;OLAP数据来源于其他OLTP系统

数据用途

控制并运行基本的业务系统

辅助规划,问题解决以及决策支持

数据本质

揭示运行业务过程的某一个快照

多维度查看各类业务系统活动

插入与更新

简单并且快速

通过批量作业来更新大量数据

查询

相对规范化并且简单查询能很快返回结果

会涉及大量聚合操作,通常很复杂

处理速度

通常非常快

取决于数据量大小,批量作业以及复杂的查询可能需要数小时才能完成

空间需求

可能较小如果历史数据已经归档

因为存在聚合结构以及历史数据,通常数据量较大,并且比OLTP需要更多的索引

数据库设计

高度范式化

通常使用反范式化设计,星型转换使用较多

备份与恢复

操作系统数据对于业务系统的运行至关重要,必须经常性的备份,数据的丢失或者不一致不可接受

当对于常规的备份恢复,可以使用从OLTP数据源从新载入来作为恢复手段

越来越多的系统已经发展成为兼有OLTP与OLAP的混合型系统,这类系统的特征表现为白天为密集型实时性要求很高的在线交易,晚上则需要进行批量作业来生成报表。对于在线交易系统OLTP或者混合型应用而言,IOPS是一项非常重要的指标,因为OLTP应用涉及大量频繁的读写操作,需要更快的响应时间,要求更高的IOPS和更低的延迟。

最新文章

  1. System.Data.SqlClient.SqlError: FILESTREAM 功能被禁用”的错误
  2. JVM内存管理------JAVA语言的内存管理概述
  3. mesos+marathon+zookeeper的docker管理集群亲手搭建实例(环境Centos6.8)
  4. requireJS 用法
  5. InfluxDB Cli中查询结果中time格式显示设置
  6. Ubuntu 循环遍历当前目录下所有文本文件中的字符
  7. Android中为APP创建快捷方式的原理(自己的理解)
  8. 【POJ1021】Intervals (最短路解差分约束)
  9. 人民币符号¥在css和html正确显示
  10. C++在使用Qt中SLOT宏需要注意的一个小细节
  11. C#中操作刚导出的Excel,设置其为自动调整列宽
  12. iOS的category和protocol
  13. Oracle数据库常用SQL函数
  14. python3 Django集成Ueditor富文本编辑器
  15. 在go modules里使用go get进行包管理
  16. C++ 11 snippets , 2
  17. MT【31】傅里叶级数为背景的三角求和
  18. 10.Solr4.10.3数据导入(DIH全量增量同步Mysql数据)
  19. SQL Server 2012中LEAD函数简单分析
  20. Mac OS下 selenium 驱动safari日志

热门文章

  1. mysql-insert-返回主键id
  2. oracle创建dblink问题
  3. 【转】NGUI创建UIRoot后报NullReferenceException的解决办法
  4. 总结下遇到的C#新语法
  5. 使用Nginx在自己的电脑上实现负载均衡
  6. iftop ifstat
  7. Hbase中rowkey设计原则
  8. Windows-008-VirtualBox 安装 Win7 前沿配置详解
  9. [转]AppCompat 22.1,Goole暴走,MD全面兼容低版本
  10. 【转】Android M新控件之FloatingActionButton,TextInputLayout,Snackbar,TabLayout的使用