http://jingh3209.blog.163.com/blog/static/156966720091054453352/
操作型数据存储区(ODS,Operational Data Store),是为了弥补业务系统和数据仓库之间的数据同步差距而提出的,要解决的问题:"对一个特定的业务流程来说,怎么才能提供最新的、跨功能部门之 间的信息",例如对客户服务人员,他需要销售、库存、市场和研发等各部门的最新数据,而这些数据原来是分散在不同部门的不同应用系统的;如果通过数据仓库 来实现数据集成,则实时性难以保证,或者建设成本很高。
ODS是数据仓库体系结构中的一个可选部分,ODS具备数据仓库的部分特征和OLTP系统的部分特征,它是"面向主题的、集成的、当前或接近当前 的、不断变化的"数据,同数据仓库类似,ODS也是面向主题的、集成的,但是其最大特点是数据是可更新的,甚至由业务系统通过触发器直接更新。因 此,ODS是业务系统和DW之间更偏向业务系统的数据存储区域。
一般在带有ODS的系统体系结构中,ODS都设计为如下几个作用。
1.在业务系统和数据仓库之间形成一个隔离层
一般的数据仓库应用系统都具有非常复杂的数据来源,这些数据存放在不同的地理位置、不同的数据库、不同的应用之中。从这些业务系统对数据进行抽取并 不是一件容易的事。因此,ODS用于存放从业务系统直接抽取出来的数据,这些数据从数据结构、数据之间的逻辑关系上都与业务系统基本保持一致。因此在抽取 过程中极大地降低了数据转化的复杂性,而主要关注数据抽取的接口、数据量大小、抽取方式等方面的问题。
2.转移一部分业务系统细节查询的功能
在数据仓库建立之前,大量的报表、分析是由业务系统直接支持的,在一些比较复杂的报表生成过程中,对业务系统的运行产生相当大的压力。ODS的数据 从粒度、组织方式等各个方面都保持了与业务系统的一致,那么原来由业务系统产生的报表、细节数据的查询自然能够从ODS中进行,从而降低业务系统的查询压 力。
3.完成数据仓库中不能完成的一些功能
一般来说,在带有ODS数据仓库体系结构中,DW层所存储的数据都是汇总过的数据,并不存储每笔交易产生的细节数据。但是在某些特殊的应用中,可能 需要对交易细节数据进行查询,这时就需要把细节数据查询的功能转移到ODS来完成,而且ODS的数据模型按照面向主题的方式进行存储,可以方便地支持多维 分析等查询功能。
在一个没有ODS层的数据仓库应用系统体系结构中,数据仓库中存储的数据粒度是根据需要而确定的,但一般来说,最为细节的业务数据也是需要保留的, 实际上数据的内容也就相当于ODS。但与ODS所不同的是,这时的细节数据不是"当前、不断变化的"数据,而是"历史的,不再变化的"数据。ODS可以和 DW形成互补的整体,构成完整的战术决策支持系统架构,然而需要注意的是,数据抽取,要么抽取到ODS中,要么抽取到DW中,不能同时都抽取;而DW会定 时到ODS进行数据抽取,这就是一个关键的ETL设计准则:即应用"Single Source Population"(单源传播),以保证数据在ETL过程中的一致性。
利用ODS+DW实现战术决策支持有其非常直观的优势:利用ODS实现实时或者准实时的数据抽取,而且ODS的数据量不大,可以比较高效地进行数据的修改和更新,并且可以提高查询的效率。而利用数据仓库的海量存储,可以实现历史数据的查询,实现战略决策支持。
但是,这种方式也有很明显的劣势:由于ODS和DW的结构和模型是不同的,这需要进行不同的系统和数据模型设计,也需要不同的系统维护过程,这就相应地增加了系统的使用成本。
分享到:
相关推荐
ETL过程从各种数据源抽取数据,经过清洗、转换和规范化,然后加载到数据仓库或操作型数据存储区(ODS)。ODS是介于操作型系统和数据仓库之间的临时存储,用于快速提供当前业务状态的详细信息。 数据仓库的结构一般...
操作型数据存储区(ODS)作为数据仓库的前置阶段,用于整合来自不同系统的数据,确保结构适合于分析需求。 选择技术和平台是数据仓库项目的重要决策,因为它影响着系统的性能、扩展性和维护成本。SQL Server 2005是...
数据仓库的体系结构通常包括操作型数据存储区(ODS)、数据抽取、转换和加载(ETL)过程、数据仓库(DW)以及数据集市(DM)。ODS是连接操作型系统和数据仓库的桥梁,提供实时或近实时的数据访问。ETL负责从各种数据...
数据源的定义则是为了整合来自不同业务系统的数据,解决数据不一致性和完整性问题,通常会创建一个操作型数据存储区(ODS)。 技术与平台的选择至关重要,它们决定了数据仓库的性能、可扩展性和成本。数据抽取(ETL...
操作型明细据是指用于存储操作型数据的数据仓库,通常用于存储操作型数据、实时数据、高频率数据等,以便支持实时数据分析和处理。 归档数据区 归档数据区是指用于存储归档数据的存储区域,通常用于存储历史数据、...
通过这个定制的数据存储区,我们可以方便地读取和写入HDF5文件中的时间序列数据,确保数据的组织有序且易于分析。 首先,我们需要了解MATLAB中的HDF5数据存储API。`hdf5`工具箱提供了`h5read`和`h5write`函数,用于...
【ESP32 SDK开发-Flash数据存储NVSNVS (Non-Volatile Storage) 是ESP32 SDK提供的一种在内部Flash中存储非易失性数据的机制。它为开发者提供了一种安全、高效的方式来存储应用程序的数据,即使在电源断电后,这些...
这个节点是用来设定哪些存储区在电源循环后应该保持其数据不变。 在“保持范围”中,你可以选择希望在上电后保留的存储区类型,包括V(变量存储区)、M(位存储区)、T(定时器)和C(计数器)。对于定时器,只能...
- SDCard操作通常涉及读写外部存储,即用户可以共享的数据存储区。 2. **掌握Android SQLite数据库使用方法**: - SQLite是一款轻量级的关系型数据库管理系统,广泛应用于Android应用开发中。 - 主要操作包括...
数据存储和处理是异步型LED显示屏设计的核心。正确的选择和设计数据存储方案直接影响显示屏的性能和成本。在数据存储方面,需考虑存储器类型(如SRAM、Flash)、容量、读/写速度等因素;在数据处理上,则涉及数据...
在IT行业中,尤其是在进行自动化和数据传输时,如何有效地存储和传递二进制数据是一个重要的问题。SafeArray是Microsoft COM(组件对象模型)中解决这一问题的一种机制,它主要用于在网络环境中处理数组型参数的传递...
在西门子PLC中,数据存储主要涉及工作存储区(Work Memory)和系统存储区(System Memory)。工作存储区包含用户程序、变量和临时计算结果,而系统存储区则存储系统参数、诊断信息等。 数据存储控制的关键点包括: ...
操作型数据存储是一种临时性的数据存储区,主要用于快速地将源系统数据加载进来,并进行一定的清洗和转换。ODS的数据保留时间较短,通常用于支持实时的业务查询需求。 **1.7 元数据** 元数据是对数据仓库中数据的...
在计算机科学中,数据存储是计算机系统中至关重要的部分,它涉及到如何将各种类型的数据有效地保存在硬件设备上,以便于后续的处理和访问。本文将深入探讨数据在计算机内存中的存储位置,以及如何通过指针来定位这些...
- **COMPACT**:参数及局部变量放入分页片外存储区,通过寄存器R0和R1(@R0,@R1)间接寻址,栈空间位于内部数据存储区中。 - **LARGE**:参数及局部变量直接放入片外数据存储区使用数据指针DPTR来进行寻址。这种...
- **静态变量**:存储在全局/静态存储区,生命周期为整个程序运行期间。 - **常量**:存储在常量存储区,不可修改。 #### 五、内存管理的最佳实践 1. **合理选择存储区域**:根据数据的生命周期和大小选择合适的...
MongoDB 的数据存储结构是理解其工作原理的关键部分。在MongoDB中,数据以BSON(Binary JSON)格式存储,这种格式允许高效地存储和检索复杂的数据结构。 MongoDB 默认的数据目录是 `/data/db`,在这个目录下,每个...