1. 数据仓库是如何分层的并且每层都承担什么作用。
大数据技术交流(1群)讨论(年年平安、夜里的那条路、吉西岛等):
- 可以分为四层:
ods:原始数据层,db数据,log数据 dwd:数据明细层 和 dim:维度层 dm/dws:数据宽表 app:这层基本上很少用到了
- 可以分为三层:
ods:贴源层 大家都一样 dw:报表数据,log数据,部分产品表数据 dm:集市层根据业务划分提供给不同的业务系统
大数据技术交流(2群)讨论(绝域时空、才不是天下第一大笨蛋、啊呀丶卖枸杞的张三皮、苏家小草、张家锋等):
- 可以分为五层:
ODS: 原始层 DWD: 标准明细层 DWS: 主题明细 DWT: 主题汇总 DWM: 业务集市针对部门提供数据
大数据技术交流(4群)讨论(噼里、八华幸❗、云落CD、natural等):
- 可以分为六层:
ODS: 原始层 DWD: 明细数据层,对ODS进行数据清洗 DIM:维度层,保存维度数据 DWS: 服务数据层,按天进行数据汇总 DWT: 数据主题层,对数据进行累计汇总 ADS: 数据应用层,为统计报表提供数据
- 可以分为六层:
ODS(原始数据层) DWD(明细数据层) DWS(轻度汇总层) DM(数据集市层) ADS(数据应用层) DIM(维度表)
- 可以分为六层:
ods 、dwd、eds、app、 dw、bi
- 数仓分层没有严格标准,根据业务情况进行适当分层,完成维度建模,之后重点设计ETL架构,否则后期运行起来,天天报数据更新不及时。
大数据技术交流(5群)讨论(浮生 等):
传统三层 ods dw dm,后面根据业务和需求可以继续细化。 DW也可以继续分 总的来说 我的理解中 dw就是就去清洗和转化 建立了标准数据的层 也可以说是维度建模体现的层 DM就根据主题域进行划分,简单理解就是数据可直接拿来用的那一层。
FLINK群 讨论(特略、谢帮桂、吴杰、皓、学不动了、blue、blueblueblue 等):
- 不分层
- 分四层:源表-明细-汇总-输出
2.数据仓库为什么要分层。
大数据技术交流(4群)讨论(噼里、八华幸❗、云落CD、natural等):
- 解耦,以空间换时间
- 把复杂的问题简单化
- 减少重复开发
- 隔离原始数据
大数据技术交流(5群)讨论(浮生 等):
不同的分层只是表达上不一样没必要为了分层而分层 , 主要是为了能解决ETL中各类问题。
3.Lambda架构和Kappa架构的对比。
大数据技术交流(4群)讨论(云落CD)
Lamdba架构 是批流混合,历史按批处理,实时一套流处理,批处理做流处理的校验,总的数据以批处理(T-1)+流处理(当日)的为统计窗口;当有更新时,需维护两套代码。 Kappa架构 只有一套流处理,维护一套代码即可,需要考虑重算的场景。