1.2.3 操作型系统和分析型系统的对比
操作型系统和分析型系统是两种不同种类的信息系统。它们都与数据库技术相关,数据库提供方法支持这两种系统的功能。操作型系统和分析型系统以完全不同的方式使用数据库,不仅如此,分析型系统更加注重数据分析和报表,而操作型系统的目标是一个伴有大量数据改变的事务优化系统。
对于学习数据科学及其相关技术的读者,了解这两种信息处理方式的区别至关重要。这也是理解商业智能、数据挖掘、数据仓库、数据模型、ETL处理和大数据等系统的基础。
通过前面对两种系统的描述,我们可以对比它们的很多方面。表1-1总结了两种系统的主要区别。后面我们进一步讨论每一个容易产生疑惑的对比项,以帮助读者理解。
表1-1 操作型系统和分析型系统对比表
首先,两种系统的侧重点不同。操作型系统更适合对已有数据进行更新,所以是日常处理工作或在线系统的选择。相反,分析型系统提供在大量存储数据上的分析能力,所以这类系统更适合报表类应用。分析型系统通常用于查询历史数据,这有助于得到更准确的分析报告。
其次,因为这两种系统的目标完全不同,所以为了得到更好的性能,使用的数据模型和设计方法也不同。操作型系统数据库通常使用规范化设计,为普通查询和数据修改提供更好的性能。分析型数据库则具有典型的数据仓库组织形式。
基于这两个主要的不同点,我们可以推导出两种系统其他方面的区别。操作型系统上的查询更小,而分析型系统上执行的查询要复杂得多。所以通常操作型系统会比分析型系统快很多。
操作型系统的数据会持续更新,并且更新会立即生效。而分析型系统的数据更新是由预定义的处理作业同时装载大量的数据集合,并且在装载前需要做数据转换,因此整个数据更新过程需要较长的执行时间。
由于操作型系统要做到绝对的数据安全和可用性,所以需要实施复杂的备份系统。基本的全量备份和增量备份都是必须做的。而分析型系统只需要偶尔执行数据备份即可,这一方面是因为此类系统一般不需要保持持续运行,另一方面则是因为数据还可以从操作型系统中重复装载。
两种系统的空间需求显然都依赖于它们所存储的数据量。分析型系统要存储大量的历史数据,因此需要更多的存储空间。