本ページでは、Flink SQL がサポートするウィンドウ関数、時間属性、およびウィンドウタイプについて説明します。

ウィンドウ関数

Flink SQL は、無限ウィンドウでの集計をサポートします (SQL クエリ文でウィンドウを明示的に追加する必要はありません)。 さらに、Flink SQL は特定のウィンドウでの集計をサポートしています。 たとえば、過去 1 分間に特定の URL をクリックしたユーザーの数をカウントするには、過去 1 分間のユーザークリックを収集するためのウィンドウを定義します。 ウィンドウ内のデータを計算して結果を取得します。

Flink SQL は、ウィンドウ集計とオーバー集計をサポートしています。 本ページでは、ウィンドウ集計について説明します。 ウィンドウ集計は、イベント時間と処理時間の 2 つの時間属性をサポートしています。 Flink SQL は、時間属性ごとに、タンブリングウィンドウ、スライディングウィンドウ、セッションウィンドウの 3 つのウィンドウタイプをサポートしています。

時間属性

Flink SQL は 2 つの時間属性をサポートしています。 Realtime Compute は、これら 2 つの時間属性に基づいてウィンドウ内のデータを集計します。
  • Event time: テーブルスキーマで指定するイベント時間は、通常、データの元の作成時間です。
  • Processing time: システムがイベントを処理する現地時間です。

Realtime Compute でサポートされている時間属性の詳細については、「時間属性 (Time attributes)」をご参照ください。