1 数据仓库分层
stage(可选) | |
ods | |
dwd | dim |
dwm,dwb(可选) | |
dws | |
dm(可选) 应用层 |
stage(可选)
原始数据文件存储,实时埋点数据存储,放在ods层或ods层之前。
ods层:操作数据数据存储
贴源数据存储,保留历史,用于历史数据备份和问题查找。
dwd:数据仓库明细层
数据仓库明细层,可以对数据进行关联,清洗。一般不做跨业务关联。
dwm,dwb(可选)
数据仓库中间层,数据仓库基础层,叫法和命名很多,一般用于跨业务的轻度汇总,建议划到dws。
dws:数据仓库服务层
数据仓库汇总层。 跨业务关联轻度汇总。指标汇总层。
dim:维度数据层
对维表进行统一标准化定义,实现维表信息共享
dm(可选):数据集市层
数据集市是数据仓库的一个子集,通常面向特定的业务线或者团队
如果是面向具体需求的数据集市,一般会放在应用层。
也有少部分人会把数据集市也当作基础模型,放在dws层。
ads:应用层
不同公司命名所需差异大,模型建设比较随意,面向具体需求,中文名称一般是应用层,
2 数据仓库部门技术选型
2.1 离线数据抽取工具
可以直连对方数据库
申请数据库只读账号及密码,建议使用sqoop,datax,部署简单,用的人多,大数据量同步速度快,其中sqoop更快。 不建议使用kettle,工具比较老,速度较慢。
无法连接对方数据
双方定义规范的接口文档,对方按照接口文档把文件放在指定路径,大数据获取文件并入库,并校验。
不建议使用http接口服务:这种方式没有留痕,数据量大不适合接口传输,出现错误不容易确定责任。
2.2 实时数据抽取工具
Flink CDC
当前最热最火,网上资料多。
StreamSet
单机版免费,集群版本收费。如果不嫌麻烦,可以部署多个单机版本。
2.3 调度平台选取
国内调度平台 dolphinscheduler 国外调度平台 azkaban oozie airflow,kettle 用的人都比较多,开源免费,可以选用。
一般稍微大的公司会自建调度平台或购买付费调度平台。