各位好,
在使用Flink SQL时,创建如下DDL,使用窗口时报错: INSERT INTO sql_out SELECT product_id, TUMBLE_END(ts, INTERVAL '2' MINUTE) AS window_end, count(*) AS cnt FROM kafka_out WHERE behavior = 'pv' GROUP BY product_id, TUMBLE(ts, INTERVAL '2' MINUTE) 错误信息:Window can only be defined over a time attribute column. 请大佬帮我解惑,谢谢 祝好 |
hi amenhub,
这个错误的意思是,窗口内引用的字段需要是一个时间字段,可以是事件时间,也可以是处理时间。你需要check一下你的ts字段是不是定义了时间属性。 可以参考下官方文档: https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/sql.html#group-windows amenhub <[hidden email]> 于2020年1月6日周一 下午4:45写道: > 各位好, > > > 在使用Flink SQL时,创建如下DDL,使用窗口时报错: > > > INSERT INTO sql_out > SELECT product_id, TUMBLE_END(ts, INTERVAL '2' MINUTE) AS window_end, > count(*) AS cnt FROM kafka_out WHERE behavior = 'pv' GROUP BY product_id, > TUMBLE(ts, INTERVAL '2' MINUTE) > > > 错误信息:Window can only be defined over a time attribute column. 请大佬帮我解惑,谢谢 > > > 祝好 > > > > > -- Benchao Li School of Electronics Engineering and Computer Science, Peking University Tel:+86-15650713730 Email: [hidden email]; [hidden email] |
Hi,amenhub
这个提示是ts字段缺少了时间属性(time attribute),window中的ts字段需要定义为时间属性,目前Flink支持处理时间(processing time) 和 事件时间(event time),时间属性的定义方式可以参考[1] [1]https://ci.apache.org/projects/flink/flink-docs-master/dev/table/streaming/time_attributes.html <https://ci.apache.org/projects/flink/flink-docs-master/dev/table/streaming/time_attributes.html> Best, Leonard > 在 2020年1月6日,16:50,Benchao Li <[hidden email]> 写道: > > hi amenhub, > > 这个错误的意思是,窗口内引用的字段需要是一个时间字段,可以是事件时间,也可以是处理时间。你需要check一下你的ts字段是不是定义了时间属性。 > > 可以参考下官方文档: > https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/sql.html#group-windows > > amenhub <[hidden email]> 于2020年1月6日周一 下午4:45写道: > >> 各位好, >> >> >> 在使用Flink SQL时,创建如下DDL,使用窗口时报错: >> >> >> INSERT INTO sql_out >> SELECT product_id, TUMBLE_END(ts, INTERVAL '2' MINUTE) AS window_end, >> count(*) AS cnt FROM kafka_out WHERE behavior = 'pv' GROUP BY product_id, >> TUMBLE(ts, INTERVAL '2' MINUTE) >> >> >> 错误信息:Window can only be defined over a time attribute column. 请大佬帮我解惑,谢谢 >> >> >> 祝好 >> >> >> >> >> > > > > -- > > Benchao Li > School of Electronics Engineering and Computer Science, Peking University > Tel:+86-15650713730 > Email: [hidden email]; [hidden email] |
In reply to this post by Benchao Li
hi Benchao,
刚才了解到,flink1.9版本不支持DDL time以及watermark语义的定义,所以是因此不支持window窗口函数需要的时间属性。期待1.10发布~ 祝好 在 2020-01-06 16:50:03,"Benchao Li" <[hidden email]> 写道: >hi amenhub, > >这个错误的意思是,窗口内引用的字段需要是一个时间字段,可以是事件时间,也可以是处理时间。你需要check一下你的ts字段是不是定义了时间属性。 > >可以参考下官方文档: >https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/sql.html#group-windows > >amenhub <[hidden email]> 于2020年1月6日周一 下午4:45写道: > >> 各位好, >> >> >> 在使用Flink SQL时,创建如下DDL,使用窗口时报错: >> >> >> INSERT INTO sql_out >> SELECT product_id, TUMBLE_END(ts, INTERVAL '2' MINUTE) AS window_end, >> count(*) AS cnt FROM kafka_out WHERE behavior = 'pv' GROUP BY product_id, >> TUMBLE(ts, INTERVAL '2' MINUTE) >> >> >> 错误信息:Window can only be defined over a time attribute column. 请大佬帮我解惑,谢谢 >> >> >> 祝好 >> >> >> >> >> > > > >-- > >Benchao Li >School of Electronics Engineering and Computer Science, Peking University >Tel:+86-15650713730 >Email: [hidden email]; [hidden email] |
Free forum by Nabble | Edit this page |