各位大佬 flink sql cep 是不是不支持超时匹配啊

各位大佬 flink sql cep 是不是不支持超时匹配啊

展开
收起
圆葱猪肉包 2023-03-27 13:49:03 367 分享 版权
2 条回答
写回答
取消 提交回答
  • 今天也要加油吖~

    您好, flink sql cep 是支持超时匹配的。

    2023-03-27 20:56:15
    赞同 展开评论
  • 坚持这件事孤独又漫长。

    可以支持超时匹配,可以使用 Flink SQL 中的 Pattern Timeout 来实现。

    • Pattern Timeout 可以用于定义 Pattern 中,匹配事件发生的超时时间,并且在超时之后触发 Pattern 的匹配。在 Flink SQL CEP 中,可以通过以下语法来使用 Pattern Timeout:
    PATTERN (A B C) [WITHIN time1] [AND [NOT] EXISTS (D E F) [WITHIN time2]] [OR …] [EVERY time3]
    

    其中,WITHIN time1 定义了整个 Pattern 的超时时间,单位为毫秒。如果在 time1 时间内没有匹配到完整的 Pattern,则该 Pattern 将会被丢弃。在 WITHIN 后面的 AND EXISTS 子句中,也可以指定每个事件的超时时间。如果事件没有在指定的超时时间内发生,则该事件不会被包括在匹配中。

    • 例如,以下语句将定义一个 Pattern,其中 A 和 B 之间的事件必须在 10 秒内发生,否则匹配失败:
    SELECT *
    FROM myTable
    MATCH_RECOGNIZE (
      PARTITION BY id
        ORDER BY rowtime
      MEASURES A.id AS a_id, B.id AS b_id
      ONE ROW PER MATCH
      PATTERN (A B)
        WITHIN INTERVAL '10' SECOND
      DEFINE
        A AS A.type = 'start',
        B AS B.type = 'end'
    )
    

    如果 A 和 B 事件之间的时间间隔超过 10 秒,则该 Pattern 不会匹配,并且在超时时不会触发结果。

    2023-03-27 14:42:56
    赞同 展开评论

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

收录在圈子:
实时计算 Flink 版(Alibaba Cloud Realtime Compute for Apache Flink,Powered by Ververica)是阿里云基于 Apache Flink 构建的企业级、高性能实时大数据处理系统,由 Apache Flink 创始团队官方出品,拥有全球统一商业化品牌,完全兼容开源 Flink API,提供丰富的企业级增值功能。
还有其他疑问?
咨询AI助理