
漫谈数仓基础架构:从Lambda到Kappa
540KB |
更新于2024-08-30
| 133 浏览量 | 举报
收藏
"本文是关于数据仓库基础架构的探讨,主要涵盖了数仓的架构演进、逻辑分层、数据调研、主题域划分、数仓规范以及数据治理等关键点。作者紫霞仙子通过深入浅出的方式介绍了这些核心概念,为理解数仓建设提供了基础指导。"
在数仓的【架构演进】中,我们见证了从传统的离线数据仓库到实时数据仓库的转变。这一演变过程中,架构从lambda架构发展到kappa架构,再到更灵活的混合架构。Lambda架构强调数据处理的三个阶段:摄取、处理和存储,而kappa架构则更加专注于事件驱动,去掉中间的批处理层,强调实时处理。随着技术的进步,现代数仓往往采用混合架构,结合离线和实时处理的优势,以满足不同场景的需求。
在【逻辑分层】方面,数仓通常按照ODS(原始数据层)、DW(数据仓库层)和DM(数据集市层)进行分层。企业根据自身业务特点会衍生出不同架构模式,比如经典的四层架构:ODS、DWD(数据清洗层)、DWS(数据服务层)和ADS(应用数据层)。此外,还有其他如BDL、FDL、GDL和ADL等自定义分层模式。
【技术选型】上,传统数仓常选用Oracle、Greenplum、Teradata等关系型数据库,而互联网数仓则偏向于Hadoop生态系统,以Hive作为离线处理的核心,Spark用于准实时处理,实时处理则依赖Flink。
【数据调研】是数仓建设的重要步骤,包括业务调研、需求调研和数据库调研。业务调研要求与业务侧保持一致,遵循关系型数据库建模流程,从概念模型到逻辑模型再到物理模型。需求调研关注现有的BI报表、统计需求、用户画像和推荐系统等。数据库调研则是为了理解数据结构和业务流程。
【主题域划分】是基于业务高度抽象进行的,可以先确定业务单元(BU),然后依据概念模型进行主题划分,构建总线矩阵,遵循Kimball的经典建模步骤:选择业务过程、声明粒度、确定维度和确定事实。
【数仓规范】确保了企业级数据仓库的有序建设,包括命名、流程、设计和开发等方面的规范。制定规范有助于保持项目的一致性和可维护性。
最后,【数据治理】是大数据时代的关键,涉及数据质量、元数据管理、数据安全和数据生命周期管理。数据质量要求数据完整、准确、一致和及时;元数据管理关注数据的背景信息,特别是技术元数据和业务元数据;数据安全涵盖多个层面,确保数据的保护和合规使用。数据治理是保障企业数据资产健康和价值的基础。
相关推荐















weixin_38650066
- 粉丝: 5
最新资源
- 浏览器间纯WebRTC聊天应用:无需STUN/ICE服务器的实现
- 基于雷达客户端的实时Web应用高级编程实践
- Aphelion桌面钱包开发指南与构建教程
- BLT系统服务架构与Docker/Kubernetes部署实践
- CommandSocksify:Rubygem工具的安装与使用指南
- React属性深入解析与movie_app_2021项目实践
- JadeLipsum:便捷创建虚拟内容的mixin工具
- disk-notify:实现磁盘空间不足自动邮件提醒工具
- Go语言开发的IRC机器人工具Gobot教程
- Python实现Cisco交换机端口IP跟踪与MAC定位
- Node.js与MongoDB CRUD操作实践指南
- reMarkable-tablet上的白板HyperCard实时协作工具
- pylivy:Python客户端实现Apache Spark集群远程代码执行
- 玩转Dockerfiles:拥抱可生产与非生产容器
- Python脚本实现Zendesk票证的高效解析与管理
- GitHub存储库示例探索:利用BigQuery与Ruby发现公共项目
- Next.js项目部署与开发快速入门指南
- 掌握CSS空白伪元素:增强表单样式
- 基于React和SPARQL的书籍推荐系统开发指南
- Docker多合一镜像:集成石墨、Statsd、Grafana及SSHD服务
- letsencrypt-aliyun-cdn:自动管理阿里云CDN域名证书的Docker镜像
- MIT许可的MacOS威胁搜寻Sigma规则
- 使用Sklearn-pandas集成实现Python机器学习与数据分析
- React应用利用GitHub GraphQL API展示主题与星标数