水大人,数据开发小哥,爱折腾、爱记笔记,热衷方法论提炼和效率提升。虽然半路出家,但致力于全栈远景。《七天数据埋点之旅》系列作者。
0x00 前言
本节是数据仓库系列文章的第一篇,本系列的目的在于快速的构建一套最小化可运行的基础数据体系,过程中也会涉及一些数仓的理论知识,但更偏重的是数仓的实现和背后的思考逻辑、所以在开发实施过程中会提供相对多的代码示例和具体的实现细节。
另外需要对数仓的界限做下限制,本系列所讨论的数仓是从数据接入后到数据结果表生成。最后需要指明的是本系列只涉及离线数仓,不涉及实时数仓,有关实时数仓和离线数仓的区别等,请进一步阅读其它资料。
最后,本系列参考了很多前辈在数据仓库建设方面的经验文章,本系列将其纳入到体系中,部分相关的参考会在文中列出,但更多的会集结起来,在问题汇总章节或者以篇外的形式给出,请知悉。
本系列的大纲规划如下(实际执行可能会有调整):
-
初识数仓:什么是数仓、数仓的用途等
-
数仓规划:数仓矩阵、分层分线、分主题设计等
-
数仓设计:数仓模型、事实表(拉链表、累积表)、维表的设计等
-
数仓开发:数仓表初始化和更新方式、任务调度、数据处理的一些思想
-
数据计算:大盘指标(新增、活跃、留存、回流)的计算框架、LTV的计算框架等
-
数仓规范:元数据规范(表命名、存储周期等)、生成规范、调度规范、代码规范
-
数仓问题:数仓相关的技术问题、经验问题和发展问题汇总
通过本系列的学习,首先会对数仓是什么和数仓建设包含哪些内容有基本的认知,并将数仓建设的内容分解成各个模块来讲解。希望你在完成本系列的学习之后,具备快速构建基于用户的互联网产品的数据仓库建设思路和实践方法,需求强调的是,数仓建设虽然有套路和一些模式可遵循,但数据团队的组成不同、业务场景各异、需求也千变万化,数仓建设的成败取决于多种因素,需要根据自身的实际情况因地制宜。
通过本节的阅读,你将获得以下方面的认知:
-
什么是数仓
-
为什么要建设数仓
-
怎样建设数仓<