数据仓库系统架构和数仓分层体系介绍

一、数据仓库系统架构

在第三方数据平台的帮助下,公司在该平台上建立了数据仓库。由于第三方平台集成了很多东西,它节省了很多努力。

数据仓库的系统架构无非是数据源、数据采集模式、计算存储系统、数据应用层。

1、数据源:

内部数据系统生成的内部数据:如交易数据、会员数据、日志数据等。

外部数据:互联网数据和第三方服务提供商数据。互联网数据是我们使用爬虫爬行的互联网数据,第三方数据通常是指公司合作伙伴生成的数据。

2、采集方式

离线收集,包括全同步和增量同步。顾名思义,实时收集就是采用实时策略收集数据,比如我们想统计实时交易数据。当订单存储在业务库中时,我们可以通过Binlog以多种方式感知数据的变化,同步新生成的数据kafka实时消费队列,实时消费数据。

第三方收集其他与公司业务合作的公司,他们向我们暴露界面,我们通过界面获取数据,当然,这只是其中之一,不同的公司有不同的策略。

数据仓库的系统架构图

3、存储计算

通过集群的分布式计算能力和分布式文件系统计算和存储数据。我们使用的阿里云服务将业务数据存储到hive然后分为不同的层次来规划和集成数据。大数据量的数据可以通过分布式文件系统存储,包括历史数据。

4、数据应用

使用HQL、Mapreduce、SparkSql、UDF函数和其他处理方法处理各种业务数据,形成一定的标准模式数据。向外界提供这些建模数据。BI应用、挖掘分析、算法模型、可视化大屏系统。

当然,最重要的是数据管理。数据是我们的资产。只有管理有序,才能方便使用。我们可以建立数据地图、数据规范和数据质量系统,并配置完整的任务调度(如Oozie)。

当然,操作和维护是必不可少的。如果任务失败,我们需要在第一时间知道,然后我们需要报警系统。此外,还可以设置角色权限。整个系统具有最高权限、开发权限、访问权限等,需要根据公司需要进行。

二、数据仓库分层

数据仓库分层

1、数据仓库分层模式的作用

1.1、数据结构更清晰:对于不同层次的数据,它们有不同的功能域,每个数据层都有自己的功能域,这样我们在使用表时就可以更方便地定位和理解。

1.2、数据血缘跟踪:提供给外部世界的是一个业务表,但这个业务表可能来自许多表。如果一个源表有问题,我们可以快速准确地定位问题,并了解每个表的范围。

1.3、减少重复开发:数据分层标准化,开发一些通用的中间层数据,可以减少重复计算,提高单个业务表的利用率。

1.4、简化复杂的问题:将一个复杂的业务分为多个步骤,每个层只处理一个步骤,相对简单和容易理解。并且很容易维护数据的准确性,当数据出现问题时,您只需要从问题的步骤开始,无需修复所有的数据。有点相似Spark RDD容错机制。

1.5、减少业务影响:业务可能经常发生变化,因此无需更改业务,需要重新访问数据。

2、数据仓库分层介绍

2.1、ODS原始数据层

ODS层保存所有操作数据,不处理原始数据。在业务系统和数据仓库之间形成隔离,源系统数据结构的变化不影响其他数据分层。减轻业务系统反复提取的压力ODS统一抽取分发。ODS层数据要保留数据的原始性。

处理原则:

根据源业务系统表的情况,以增量或全量的方式提取数据;

ODS层以流水表和快照表为主,数据按日期分区保存,不使用拉链表;

ODS层数据不清洗和转换,数据的表结构和粒度与原业务系统一致。

2.2、DWD数据明细层

DWD层数据是通过ODS层数据清洗转换后的详细数据,以满足标准化数据的需求。NULL值处理、数据字典分析、日期格式转换、字段合并、脏数据处理等。

处理原则:

数据结构与ODS层一致,但可切割汇总表结构;

清理和转换数据;

DWD层数据不需要永久保存,具体保存周期取决于业务情况;

2.3、DWS数据汇总层

DWS层数据 根据主题抽象分类数据,提供业务系统细节数据的长期沉淀。这一层是基于一些总结的宽表DWD层数据根据各个维度或多个维度进行总结和统计可以满足一些特定的查询、数据挖掘应用程序,并根据业务层面的需要进行总结。

处理原则:

面向全局、数据整合;

存储最完整的历史数据,容易扩展业务,适应复杂的实际业务情况;

尽量减少数据访问时的计算量,优化表的相关性。维度建模,星形模型;

事实拉宽,测量预先计算,基本都是快照表。反标准化,数据冗余。

2.4、AWS数据明细层

ADS根据业务需要,应用层由DWD、DWS数据统计的结果可以直接提供查询显示或导入Oracle在其他关系数据库中使用。这一层的数据将特定的业务部门,不同的业务部门使用不同的数据来支持数据挖掘。

处理原则:

各种形式主要根据不同的业务需求进行处理;

保持数据量小,定期刷新数据;

数据同步到不同的关系数据库或hbase在其其他数据库。

为满足业务人员和数据分析师的数据需求,提供最终数据。

扫码免费用

源码支持二开

申请免费使用

在线咨询