LoginSignup
7
6

More than 3 years have passed since last update.

GCPのBigdata周辺とApacheファミリーとの関連についてまとめ

Last updated at Posted at 2019-09-05

はじめに

先日 Data Engineering Google Cloud Platform というセミナーを受講して、Apache 関連のプロダクト名が沢山出てきたのですが、それぞれの関係や役割が理解しきれなかったので、まとめてみました。

全体関連図

Apachシリーズ

個々の関連状況

Cloud Pub/Sub ↔︎ Apache Kafka

Apachシリーズ①.jpg

Cloud Pub/Sub
送信者と受信者を切り離す多対多の非同期メッセージングで、メッセージ指向ミドルウェアの柔軟性と信頼性をを提供。ストリーム分析パイプラインの基盤ともなる。
Apache Kafka
オープンソースの分散メッセージングシステムで、スケーラビリティに優れた分散メッセージキュー。

Cloud Dataproc ↔︎ Apache Hadoop, Spark, Hive, Pig

Apacheシリーズ②.jpg

Cloud Dataproc
オープンソースのデータツール(Spark / Hadoop)を利用してバッチ処理、クエリ実行、ストリーミング、機械学習を大規模分散処理で実行するマネージドサービス。ComputeEngine インスタンス上で実行する仕組み(プリエンプティブVM可)オンプレのサービスをGCPにマイグレート色強い(インスタンスをマスター/ワーカーの台数を自身でインスタンスに設定)
Apache Hadoop
大規模データの分散処理を支えるオープンソースのソフトウェアフレームワーク。アプリケーションが数千ノードおよびペタバイト級のデータを処理することを可能としている。
Apache Spark
オープンソースのクラスタコンピューティングフレームワーク。暗黙のデータ並列性と耐故障性を備えたクラスタ全体をプログラミングできる。データをメモリに乗せて処理するから処理が高速(TB級までのデータに有効)。
Apache Hive
Hadoop 上で動作するソフトウェアで、SQLに似たデータ操作言語を用いてデータの集約・問い合わせ・分析を行う。パフォーマンスに優れる。
Apache Pig
Hadoop 上で動作するソフトウェアで、SQLに似た組み込み関数とユーザー定義関数を用いる。柔軟性があり複雑な処理も手軽に行える。

Cloud Dataflow, Dataprep ↔︎ Apache Beam

Apachシリーズ③.jpg

Cloud Dataflow
Apache Beam の実行環境。ストリーム(リアルタイム)モード/バッチ(履歴)モードでデータを変換(ETL)する、フルマネージドなデータ処理パイプラインサービス。
Cloud Dataprep
プログラミング知識が無くてもほとんどクリック操作のみでデータ加工を行ったり、データの品質チェックができる。ジョブ実行に Dataflow が使われる。
Apache Beam
ETL、バッチ、ストリーム処理などのデータ処理パイプラインを定義および実行するためのオープンソースの統合プログラミングモデル。

Cloud Composer ↔︎ Apache Airflow

Apacheシリーズ④ (1).jpg

Cloud Composer
フルマネージド ワークフロー オーケストレーション サービス。Apache Airflow オープンソース プロジェクトを基に構築され、Python プログラミング言語を使用して運用される。
Apache Airflow
ワークフローエンジン ツールの一種で、複数のタスクの実行順序を定義するワークフローの作成、実行のスケジューリング、監視などを行う。

BigQuery ↔︎ Apache Avro

Apachシリーズ⑤.jpg

BigQuery
サーバーレスでスケーラビリティに優れた企業向けのフルマネージドなデータウェアハウス。カラム型のマネージドストレージ。バッチやストリーミングのデータ収集機能、データ保存するストレージ機能、クエリーエンジンとしてのデータ分析機能をもつ。
Apache Avro
システム間でデータ交換を行うためのオープンソースなデータフォーマット。データがバイナリエンコードされ、軽量で柔軟。

Cloud Datalab ↔︎ Jupyter Notebook

(Apache ファミリーではないですが…)

Apacheシリーズ.jpg

Cloud Datalab
インタラクティブなデータ分析ツール。Datalab に Jupyter Notebook、TensorFlow などが含まれる。
Jupyter Notebook
Webブラウザ上でプログラムを作成・実行し、コード、メモ、実験結果をひとまとめに記録できるツール。
TensorFlow
TensorFlowとは、Googleが開発しオープンソースで公開している、機械学習に用いるためのソフトウェアライブラリ。

抜け漏れ、間違い等ありましたらコメントよろしくお願いします。

7
6
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
6