You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by ang <80...@qq.com> on 2020/09/23 08:17:29 UTC
flink sql延迟数据
hi各位,有个问题请教一下:
我现在使用flink sql统计一下kafka中在某个时间窗口内指定字段出现的次数,使用event time,需要在5s内输出结果,但是数据会有一些延迟,可能大于5s,目前设置waterwark为
WATERMARK FOR ts AS ts - INTERVAL '5' SECODND ,但是这样延迟大于5s的数据就会被丢弃掉,请问下其他延迟的数据有没有什么办法进行处理?我看datastream api里面可以使用allowed lateness,但是这部分在sql中没看到有相关语法
Flink版本1.10.1
Re: flink sql延迟数据
Posted by Benchao Li <li...@apache.org>.
这个目前还不能,但是在1.12是可以的,已经在这个issue[1] 中添加了这个功能
[1] https://issues.apache.org/jira/browse/FLINK-18555
ang <80...@qq.com> 于2020年9月24日周四 上午11:19写道:
> 感谢benchao,请问下这部分只能通过config来设置吗,有没有可以直接在sql中设置的配置项
>
>
>
>
>
>
>
> ------------------ 原始邮件 ------------------
> 发件人:
> "user-zh"
> <
> libenchao@apache.org>;
> 发送时间: 2020年9月23日(星期三) 下午5:22
> 收件人: "user-zh"<user-zh@flink.apache.org>;
>
> 主题: Re: flink sql延迟数据
>
>
>
> 你是用的Blink planner的TUMBLE window么,如果是的话,可以通过设置state
> retention[1]时间来处理late数据的。
> 具体的allow lateness的时间就是你设置的min retention time
>
> [1]
>
> https://ci.apache.org/projects/flink/flink-docs-master/dev/table/streaming/query_configuration.html#idle-state-retention-time
>
> ang <806040308@qq.com> 于2020年9月23日周三 下午4:24写道:
>
> > hi各位,有个问题请教一下:
> > 我现在使用flink sql统计一下kafka中在某个时间窗口内指定字段出现的次数,使用event
> > time,需要在5s内输出结果,但是数据会有一些延迟,可能大于5s,目前设置waterwark为
> > WATERMARK FOR ts AS ts&nbsp; - INTERVAL '5' SECODND
> > ,但是这样延迟大于5s的数据就会被丢弃掉,请问下其他延迟的数据有没有什么办法进行处理?我看datastream
> api里面可以使用allowed
> > lateness,但是这部分在sql中没看到有相关语法
> >
> >
> > Flink版本1.10.1
> > &nbsp;
>
>
>
> --
>
> Best,
> Benchao Li
--
Best,
Benchao Li
回复: flink sql延迟数据
Posted by ang <80...@qq.com>.
感谢benchao,请问下这部分只能通过config来设置吗,有没有可以直接在sql中设置的配置项
------------------ 原始邮件 ------------------
发件人: "user-zh" <libenchao@apache.org>;
发送时间: 2020年9月23日(星期三) 下午5:22
收件人: "user-zh"<user-zh@flink.apache.org>;
主题: Re: flink sql延迟数据
你是用的Blink planner的TUMBLE window么,如果是的话,可以通过设置state retention[1]时间来处理late数据的。
具体的allow lateness的时间就是你设置的min retention time
[1]
https://ci.apache.org/projects/flink/flink-docs-master/dev/table/streaming/query_configuration.html#idle-state-retention-time
ang <806040308@qq.com> 于2020年9月23日周三 下午4:24写道:
> hi各位,有个问题请教一下:
> 我现在使用flink sql统计一下kafka中在某个时间窗口内指定字段出现的次数,使用event
> time,需要在5s内输出结果,但是数据会有一些延迟,可能大于5s,目前设置waterwark为
> WATERMARK FOR ts AS ts&nbsp; - INTERVAL '5' SECODND
> ,但是这样延迟大于5s的数据就会被丢弃掉,请问下其他延迟的数据有没有什么办法进行处理?我看datastream api里面可以使用allowed
> lateness,但是这部分在sql中没看到有相关语法
>
>
> Flink版本1.10.1
> &nbsp;
--
Best,
Benchao Li
Re: flink sql延迟数据
Posted by Benchao Li <li...@apache.org>.
你是用的Blink planner的TUMBLE window么,如果是的话,可以通过设置state retention[1]时间来处理late数据的。
具体的allow lateness的时间就是你设置的min retention time
[1]
https://ci.apache.org/projects/flink/flink-docs-master/dev/table/streaming/query_configuration.html#idle-state-retention-time
ang <80...@qq.com> 于2020年9月23日周三 下午4:24写道:
> hi各位,有个问题请教一下:
> 我现在使用flink sql统计一下kafka中在某个时间窗口内指定字段出现的次数,使用event
> time,需要在5s内输出结果,但是数据会有一些延迟,可能大于5s,目前设置waterwark为
> WATERMARK FOR ts AS ts - INTERVAL '5' SECODND
> ,但是这样延迟大于5s的数据就会被丢弃掉,请问下其他延迟的数据有没有什么办法进行处理?我看datastream api里面可以使用allowed
> lateness,但是这部分在sql中没看到有相关语法
>
>
> Flink版本1.10.1
>
--
Best,
Benchao Li