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プロジェクトの一覧

出典


Apache Beam Tutorial By Example

Apache Beam in Five Minutes Full Stack Chronicles

Apache Beam Ways to join PCollections Knoldus Blogs

Big Data Processing with Apache Beam Knoldus Blogs

Top Apache Beam Interview Questions with Answers DataOps Redefined!!!