开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

在Flink什么是打宽DWD层?

在Flink什么是打宽DWD层?

展开
收起
三分钟热度的鱼 2024-03-06 17:09:28 68 0
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在Flink中,打宽DWD层指的是构建数据仓库的细节宽表(Data Warehouse Detail)层

    具体来说,DWD层是实时数仓架构中的一个环节,它主要负责将来自不同来源的原始数据进行整合和清洗,形成一张以业务过程为驱动的明细层事实表。这张事实表会包含多个维度的信息,因此被称为“宽表”。以下是构建DWD层的一些关键步骤:

    1. 数据集成:从不同的数据源(如订单表、商品类别字典表、订单支付表等)收集数据,并将其汇总在一起。
    2. 数据清洗:对收集到的数据进行清洗,以确保数据的质量和准确性。
    3. 构建宽表:通过合并机制,将这些数据打宽成一个综合性的表,这个表通常包含了多个相关的维度和度量,以便于后续的分析处理。
    4. 生成变更数据:生成DWD层宽表的变更数据(Changelog),这些变更数据记录了表中数据的每一次变化,对于实时数据处理至关重要。
    5. 实时更新:利用实时流处理技术,如Flink SQL,对宽表的变更数据进行实时消费和处理,以保证数据的实时性。

    总的来说,DWD层的构建是为了提高数据计算的复用性,使得每当有新的统计需求时,可以直接从这些半成品的宽表中继续加工,而不是从头开始计算。这样不仅提高了数据处理的效率,也保证了数据的准确性和一致性。

    2024-03-06 22:20:30
    赞同 展开评论 打赏
  • 打宽DWD层是数据仓库设计中的一个概念,在实时计算Flink产品交流群的“里程碑0 demo”文档中,它指的是将原始明细数据表(如orders和orders_pay)通过JOIN操作与维度表(如product_catalog)进行关联,形成一个包含更多业务信息的宽表,即dwd_orders。这个过程能够在一个表中整合多个表的相关信息,便于后续的分析和计算,同时也为减少JOIN操作、提高查询效率在物理层面上做了优化。在本例中,“打宽”是指增加了如order_product_catalog_name等额外维度字段到订单的明细表中,使得该表能够支持更丰富的业务查询和实时指标计算需求。此回答整理自钉群“实时计算Flink产品交流群”

    2024-03-06 17:14:06
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    低代码开发师(初级)实战教程 立即下载
    冬季实战营第三期:MySQL数据库进阶实战 立即下载
    阿里巴巴DevOps 最佳实践手册 立即下载