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

Flink这种一般会是什么情况引起的呢?

Flink这种一般会是什么情况引起的呢?我 3秒 的窗口计算总和,但是在现场有溢些 group by 的分组无法计算出值。数据也是有在发送的。WATERMARK 也是设置了允许延迟 30s。

CREATE VIEW IF NOT EXISTS v_company_link_window_3s AS
SELECT window_start,
window_end,
company_id,
link_id,
SUM(send_bytes) AS flow_in,
SUM(recv_bytes) AS flow_out
FROM TABLE(
TUMBLE(TABLE v_company_link, DESCRIPTOR(data_time), INTERVAL '3' SECONDS)) AS tmp
GROUP BY window_start,
window_end,
company_id,
link_id
;

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

    这种情况可能是由于以下原因导致的:

    1. 数据量过大:如果窗口内的数据量非常大,那么在计算总和时可能会出现溢出的情况。可以尝试增加窗口的大小或者调整聚合函数的参数来解决这个问题。

    2. 数据延迟:如果数据发送到Flink的时间与实际处理时间相差较大,那么在计算总和时可能会出现延迟。可以尝试调整WATERMARK的设置来解决这个问题。

    3. 分组条件不匹配:如果分组条件与实际数据不符,那么在计算总和时可能会出现无法计算出值的情况。可以尝试修改分组条件来解决这个问题。

    4. 聚合函数不支持:如果使用的聚合函数不支持对某些类型的数据进行计算,那么可能会出现无法计算出值的情况。可以尝试使用其他支持的聚合函数来解决这个问题。

    2023-12-07 14:26:48
    赞同 展开评论 打赏

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

相关电子书

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