ウィンドウ継続時間、期間、セッションに関する追加情報
Windowプロセッサーにより、ストリーミングデータを複数のタイプの時間ウィンドウに分割できます: 固定時間ウィンドウ、スライディングウィンドウ、セッションウィンドウ。
Windowプロセッサーは、指定した期間ごとに新しいウィンドウを開始します。
このウィンドウは、特定の期間([duration] (期間))、メモリレコード内に保存され、データのマイクロバッチを出力に送信します。
固定時間ウィンドウ
-
どのウィンドウも期間が一定で同じであり、重複しない
-
特定の時点でメモリに保存されるウィンドウは1つのみ
-
1つのウィンドウにキャプチャーされるデータは1つのみ
これらのウィンドウは、常時すべてのデータをキャプチャーする場合に便利です。

ここでは、00:00:00から01:00:00までのタイムスタンプ値を持つすべてのデータはウィンドウ1に属し、01:00:00から02:00:00までのタイムスタンプ値を持つデータはウィンドウ2に属します。以下、同様です。
スライディングウィンドウ
-
複数のウィンドウを重ねることができる
-
複数のウィンドウがメモリ内に同時に保存される
-
データセット内のエレメントを複数のウィンドウにキャプチャーできる
これらのウィンドウはサンプリングにも、データの移動平均を取るのにも便利です。

ここでは、00:00:00から01:00:00までのタイムスタンプ値を持つすべてのデータはウィンドウ1に属し、0:30:00から01:30:00までのタイムスタンプ値を持つデータはウィンドウ2に属します。以下、同様です。この例では、過去1時間分のデータの移動平均を計算し、30分ごとにアップデートできます。

ここでは、00:00:00から01:00:00までのタイムスタンプ値を持つすべてのデータはウィンドウ1に属し、1:30:00から02:30:00までのタイムスタンプ値を持つデータはウィンドウ2に属します。以下、同様です。ウィンドウは重ならず、データは別々のウィンドウに保存されます。
セッションウィンドウ
-
高濃度のデータが別々のウィンドウにグルーピングされる
-
データストリームのアイドルセクションが除外される
-
データをさまざまなサイズの交わりを持たないウィンドウ内に取り込むことができる
これらのウィンドウは、時間に関して不規則に分散しているデータに便利です。たとえば、ユーザーのマウス操作を表すデータストリームは、アイドル時間が長く、集中的なクリックが散在している場合がよくあります。

ここでは、一部のアクティビティを表すデータが5分間受信されない場合に閉じるというウィンドウに保存されます(期間ギャップ)。ウィンドウは重ならず、固定された開始時間と終了時間がありません。