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

Flink如何基于宽表数据展示实时报表并支持秒级响应?

Flink如何基于宽表数据展示实时报表并支持秒级响应?

展开
收起
cuicuicuic 2024-01-04 14:37:07 85 0
3 条回答
写回答
取消 提交回答
  • Flink基于宽表数据展示实时报表并支持秒级响应的方式,主要依赖于其对于DWD层宽表数据的处理。构建宽表的好处有:1. 减少了在后台的join操作和跨列计算,使用户查询响应更快;2. 数据做数据库时,如数据从ADB迁移到了hologres,join的工作提前在flink完成,hologres只需查宽表即可。

    具体来说,Flink提供了多种基于SQL的实时数据打宽方式,包括双流join(Regular join)、区间join(Interval join)和时态表join(Temporal join)等。此外,Flink与Doris的联合使用也被证明能够有效提高报表接口的响应速度,例如,单表10亿级聚合查询的响应速度TP95为0.79秒,TP99为5.03秒。

    总的来说,通过Flink对宽表数据的处理和优化,以及结合其他技术手段,可以实现基于宽表数据的实时报表展示,并支持秒级响应。

    2024-01-05 14:42:49
    赞同 展开评论 打赏
  • 基于宽表数据展示实时报表,可以使用SQL查询语句进行实现。例如,可以使用以下SQL查询语句:-- holo sql -- 最近30天,每个品类的订单总量和订单总金额 SELECT TO_CHAR(order_create_time, 'YYYYMMDD'), order_product_catalog_name, COUNT(*), COUNT(order_fee) FROM dwd_orders WHERE order_create_time > now() - '30 day' :: inteval GROUP BY 1, 2 ORDER BY 1, 2;
    该查询语句将根据订单创建时间(order_create_time)和品类名称(order_product_catalog_name)对订单数据进行分组,并计算每个分组的订单数量和订单总金额。同时,该查询语句还支持秒级响应,可以快速返回查询结果。 ,此回答整理自钉群“实时计算Flink产品交流群”

    2024-01-04 17:26:02
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    为了基于宽表数据展示实时报表并支持秒级响应,您可以使用Apache Flink配合其他工具来实现。一个可行的方案是使用Flink和Hologres搭建实时数仓,这样可以充分利用Flink强大的实时处理能力以及Hologres提供的Binlog、行列共存和资源强隔离等功能,实现高效、可扩展的实时数据处理和分析。此外,您还可以考虑采用Flink + Doris的架构来构建实时数仓,这种组合在实际应用中表现出色,报表接口的相应速度得到了明显提升,单表10亿级聚合查询的响应速度TP95为0.79秒,TP99为5.03秒 。

    在具体实现上,您可以利用Flink SQL进行实时数据的打宽操作,这包括双流join、区间join以及时态表join等方式。举例来说,如果您想展示每个品类的订单总量和订单总金额,您可以基于DWD层的宽表数据进行查询,通过Flink的处理能力,在HoloWeb开发页面上实现秒级的响应。这样的方案可以帮助您更好地满足不断增长的数据量和实时业务需求。

    2024-01-04 15:52:25
    赞同 展开评论 打赏

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

相关产品

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

    更多
    玩转HBase和Lindorm 大数据入门和实战 立即下载
    《玩转HBase和Lindorm大数据入门和实战》 立即下载
    《阿里云原生多模超融合数据库Lindorm》 立即下载