Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-4557 Table API Stream Aggregations
  3. FLINK-4678

Add SessionRow row-windows to Table API

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Closed
    • Major
    • Resolution: Won't Do
    • 1.2.0
    • None
    • Table SQL / API
    • None

    Description

      Add SessionRow row-windows for streaming tables as described in FLIP-11.

      SessionRow row windows are a syntactic shortcut for a special type of SQL OVER windows, i.e., windows of the from (note this is not valid SQL):

      SELECT STREAM rowtime,
        productId,
        units,
        SUM(units) OVER (PARTITION BY sessionId(rowtime, INTERVAL '5' MINUTES) )) AS unitsSinceTopOfHour
      FROM Orders;
      

      i.e., OVER windows which are partitioned by a special function sessionId over the time attribute (the second argument defines the gap between sessions).

      This issue is about extending the Table API with the SessionRow shortcut. It should reuse a lot of the OVER window translation and runtime code implemented by FLINK-5653, FLINK-5654, FLINK-5655, FLINK-5656, FLINK-5657, and FLINK-5658 but will likely require to add a special type of window boundary inside of Calcite to hold the session semantics.

      Attachments

        Issue Links

          Activity

            People

              twalthr Timo Walther
              fhueske Fabian Hueske
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: