[ 
https://issues.apache.org/jira/browse/CALCITE-3271?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17178853#comment-17178853
 ] 

duli commented on CALCITE-3271:
-------------------------------

[~julianhyde] [~amaliujia] [~danny0405] 

We want to support 'order by the partition data within window' feature base on 
Table-valued Function, and it will partition the data by some keys without no 
aggregations. 
But currently, only SESSION Table-valued Function can partition data by 
'keycol' argument, we want TUMBLE/HOP Table-valued Function also support it. Do 
you have any suggestions for this?

> Table-valued function windowing and EMIT syntax support in Calcite
> ------------------------------------------------------------------
>
>                 Key: CALCITE-3271
>                 URL: https://issues.apache.org/jira/browse/CALCITE-3271
>             Project: Calcite
>          Issue Type: New Feature
>          Components: core
>    Affects Versions: 1.20.0, 1.21.0
>            Reporter: Danny Chen
>            Assignee: Rui Wang
>            Priority: Major
>
> Copied from the mailing list:
> Calcite has not implemented the syntax in that paper. I would support an 
> effort to add it (unsurprising, since I am a co-author of that paper).
> EMIT STREAM is equivalent to the current SELECT STREAM syntax.
> There is no equivalent in current Calcite of the EMIT AFTER WATERMARK, or 
> EMIT STREAM AFTER DELAY.
> HOP, TUMBLE and SESSION are supported in Calcite’s SQL parser, but following 
> the paper would be replaced with a table function call. We could need to add 
> HOP, TUMBLE and SESSION table functions. We would also need to make the 
> system aware of how watermarks flow through these table functions (an area 
> that the paper does not go into).
> Julian
> From Rui Wang
> Table-value function windowing means implementing TUMBLE/TOP/SESSION by 
> table-value function. As table value functions, TUMBLE/HOP/SESSION assigns 
> each row of input table to one or more intervals containing the specified 
> watermarked event timestamp column. Those intervals are determined by the 
> same way of current windowing support in Calcite: TUMBLE generates fixed 
> length, non-overlapping intervals; HOP generates fixed length, overlapping 
> intervals; SESSION generates sessionized intervals. The output table of this 
> proposed implementation has all columns of input table plus two additional 
> columns wstart and wend, which represent the start and the end of the 
> interval respectively.
> possible gaps in current Calcite:
> 1. TABLE parameter support in table-value function.
> 2. DESCRIPTOR parameter support in table-value function.
> 3. TUMBLE/TOP/SESSION implemented as built-in table-value function.
> 4. EMIT AFTER WATERMARK and EMIT STREAM AFTER DELAY. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to