Advertisement

Flink源码学习(二)维表JOIN 异步优化代码解析

阅读量:

ref:https://yq.aliyun.com/articles/457385?spm=a2c4e.11153959.blogcont457438.27.67c71e995MMbLXf 摘抄自上文

优质资源:flink sql中各类sql语句的功能说明
可作为优化工作的切入点。

在流计算场景下,常见的处理需求之一是为数据流补充缺失的字段。由于数据采集端获取的信息通常较为有限,因此在开展数据分析工作前,需要将所需的维度信息进行完善。例如,在采集到的交易日志中仅包含商品 id,但实际业务分析过程中可能需要依据店铺或行业等维度进行数据聚合,这就要求首先将交易日志与商品维表建立关联,从而完成所需维度信息的补充。

维表本质上是一张持续更新的表格(静态表只是动态表的一种特殊情况)。那么,在这种情况下,如何实现与一张不断变化的维表进行 JOIN 操作呢?

语法

复制代码
    SELECT *
    FROM Orders AS o
    [LEFT] JOIN Products FOR SYSTEM_TIME AS OF PROCTIME() AS p
    ON o.productId = p.productId
    
    

此处的核心在于关键字 FOR SYSTEM_TIME AS OF PROCTIME(),其作用是将每条到达的数据与该数据到达时

全部评论 (0)

还没有任何评论哟~