В KSQL, Как выбрать максимальную запись окна после создания окон и группировки по? - PullRequest
0 голосов
/ 17 января 2019
ksql> CREATE TABLE HOPPING_TABLE AS SELECT ID, WINDOWSTART() AS WINSTART, COUNT(*) AS CNT FROM MY_STREAM HOPPING WINDOW (SIZE 30 DAYS, ADVANCED BY 1 DAYS) GROUP BY ID;

ksql> SELECT ID, WINSTART, CNT FROM HOPPING_TABLE;

id                    winstart        cnt
-------------------------------------------

874163197805291909    1547164800000    23
874163197805291909    1547424000000    11
874163197805291909    1547510400000    26
874163197805291909    1547683200000    12

660071199310134801    1545868800000    6
660071199310134801    1546560000000    7
660071199310134801    1547251200000    3

Теперь, я просто забочусь о cnt окна с максимальным значением winstart для каждой группировки ID, как тогда добиться этого с помощью KSQL? Рассматривая приведенный выше пример (сгруппированы 2 идентификатора), я надеюсь, что из таблицы HOPPING TABLE можно создать таблицу со следующими записями:

id                    winstart        cnt
-------------------------------------------

874163197805291909    1547683200000    12

660071199310134801    1547251200000    3
...