Beam 機能一覧

Apache Beamは、多様な実行エンジン、またはランナーで実行できる、高度なデータ並列処理パイプラインを構築するためのポータブルAPIレイヤーを提供します。このレイヤーの中核となる概念はBeamモデル(以前はDataflowモデルと呼ばれていました)に基づいており、各Beamランナーで程度は異なりますが実装されています。個々のランナーの機能を明確にするために、以下の機能一覧を作成しました。

個々の機能は、対応するWhat/Where/When/Howの質問によってグループ化されています。

What/Where/When/Howの概念の内訳について詳しくは、O'Reilly RadarのStreaming 102の記事をお読みください。

将来的には、ランタイム特性(例:少なくとも1回対正確に1回)、パフォーマンスなど、現在のセットを超える追加のテーブルを追加する予定です。

表の見方
比較対象のツール
プロパティこのツールはこのプロパティを持っていますか?はい/部分的/いいえ/未確認
これらの記号は何を意味しますか?
はい
~
部分的
?
未確認
いいえ

何が計算されていますか?

ParDo
GroupByKey
Flatten
Combine
複合変換
サイド入力
ソースAPI
メトリクス
ステートフル処理
Google Cloud DataflowApache FlinkApache Spark (RDD/DStreamベース)Apache Spark Structured Streaming (Datasetベース)Apache SamzaApache NemoHazelcast JetTwister2Python Direct FnRunnerGo Direct Runner
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
詳細と完全版はこちらをご覧ください。

Bounded Splittable DoFn サポート状況

基本
サイド入力
Splittable DoFn によって開始されるチェックポイント
動的分割
バンドルのファイナライズ
Google Cloud DataflowApache FlinkApache Spark (RDD/DStreamベース)Apache Spark Structured Streaming (Datasetベース)Apache SamzaApache NemoHazelcast JetTwister2Python Direct FnRunnerGo Direct Runner
~
~
~
~
~
~
~
~
詳細と完全版はこちらをご覧ください。

Unbounded Splittable DoFn サポート状況

基本
サイド入力
Splittable DoFn によって開始されるチェックポイント
動的分割
バンドルのファイナライズ
Google Cloud DataflowApache FlinkApache Spark (RDD/DStreamベース)Apache Spark Structured Streaming (Datasetベース)Apache SamzaApache NemoHazelcast JetTwister2Python Direct FnRunnerGo Direct Runner
~
~
~
詳細と完全版はこちらをご覧ください。

イベント時間ではどこで?

グローバルウィンドウ
固定ウィンドウ
スライドウィンドウ
セッションウィンドウ
カスタムウィンドウ
カスタムマージウィンドウ
タイムスタンプ制御
Google Cloud DataflowApache FlinkApache Spark (RDD/DStreamベース)Apache Spark Structured Streaming (Datasetベース)Apache SamzaApache NemoHazelcast JetTwister2Python Direct FnRunnerGo Direct Runner
~
~
~
~
~
~
~
詳細と完全版はこちらをご覧ください。

処理時間ではいつ?

設定可能なトリガー
イベント時間トリガー
処理時間トリガー
カウントトリガー
複合トリガー
許容遅延
タイマー
Google Cloud DataflowApache FlinkApache Spark (RDD/DStreamベース)Apache Spark Structured Streaming (Datasetベース)Apache SamzaApache NemoHazelcast JetTwister2Python Direct FnRunnerGo Direct Runner
~
~
~
~
~
~
~
~
~
~
~
~
~
詳細と完全版はこちらをご覧ください。

改良はどのように関連していますか?

破棄
累積
Google Cloud DataflowApache FlinkApache Spark (RDD/DStreamベース)Apache Spark Structured Streaming (Datasetベース)Apache SamzaApache NemoHazelcast JetTwister2Python Direct FnRunnerGo Direct Runner
~
詳細と完全版はこちらをご覧ください。

Beamモデルにはまだ含まれていないその他の一般的な機能

ドレイン
チェックポイント
キー順序配信
Google Cloud DataflowApache FlinkApache Spark (RDD/DStreamベース)Apache Spark Structured Streaming (Datasetベース)Apache SamzaApache NemoHazelcast JetTwister2Python Direct FnRunnerGo Direct Runner
~
~
~
~
~
~
~
?
?
?
~
?
?
?
詳細と完全版はこちらをご覧ください。