收藏,数据仓库建设与框架终于有人给讲明白了_建设数据仓库和数据集市(2)

2.数据仓库的数据是集成的

数据仓库的数据是从原有的分散的数据库数据抽取来的。操作型数据与DSS分析型数据之间差别甚大。

第一,数据仓库的每一个主题所对应的源数据在原有的各分散数据库中有许多重复和不一致的地方,且来源于不同的联机系统的数据都和不同的应用逻辑捆绑在一起;

第二,数据仓库中的综合数据不能从原有的数据库系统直接得到。因此在数据进入数据仓库之前,必然要经过统一与综合,这一步是数据仓库建设中最关键、最复杂的一步,所要完成的工作有:(1)要统一源数据中所有矛盾之处,如字段的同名异义、异名同义、单位不统一、字长不一致,等等。 (2)进行数据综合和计算。数据仓库中的数据综合工作可以在从原有数据库抽取数据时生成,但许多是在数据仓库内部生成的,即进入数据仓库以后进行综合生成的。

简单点来说:就是数据仓库中数据是很多数据源数据融合后加工的,跟原来业务系统的数据差别会很大,比如数据根据各中国源数据汇总统计的,或者通过特定算法ETL加工处理后得来的。所以叫集成的。

如下,公司各个保险业务库的数据,在数仓里,集成为一个保险主体的数据,既有明细数据也有各种汇总,统计,挖掘数据。

3. 数据仓库的数据是不可更新的(相对稳定的)

数据仓库的数据主要供企业决策分析之用,所涉及的数据操作主要是数据查询,一般情况下并不进行修改操作。

数据仓库的数据反映的是一段相当长的时间内历史数据的内容,是不同时点的数据库快照的集合,以及基于这些快照进行统计、综合和重组的导出数据,而不是联机处理的数据。数据库中进行联机处理的数据经过集成输入到数据仓库中,一旦数据仓库存放的数据已经超过数据仓库的数据存储期限,这些数据将从当前的数据仓库中删去。因为数据仓库只进行数据查询操作,所以数据仓库管理系统相比数据库管理系统而言要简单得多。

数据库管理系统中许多技术难点,如完整性保护、并发控制等等,在数据仓库的管理中几乎可以省去。但是由于数据仓库的查询数据量往往很大,所以就对数据查询提出了更高的要求,它要求采用各种复杂的索引技术;同时由于数据仓库面向的是商业企业的高层管理者,他们会对数据查询的界面友好性和数据表示提出更高的要求。

简单总结一下就是:数据仓库中保存的数据是一系列企业数据的历史快照,不建议被修改(实际分析会有数据回补的情况)。用户只能通过分析工具进行查询和分析。

4.数据仓库的数据是随时间不断变化的(时变性)

数据仓库中的数据不可更新是针对应用来说的,也就是说,数据仓库的用户进行分析处理时是不进行数据更新操作的。但并不是说,在从数据集成输入数据仓库开始到最终被删除的整个数据生存周期中,所有的数据仓库数据都是永远不变的。
    数据仓库的数据是随时间的变化而不断变化的,这是数据仓库数据的第四个特征。这一特征表现在以下3方面:
    (1)数据仓库随时间变化不断增加新的数据内容。数据仓库系统必须不断捕捉OLTP数据库中变化的数据,追加到数据仓库中去,也就是要不断地生成OLTP数据库的快照,经统一集成后增加到数据仓库中去;但对于确实不再变化的数据库快照,如果捕捉到新的变化数据,则只生成一个新的数据库快照增加进去,而不会对原有的数据库快照进行修改。
    (2)数据仓库随时间变化不断删去旧的数据内容。数据仓库的数据也有存储期限,一旦超过了这一期限,过期数据就要被删除。只是数据仓库内的数据时限要远远长于操作型环境中的数据时限。在操作型环境中一般只保存有6090天的数据,而在数据仓库中则需要保存较长时限的数据(如510年),以适应DSS进行趋势分析的要求。
    (3)数据仓库中包含有大量的综合数据,这些综合数据中很多跟时间有关,如数据经常按照时间段进行综合,或隔一定的时间片进行抽样等等。这些数据要随着时间的变化不断地进行重新综合。因此,数据仓库的数据特征都包含时间项,以标明数据的历史时期。

4.数据仓库的分层架构原因与分层原则

1.数据仓库要不要分层?

数据仓库既然是数据存储计算的地方,那么为什么需要分层呢?同样也是数据规模,业务场景决定可以说很多公司数据仓库建设刚起步时,大部分的数据都是经过粗暴的数据接入,进行ETL后就直接对接业务,生成报表或者导入业务系统直接使用。

**后来随着公司业务的发展,数据的沉淀,数据仓库发展到一定阶段,发现数据的使用杂乱无章,各种业务都是从原始数据直接计算而得。**造成各种重复计算(可能两张表只差了几个字段,但每个人都跑了一次),严重浪费了计算资源和存储资源,企业负担成本极大。这个时候大家就要想着如何规范化存储和计算了,如何最大化降低企业成本。尤其数据规模越大的公司,需求越强烈。

当然你公司数据规模小,非不分层可不可以,当然可以。也没必要搞那么规范,规范的不好之处就是要付出很大的人力成本去实施规范,监督规范的实施。最终的选择要结合你们企业的成本去考量,一切都要结合实际。

2.数仓分层的好处有哪些?

历史血的教训,各大厂总结了下数仓分层的好处:

  1. 清晰数据结构:每一个数据分层都有它的作用域,这样我们在使用表的时候能更方便地定位和理解。
  2. 数据血缘追踪:简单来讲可以这样理解,我们最终给业务诚信的是一能直接使用的张业务表,但是它的来源有很多,如果有一张来源表出问题了,我们希望能够快速准确地定位到问题,并清楚它的危害范围。
  3. 减少重复开发:规范数据分层,开发一些通用的中间层数据,能够减少极大的重复计算。
  4. 把复杂问题简单化。讲一个复杂的任务分解成多个步骤来完成,每一层只处理单一的步骤,比较简单和容易理解。而且便于维护数据的准确性,当数据出现问题之后,可以不用修复所有的数据,只需要从有问题的步骤开始修复。
  5. 屏蔽原始数据的异常。不必改一次业务就需要重新接入数据,或者业务改了数据,也不一定对现在有影响
  6. 屏蔽业务的影响,不必改一次业务就需要重新接入数据。
3.数据仓库该如何分层及如何设计分层?

数仓的分层好处有那么多?那么该如何分层?一切其实还是结合企业的实际情况,业务场景,数据规模,可以粗放型,也可以丰富更多的细节。

具体数仓的分层设计,如何结合业务对企业数据仓库分层?主流大厂的数仓分层架构情况,设计原则等,分层如何命名?这些内容太多了,后面详细一章节结合案例分析。也可以先参考:数据仓库的四个层次设计

5.数据仓库建模的选型与建模原则

前面聊过数据仓库发展到规范化建设需要分层架构。那么每一层的数据建模的原则应该是什么样的呢?以及为什么需要数据建模?数据建模有哪些选型?

1.为什么需要数据建模?

2.数据建模有哪些方法?这些模型的特点是什么?

3.数据建模的原则是什么?

4.企业数仓建设如何选择建模,各种模型的对比?

6.数据仓库维度建模的实施与注意事项

1.维度建模有哪些步骤及其作用?

2.结合企业案例演示完整维度建模使用?

3.维度建模的注意事项?

7.数仓的数据治理与安全

1.数仓的数据治理的必要性?

2.从哪些维度数据治理?

3.数据治理与管理体系建设?

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

s.csdn.net/topics/618545628)**

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值