数据仓库是弄啥呢

Posted IT海贼船

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据仓库是弄啥呢相关的知识,希望对你有一定的参考价值。



数据架构分层的主要原因:

1通过数据预处理提高效率,因为预处理,所以会存在冗余数据
2如果不分层而业务系统的业务规则发生变化,就会影响整个数据清洗过程,工作量巨大
3通过分层管理来实现分步完成工作,这样每一层的处理逻辑就简单了


本案例的数据架构分为四层:

数据仓库是弄啥呢


数据缓存层LZ(landing zone):此层的表结构与源数据保持基本一致,每小时根据实际情况增量或全量进行数据抽取。数据缓存区即是将不同服务器、不同数据库中的数据通过各种抽取包抽取数据然后存放在一个数据库中。


它的数据来源可以通过两种抽取形式:

1.全量抽取对于经常变化更新的数据一般采用全量的方式进行抽取):

全量抽取类似于数据迁移或数据复制,它将数据源中的表或视图的数据原封不动的从数据库中抽取出来,并转换成自己的ETL 工具可以识别的格式。全量抽取比较简单。

数据仓库是弄啥呢

2.增量抽取对于数据量大的数据源可以采用增量的方式进行抽取):

增量抽取只抽取自上次抽取以来数据库中要抽取的表中新增或修改的数据。在ETL 使用过程中,增量抽取较全量抽取应用更广。

目前增量数据抽取中常用的捕获变化数据的方法有:

  1. 触发器方式(又称快照式)

  2. 时间戳方式.

  3. 全表删除插入方式

  4. 全表比对方式

  5. 日志表方式

  6. Oracle 变化数据捕捉(CDC 方式)

    在这里我就不详细阐述了,如有兴趣可自行百度每个捕获数据的方法。

数据仓库是弄啥呢


操作数据层ODS(OperationalData Store):在业务系统和数据仓库之间形成一个隔离层,转移一部分业务系统细节查询的功能。每小时从LZ层增量或全量抽取数据。

 

ODS设计的作用:

  1. 在业务系统和数据仓库之间形成一个隔离层

    ODS用于存放从业务系统直接抽取出来的数据,这些数据从数据结构、数据之间的逻辑关系上都与业务系统基本保持一致,因此在抽取过程中极大降低了数据转化的复杂性,而主要关注数据抽取的接口、数据量大小、抽取方式等方面的问题。

  2. 转移一部分业务系统细节查询的功能

    ODS的数据从粒度、组织方式等各个方面都保持了与业务系统的一致,那么原来由业务系统产生的报表、细节数据的查询自然能够从ODS中进行,从而降低业务系统的查询压力。

  3. 完成数据仓库中不能完成的一些功能

    一般来说,带有ODS数据仓库体系结构中,DW层所存储的数据都是进行汇总过的数据,并不存储每笔交易产生的细节数据,但是在某些特殊的应用中,可能需要对交易细节数据进行查询,这时就需要把细节数据查询的功能转移到ODS来完成,而且ODS数据模型按照面向主题的方式进行存储,可以方便地支持多维分析等查询功能。

    ODS重点考虑业务系统数据是什么样子的

    PS:ODS包括当前数据,即实时数据

 

数据仓库层DW(DataWarehouse):这层数据是面向主题来组织数据的,多维数据模型是最流行的数据仓库的数据模型,多维数据模型最典型的数据模式包括星型模式、雪花模式和事实星座模式

1.在多维数据仓库中,保存度量值的详细值或事实的表称为事实表

2.维度表包含了维度的每个成员的特定名称。维度成员的名称称为属性”(Attribute)

数据仓库是弄啥呢


本文以实例方式展示星型模式、雪花模式和事实星座模式和区别。

一.星型模式star schema

星型模式的核心是一个大的中心表(事实表),一组小的附属表(维表)。星型模式示例如下所示:

数据仓库是弄啥呢

二.雪花模式snowflake schema

雪花模式是星型模式的扩展,其中某些维表被规范化,进一步分解到附加表(维表)中。雪花模式示例如下图所示:


三.事实星座模式(Fact Constellation)或星系模式(galaxy schema

  数据仓库由多个主题构成,包含多个事实表,而维表是公共的,可以共享,这种模式可以看做星型模式的汇集,因而称作星系模式或者事实星座模式。本模式示例如下图所示: 

以上是关于数据仓库是弄啥呢的主要内容,如果未能解决你的问题,请参考以下文章

操作系统第三章处理机调度与死锁

计算机网络-------TCP协议的三握四挥

什么叫数据仓库?

争议 | 数据仓库的融合:实时数据仓库与历史数据仓库,应统一建模还是分开建模?

数据仓库与数据挖掘的关系,区别与联系

数据的数据仓库