Apache Beamは、ETL、バッチおよびストリーム処理を含むデータ処理パイプラインを定義・実行するためのオープンソースの統合プログラミングモデルである。提供されているSDKの1つを使用してBeam Pipelinesと呼ばれるデータ処理パイプラインを定義し、Apache Flink、Apache Samza、Apache Spark、Google Cloud DataflowなどのBeamがサポートするRunner(分散処理バックエンド)の1つを使用してパイプラインを実行する。
歴史
Apache Beamは、Dataflowモデルの論文の実装の1つである。Dataflowモデルは、Googleでの分散処理の抽象化、特にFlumeJavaとMillwheelに関する過去の成果に基づいて設計されている。
2014年、Googleは、DataflowモデルのオープンSDK実装と、Dataflowをローカル(非分散)およびGoogle Cloud Platformサービス上で実行する環境をリリースした。
2016年、GoogleはコアSDK、ローカルランナーの実装、およびGoogle Cloud Platformのデータサービスにアクセスするための一連のIO(データコネクタ)をApache SoftwareFoundationに寄贈した。他の企業やコミュニティのメンバーは、既存の分散実行プラットフォームのRunnerや、Beam Runnerを既存のデータベース、Key-Valueストア、メッセージシステムと統合するための新しいIOをコントリビュートしている。さらに、Beamモデルに加えて特定のドメインのニーズをサポートするための新しいDSLが提案されている。
関連項目
- Apache Software Foundationプロジェクトの一覧
出典




