IT・技術研修ならCTC教育サービス

サイト内検索 企業情報 サイトマップ

研修コース検索

コラム

グーグルのクラウドを支えるテクノロジー

CTC 教育サービス

 [IT研修]注目キーワード   Python  UiPath(RPA)  最新技術動向  Microsoft Azure  Docker  Kubernetes 

第181回 BigLake: マルチクラウド対応に向けたBiqQueryの機能拡張(パート3) (中井悦司) 2024年9月

はじめに

 前回に続いて、2024年に公開された論文「BigLake: BigQuery’s Evolution toward a Multi-Cloud Lakehouse」に基づいて、マルチクラウド対応に向けたBigQueryの機能拡張について解説します。今回は、マルチクラウドに対応したLakehouseとしての機能を提供するBigQuery Omniのアーキテクチャーを紹介します。

BigQuery Omniのアーキテクチャー

 BigQuery Omniの全体像は、図1のようになります。複数のクラウドにデプロイされたワーカーのクラスターを上位のコントロールプレーンで管理することにより、ユーザーは、複数クラウドにまたがる環境を単一のシステムとして利用できます。それぞれのクラウドのデータを個別に処理するだけではなく、複数クラウドにまたがった検索(ジョイン)も可能です。

fig01

図1 BigQuery Omniのアーキテクチャー(論文より抜粋)

 Google Cloud上のBigQueryは、ユーザー側での構成が不要なマネージドサービスとして提供されていますが、他のクラウド環境でもこれは同じです。それぞれのクラウド上にGoogleが管理する専用のテナント環境があり、この中のKubernetesクラスター上にBigQueryを構成するコンポーネントがGoogleによってデプロイされています。論文では、BigQueryのワーカーノードに加えて、次のようなサービスがデプロイされていることが説明されています。

  • Chubby:Google標準の分散ロックサービス
  • Stubby:Google標準のRPCフレームワーク
  • Envelope:認証やRPC変換の補助機能を提供するサイドカーコンテナ
  • Dremel’s in-memory shuffle tier:インメモリー・シャッフルサービス
  • Pony:Linuxのユーザー空間で稼働する高速ネットワークスタック

 これらのサービスは、Googleのデータセンターでは、Google標準のコンテナ管理システムであるBorgの上で稼働しているものですが、これらをKubernetesのクラスターで稼働させることにより、他社クラウド上に「minimal borg-like環境」を実現したと説明されています。
 そして、Google Cloudで稼働するコントロールプレーンは、VPNを介して各クラウドのワーカーを制御します。ユーザーが管理するテナント(プロジェクト)とGoogleが管理するテナントの関係は、図2のようにまとめることができます。

fig02

図2 BigQuery Omniのネットワーク構成(論文より抜粋)

クラウド間のデータ移行機能

 第179回の記事の図4で説明したように、BigQuery Omniでは、複数クラウドにまたがったテーブルのジョインが実行できます。その他のマルチクラウドを活かした機能として、クラウド間でマテリアライズドビューをレプリケーションする機能があります(図3)。

fig03

図3 マテリアライズドビューのレプリケーション(論文より抜粋)

 まず、Google Cloud以外のクラウド環境でマテリアライズドビューを作成して、そのデータを該当クラウドのオブジェクトストレージに保存します。その後、そのファイルをGoogle Cloudの環境に非同期でレプリケーションします。レプリケーション中にビューが更新された場合は、差分のみがレプリケーションされます。これにより、BIツールから参照するビューをGoogle Cloud上に集約したり、あるいは、他のクラウド上のテーブルデータを非同期的にGoogle Cloudに移行することが可能になります。

次回予告

 今回は、2024年に公開された論文「BigLake: BigQuery’s Evolution toward a Multi-Cloud Lakehouse」に基づいて、マルチクラウドに対応したLakehouseとしての機能を提供するBigQuery Omniのアーキテクチャーを紹介しました。
 次回からは、GoogleのコンテナインフラであるBorg環境の特性に対応した、新しいロードバランシングの仕組みを紹介していきます。

 


 

 [IT研修]注目キーワード   Python  UiPath(RPA)  最新技術動向  Microsoft Azure  Docker  Kubernetes