You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Rui Wang (Jira)" <ji...@apache.org> on 2021/01/19 22:31:00 UTC
[jira] [Work stopped] (BEAM-9543) BeamSQL Pattern Recognization
Functionality
[ https://issues.apache.org/jira/browse/BEAM-9543?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Work on BEAM-9543 stopped by Rui Wang.
--------------------------------------
> BeamSQL Pattern Recognization Functionality
> -------------------------------------------
>
> Key: BEAM-9543
> URL: https://issues.apache.org/jira/browse/BEAM-9543
> Project: Beam
> Issue Type: New Feature
> Components: dsl-sql
> Reporter: Rui Wang
> Priority: P3
> Labels: gsoc, gsoc2020, mentor
> Time Spent: 3h 20m
> Remaining Estimate: 0h
>
> The goal of this Jira is to support the following syntax in BeamSQL:
> {code:sql}
> SELECT T.aid, T.bid, T.cid
> FROM MyTable
> MATCH_RECOGNIZE (
> PARTITION BY userid
> ORDER BY proctime
> MEASURES
> A.id AS aid,
> B.id AS bid,
> C.id AS cid
> PATTERN (A B C)
> DEFINE
> A AS name = 'a',
> B AS name = 'b',
> C AS name = 'c'
> ) AS T
> {code}
> match_recognize is in SQL standard 2016. Currently Calcite also supports it. A good reference to match_recognize is [1]
> This will requires touch core components of BeamSQL:
> 1. SQL parser to support the syntax above.
> 2. SQL core to implement physical relational operator.
> 3. Distributed algorithms to implement a list of functions in a distributed manner.
> other references:
> Calcite match_recognize syntax [2]
> [1]: https://ci.apache.org/projects/flink/flink-docs-stable/dev/table/streaming/match_recognize.html
> [2]: https://calcite.apache.org/docs/reference.html#syntax-1
--
This message was sent by Atlassian Jira
(v8.3.4#803005)