系列 | 漫谈数仓第一篇NO.1 『基础架构』
The following article is from 数据仓库与Python大数据 Author 紫霞仙子
点击上方蓝色字体,关注我们
点击上方“数据仓库与Python大数据”,选择“置顶公众号”
第一时间获取 数据ers 技术干货!
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大师经典建模四步骤:选择业务过程->声明粒度->确定维度->确定事实 进行维度建模。
05. 数仓规范
构建企业级数据仓库,必不可少的就是制定数仓规范。包括 命名规范,流程规范,设计规范,开发规范 等。无规矩不成方圆,建设数仓也是这样。
开发规范 示例:
06. 数据治理
大数据时代必不可少的一个重要环节,可从数据质量、元数据管理、数据安全、数据生命周期等方面开展实施。数据治理是一个企业安身立命的根本。
数据质量,必须保证完整性、准确性、一致性、时效性。每一个任务都应该配置数据质量监控,严禁任务裸奔。可建设统一数据质量告警中心从以下四个方面进行监控、预警和优化任务。
元数据管理,关于数据的数据。可分为技术元数据和业务元数据。对于数仓开发和维护,模型血缘关系尤为重要。
数据安全,可包含以下五方面的内容,即数据的保密性、真实性、完整性、未授权拷贝和所寄生系统的安全性。
07. 数仓理念
从80年代到现在,数据仓库流派之争已趋于稳缓,比较经典的就是数仓大师Kimball的维度建模、数仓之父Inmon的范式(E-R)建模,另外还有Data Vault建模、Anchor模型等。
Kimball Data Warehouse Architecture:
Inmon Data Warehouse Architecture:
结语:数仓是一种思想,数仓是一种规范,数仓是一种解决方案。
5. 大数据SQL经典面试题系列(1) - 连续3天登录用户
1、【资源】需要资料的同学,请添加数爱小伊微信(ID:DataAi24),数爱社区会尽力帮您拿到(书籍可以内部价拿到,京东5折)
添加微信请:
备注:书籍,领取大数据数仓经典电子书籍
备注:视频,领取大数据数据仓库教程视频
备注:kettle,领取kettle视频教程资料
备注:kylin, 领取Apache Kylin视频资料
备注:python,领取python资料大礼包
更多资源,请加数爱小伊微信咨询~~
2、【征稿】欢迎数据ers大佬们继续投稿,把自己的经验或踩坑之路分享给大家,类型不限
3、添加小伊微信,也可拉您入群。高手如云,技术交流群!备注:入群