数据库 频道

漫谈数仓第一篇『​基础架构』

  01. 架构演进

  数仓架构经历了离线数据仓库到实时数据仓库,从lambda架构到kappa架构、再到混合架构的演进阶段。

 

  02. 逻辑分层

  数仓分层,一般按ods->dw->dm整体架构。不同的企业,不同的业务场景,又衍生出不同的分层架构模式。例如经典四层架构:ods->dwd->dws-ads,bdl->fdl->gdl->adl等。

  技术选型,传统数仓一般以Oracle、greenplum、teradata 等,互联网数仓一般以Hadoop生态圈为主,离线以Hive为核心,准实时以spark为核心,实时以flink为核心构建。

  03. 数据调研

  业务调研,业务侧对齐,遵循关系型数据库建模方式,从概念模型(cdm)->逻辑模型(ldm)->物理模型(pdm)建模套路,是一个从抽象到具体的一个不断细化完善的分析,设计和开发的过程。

  需求调研,现有BI报表需求,统计需求,用户画像,推荐系统等数据应用。

  数据库调研,了解数据库表数据结构、数据形态,全局把握业务流程数据流向,做到真正业务流程和数据结构结合。

  04. 主题域划分

  业务高度抽象,可先确定企业业务bu模块,然后可根据概念模型(cdm)进行一级主题划分,确定一致性维度和事实流程,构建总线矩阵。

  图片来源 Kimball《The Data Warehouse Toolkits,- 3rd Edition》

  按照kimball大师经典建模四步骤:选择业务过程->声明粒度->确定维度->确定事实 进行维度建模。

  05. 数仓规范

  构建企业级数据仓库,必不可少的就是制定数仓规范。包括 命名规范,流程规范,设计规范,开发规范 等。无规矩不成方圆,建设数仓也是这样。

  开发规范 示例:

  06. 数据治理

  大数据时代必不可少的一个重要环节,可从数据质量、元数据管理、数据安全、数据生命周期等方面开展实施。数据治理是一个企业安身立命的根本。

  数据质量,必须保证完整性、准确性、一致性、时效性。每一个任务都应该配置数据质量监控,严禁任务裸奔。可建设统一数据质量告警中心从以下四个方面进行监控、预警和优化任务。

  元数据管理,关于数据的数据。可分为技术元数据和业务元数据。对于数仓开发和维护,模型血缘关系尤为重要。

  数据安全,可包含以下五方面的内容,即数据的保密性、真实性、完整性、未授权拷贝和所寄生系统的安全性。

  07. 数仓理念

  从80年代到现在,数据仓库流派之争已趋于稳缓,比较经典的就是数仓大师Kimball的维度建模、数仓之父Inmon的范式(E-R)建模,另外还有Data Vault建模、Anchor模型等。

  Kimball Data Warehouse Architecture:

  Inmon Data Warehouse Architecture:

  结语:数仓是一种思想,数仓是一种规范,数仓是一种解决方案。

2
相关文章