允许的和不允许的窗口规范 - Amazon Kinesis Data Analytics
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

允许的和不允许的窗口规范

Amazon Kinesis Data Analytics 支持几乎所有以当前行结束的窗口。

您无法在窗口规范中定义无限窗口、负值大小的窗口或使用负整数。目前不支持偏移窗口。

  • 无限窗口是没有边界的窗口。通常,这些窗口指向将来,这对于流来说是无限的。例如,不支持“ROWS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING”,由于在流式处理环境下,这类查询将不会生成结果,原因是流会在新数据到达时不断扩展。不支持对 UNBOUNDED FOLLOWING 进行任何使用。

  • 负值窗口。例如,“ROWS BETWEEN 0 PRECEDING AND 4 PRECEDING”是一个负值大小的窗口,因此是非法的。相反,在这种情况下您应使用“ROWS BETWEEN 4 PRECEDING AND 0 PRECEDING”。

  • 偏移窗口是不以 CURRENT ROW 结束的窗口。当前版本中不支持这些窗口。例如,不支持“ROWS BETWEEN UNBOUNDED PRECEDING AND 4 FOLLOWING”。(窗口跨 CURRENT ROW 而不是从这里开始或结束。)

  • 使用负整数定义的窗口。例如,“ROWS BETWEEN -4 PRECEDING AND CURRENT ROW”是无效的,因为不允许负整数。

此外,...... 0 PRECEDING(和 ...0 FOLLOWING)的特殊情况不可用于窗口式聚合;相反,可使用同义词 CURRENT ROW。

对于窗口聚合,允许分区窗口,但不得存在 ORDER BY。

对于窗口联接,不允许分区窗口,但是,如果它按其中一个输入的 ROWTIME 列进行排序,则可以存在 ORDER BY。