タンブリングウィンドウとは?
たんぶりんぐうぃんどう
タンブリングウィンドウとは、ストリーム処理においてデータを重複なく一定時間ごとに区切り、各区間を独立して集計する時間窓の方式です。
タンブリングウィンドウ(Tumbling Window)は、リアルタイムストリーム処理において時間軸をベースにデータをグループ化する「ウィンドウ処理」の一種です。一定の固定時間幅(例:1分・5分・1時間)でデータを区切り、各区間が終了するたびにその区間内のデータをまとめて集計します。
最大の特徴は、各ウィンドウが互いに重複しない(オーバーラップしない)ことです。あるイベントは必ずひとつのウィンドウにのみ属します。この点でスライディングウィンドウ(重複あり)やセッションウィンドウ(ユーザー活動に基づく可変長)とは異なります。
タンブリングウィンドウが適している場面は次のとおりです。
- 毎分・毎時間のWebアクセス数・売上集計
- 一定間隔でのセンサーデータの平均値算出
- バッチ処理を小さく分割したリアルタイム集計
Apache Kafka Streams・Apache Flink・Apache Spark Streamingなどの主要ストリーム処理フレームワークで標準サポートされており、設定はウィンドウサイズのみ指定するだけで済むため実装がシンプルです。集計結果は各ウィンドウ終了時にダウンストリームへ出力されるため、定点観測型のモニタリングやアラートに特に適しています。
使い方・例文
毎分ごとのウェブサイトのページビュー数を集計する場合、タンブリングウィンドウを1分に設定すると、0秒〜59秒・60秒〜119秒という具合に重複なく区間が切り替わり集計が行われます。
この用語をシェア
最終更新: