如何搭建一个数据仓库? 下面大体说明了搭建的流程。
数据仓库的结构
用一幅图来表示:
数据仓库的好处
数据仓库是一套体系。可以建在Oracle上,MySQL上,Hive上,MaxCompute上,具体建在哪个平台根据数据量来定。对数据仓库来说,建在哪个平台不重要,重要的是目的。
数据仓库的目的,是对组织的数据进行统一的治理,归纳来讲,就是:存、通、用。
- 存:是指数据的统一存储。数据放在一起了,meta才能在一起,便于后续的计算。
- 通:是指数据的梳理,集中式的数据存储自然而然带来数据的集中管理。便于企业梳理内部的数据,这个是最能刺痛规模比较大,业务比较繁杂的企业的。
- 用:就是在梳理好内部数据资产后,可以看到那些数据可以做链接。那些业务可以合作。自己还缺少哪些数据。
存偏向于存储,通偏向于数据管理,用偏向于数据计算,也就是业务创新。
业务的野蛮生长总会遇到瓶颈,这个时候就需要有内在驱动的业务创新。数据是指导组织二次创业的好依据。by 山水
主要的流程
简单的来说,就是包括:数据源、ODS、DW(DM)、报告这几部分。
主要有这么几个流程:
-
数据源到ODS,需要考虑:
- 数据源的平台有哪些,比如Oracle,MySQL,文本文件,每个平台有哪些可用的同步工具
- 数据有哪些,数据字典有没有
- 哪些表全量同步
- 哪些表增量同步,如何取增量数据
- 同步周期,按小时,按天,按周,按月?
- 数据量评估:存量数据有多大,增量数据每天有多少
- 历史保留多久
- 数据正确性校验
- 调度、监控、报警
-
ODS到DW(DM),刚开始可以考虑建立数据集市(DM),待对数据,对业务足够理解,人足够多的时候,考虑建立数据仓库(DW),需要考虑:
- 熟悉数据字典,理解业务,理解数据
- 事实表要建哪些
- 维度表要建哪些
- 更新周期,按小时,按天,按周,按月?
- 数据量评估:存量数据有多大,增量数据每天有多少
- 历史保留多久
- 验数
- 调度、监控、报警
-
报告,这个是给业务、决策层看的,是体现价值的地方
- 统计口径的确定
- 验数:验证数据是否正确
- 如何展示:是表格、图形,还是大屏?
用到的工具
在建设数据仓库的时候,需要使用一系列的工具。
-
数据源到ODS
- ETL工具,比如kettle
-
ODS到DW(DM)
- SQL
-
报告
- 报表平台
整个流程通过 调度工具 串起来
调度工具需要解决:
- 任务依赖
- 周期性执行
- 监控,报警
- 日志
后续的工作
迭代!
迭代!
迭代!
作者:https://yq.aliyun.com/u/huaheshang
更多精彩内容请关注袋鼠云微信微博: