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 赵一旦 <hi...@gmail.com> on 2020/09/27 05:25:37 UTC
FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
如题,不使用DatastreamAPI,使用FlinkSQL能否实现五分钟窗口,每10秒输出一次呢?
Re: FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
Posted by Sebastian Liu <li...@gmail.com>.
table.exec.emit.early-fire.delay 是一个duration type的configuration,不写单位会apply失败
fan_future <zj...@163.com> 于2020年12月30日周三 下午4:00写道:
> 这两个参数
> table.exec.emit.early-fire.enabled
> table.exec.emit.early-fire.delay
> 是怎么设置的??
>
> EnvironmentSettings build =
>
> EnvironmentSettings.newInstance().useBlinkPlanner().inStreamingMode().build();
> TableEnvironment tEnv = TableEnvironment.create(build);
>
> Configuration tableConfig = tEnv.getConfig().getConfiguration();
> tableConfig.setString("table.exec.emit.early-fire.enabled","true");
> tableConfig.setString("table.exec.emit.early-fire.delay","60000");
> 我这样处理后就报错
>
>
>
> --
> Sent from: http://apache-flink.147419.n8.nabble.com/
>
--
*With kind regards
------------------------------------------------------------
Sebastian Liu 刘洋
Institute of Computing Technology, Chinese Academy of Science
Mobile\WeChat: +86—15201613655
E-mail: liuyang0704@gmail.com <li...@gmail.com>
QQ: 3239559*
Re: FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
Posted by fan_future <zj...@163.com>.
这两个参数
table.exec.emit.early-fire.enabled
table.exec.emit.early-fire.delay
是怎么设置的??
EnvironmentSettings build =
EnvironmentSettings.newInstance().useBlinkPlanner().inStreamingMode().build();
TableEnvironment tEnv = TableEnvironment.create(build);
Configuration tableConfig = tEnv.getConfig().getConfiguration();
tableConfig.setString("table.exec.emit.early-fire.enabled","true");
tableConfig.setString("table.exec.emit.early-fire.delay","60000");
我这样处理后就报错
--
Sent from: http://apache-flink.147419.n8.nabble.com/
Re: FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
Posted by 赵一旦 <hi...@gmail.com>.
good. 懂啦。
hailongwang <18...@163.com> 于2020年9月29日周二 上午12:16写道:
>
>
>
> 可以使用
> tableConfig.getConfiguration.set('table.exec.emit.early-fire.enabled',
> true)
> tableConfig.getConfiguration.set('table.exec.emit.early-fire.delay', '10
> s')
>
>
> 祝好
> Hailong Wang
> 在 2020-09-27 12:25:37,"赵一旦" <hi...@gmail.com> 写道:
> >如题,不使用DatastreamAPI,使用FlinkSQL能否实现五分钟窗口,每10秒输出一次呢?
>
Re:FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
Posted by hailongwang <18...@163.com>.
可以使用
tableConfig.getConfiguration.set('table.exec.emit.early-fire.enabled', true)
tableConfig.getConfiguration.set('table.exec.emit.early-fire.delay', '10 s')
祝好
Hailong Wang
在 2020-09-27 12:25:37,"赵一旦" <hi...@gmail.com> 写道:
>如题,不使用DatastreamAPI,使用FlinkSQL能否实现五分钟窗口,每10秒输出一次呢?
Re: Re: FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
Posted by Benchao Li <li...@apache.org>.
可以的。有一个实验性质的Fast Emit功能,可以通过如下参数开启:
table.exec.emit.early-fire.enabled = true
table.exec.emit.early-fire.delay = 10s
Michael Ran <gr...@163.com> 于2020年9月27日周日 下午2:49写道:
> 额,不是5分钟窗口,10秒一个步长往前滑动吗? <br/>我以为滚动是5分钟窗口 5分钟一输出呢。。
> 在 2020-09-27 14:43:57,"赵一旦" <hi...@gmail.com> 写道:
> >不是滑动窗口哈。是滚动窗口,每10秒触发一次输出。滑动窗口的化逻辑就变了。
> >
> >Michael Ran <gr...@163.com> 于2020年9月27日周日 下午2:39写道:
> >
> >> 滑动窗口
> >> 在 2020-09-27 13:25:37,"赵一旦" <hi...@gmail.com> 写道:
> >> >如题,不使用DatastreamAPI,使用FlinkSQL能否实现五分钟窗口,每10秒输出一次呢?
> >>
>
--
Best,
Benchao Li
Re:Re: FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
Posted by Michael Ran <gr...@163.com>.
额,不是5分钟窗口,10秒一个步长往前滑动吗? <br/>我以为滚动是5分钟窗口 5分钟一输出呢。。
在 2020-09-27 14:43:57,"赵一旦" <hi...@gmail.com> 写道:
>不是滑动窗口哈。是滚动窗口,每10秒触发一次输出。滑动窗口的化逻辑就变了。
>
>Michael Ran <gr...@163.com> 于2020年9月27日周日 下午2:39写道:
>
>> 滑动窗口
>> 在 2020-09-27 13:25:37,"赵一旦" <hi...@gmail.com> 写道:
>> >如题,不使用DatastreamAPI,使用FlinkSQL能否实现五分钟窗口,每10秒输出一次呢?
>>
Re: FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
Posted by 赵一旦 <hi...@gmail.com>.
不是滑动窗口哈。是滚动窗口,每10秒触发一次输出。滑动窗口的化逻辑就变了。
Michael Ran <gr...@163.com> 于2020年9月27日周日 下午2:39写道:
> 滑动窗口
> 在 2020-09-27 13:25:37,"赵一旦" <hi...@gmail.com> 写道:
> >如题,不使用DatastreamAPI,使用FlinkSQL能否实现五分钟窗口,每10秒输出一次呢?
>
Re:FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
Posted by Michael Ran <gr...@163.com>.
滑动窗口
在 2020-09-27 13:25:37,"赵一旦" <hi...@gmail.com> 写道:
>如题,不使用DatastreamAPI,使用FlinkSQL能否实现五分钟窗口,每10秒输出一次呢?
Re: FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
Posted by 刘建刚 <li...@gmail.com>.
提供另外一种思路:内层是10s的翻滚窗口,外层接一个按5分钟为key的group by。为防止状态过大,可以设置ttl。简单demo如下:
SELECT *
FROM (SELECT TUMBLE_START(proctime, INTERVAL '10' SECOND) AS st, *
FROM *
GROUP BY TUMBLE(proctime, INTERVAL '10' SECOND)
)
GROUP BY st / (5 * 60 * 1000)
赵一旦 <hi...@gmail.com> 于2020年9月27日周日 下午5:45写道:
> Benchao Li那个我会考虑下,主要是了解下,从datastream转过来,想结合业务看看有多少任务是sql也能实现的。
> silence这个不清楚你表达啥意思,统计需求是五分钟粒度的,不通过窗口咋搞。
> 难道是指基于ts人工计算所属窗口w,然后group by w, 其他key 这样嘛。
>
>
>
> silence <sl...@aliyun.com.invalid> 于2020年9月27日周日 下午5:37写道:
>
> > 也可以通过普通的非窗口聚合进行实现吧,minibatch设大点
> >
> >
> >
> > --
> > Sent from: http://apache-flink.147419.n8.nabble.com/
> >
>
Re: FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
Posted by 赵一旦 <hi...@gmail.com>.
Benchao Li那个我会考虑下,主要是了解下,从datastream转过来,想结合业务看看有多少任务是sql也能实现的。
silence这个不清楚你表达啥意思,统计需求是五分钟粒度的,不通过窗口咋搞。
难道是指基于ts人工计算所属窗口w,然后group by w, 其他key 这样嘛。
silence <sl...@aliyun.com.invalid> 于2020年9月27日周日 下午5:37写道:
> 也可以通过普通的非窗口聚合进行实现吧,minibatch设大点
>
>
>
> --
> Sent from: http://apache-flink.147419.n8.nabble.com/
>
Re: FlinkSQL是否支持设置窗口trigger实现continuious trigger呢
Posted by silence <sl...@aliyun.com.INVALID>.
也可以通过普通的非窗口聚合进行实现吧,minibatch设大点
--
Sent from: http://apache-flink.147419.n8.nabble.com/