- 产品
- 产品解决方案
- 行业解决方案
- 案例
- 数据资产入表
- 赋能中心
- 伙伴
- 关于
时间:2022-04-21来源:三月浏览数:155次
本质上,数据仓库就是一种数据库,由一张一张数据表组成,用来存放数据。
大数据,其实就是数据库技术以及分布式体系的结合。所以要搞好大数据,就得从这两方面入手!
今天咱们主要聊聊数据仓库技术。本质上,数据仓库就是一种数据库,由一张一张数据表组成,用来存放数据。
当然,两者之间的差异也是非常大的,比如数据库是为捕获数据而设计的,数据仓库是为分析数据而生。目的和应用场景不同,让它们在架构体系和建模设计上面有非常大的不同。这里就不过多赘述了。
数仓通常是一个企业数据分析的起点,架构和逻辑一般如下图所示:
数仓在构建的时候通常需要ETL处理和分层设计,基于业务系统采集的结构化和非结构化数据进行各种ETL处理成为DWD层,再基于DWD层设计上层的数据模型层,形成DM,中间会有DWB/DWS作为部分中间过程数据。
而在实践中,数仓随着技术和业务的不断发展,也演进出了几种主要的架构方法,从传统数仓架构,到Lambda架构(离线数仓+实时数仓),再到Kappa架构(实时数仓)不一而足。
各个架构各有优劣,实际工作中到底选择哪种架构,还是需要根据具体的业务需求来决定。
当然,更多的时候,为了应对更广泛的场景,大多数公司采用的是混合架构,也就是Lambda和Kappa的结合,比如大部分实时指标统计使用Kappa架构完成计算,少量关键指标使用Lambda架构用批处理重新计算,增加一次校对过程。
这些复杂架构落地的过程中,大数据工程师们会面临非常多的挑战,比如离线&实时数仓的技术选型要怎么选、分层设计要怎么做,更具体的,基于Spark SQL的离线数仓要怎么搭建、基于FlinkSQL的实时数仓又要怎么搭建……非常容易踩坑!