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
;
这种情况可能是由于以下原因导致的:
数据量过大:如果窗口内的数据量非常大,那么在计算总和时可能会出现溢出的情况。可以尝试增加窗口的大小或者调整聚合函数的参数来解决这个问题。
数据延迟:如果数据发送到Flink的时间与实际处理时间相差较大,那么在计算总和时可能会出现延迟。可以尝试调整WATERMARK的设置来解决这个问题。
分组条件不匹配:如果分组条件与实际数据不符,那么在计算总和时可能会出现无法计算出值的情况。可以尝试修改分组条件来解决这个问题。
聚合函数不支持:如果使用的聚合函数不支持对某些类型的数据进行计算,那么可能会出现无法计算出值的情况。可以尝试使用其他支持的聚合函数来解决这个问题。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。