クロスクラウド データアクセスについて

クロスクラウド データアクセス機能を使用すると、ファイルを移行したり、複雑な ETL パイプラインを構築したりすることなく、他のクラウド プロバイダに保存されているデータを Google Cloud から直接クエリできます。クエリは、公共のインターネット経由でルーティングすることも、プライベート ネットワーク転送に Cross-Cloud Interconnect を使用することもできます。

ボーダレス レイクハウスの一部として、この機能は、BigQuery、スタンドアロンの Apache Spark 環境、または Managed Service for Apache Spark を介して、分散データセット全体で分析ワークロードと AI ワークロードを統合します。

分析クエリの実行に加えて、分散テーブル(クロスクラウド ソースを含む)を基盤とする会話分析エージェントを構築して、1 つの会話からクラウド全体のデータを分析できます。Knowledge Catalog を使用して、リモート プラットフォーム間でデータ プロファイリングと分析情報を取得することもできます。

ユースケース

Lakehouse は、複数のクラウド プロバイダにまたがるデータにアクセスするためのいくつかの重要なユースケースをサポートしています。

  • データ移動の削減により、他のクラウド環境に保存されているデータを直接クエリできるため、データアクセスと処理が簡素化されます。
  • 統合分析を使用すると、データの場所に関係なく、すべてのデータで一貫した機能とハードウェアの最適化により、高度な分析を実行できます。
  • ボーダーレス AI と ML を使用すると、AI モデル、自律エージェント、機械学習をリモートデータに直接適用できます。データを移行する必要はありません。

アーキテクチャ

次の図は、レイクハウスのクロスクラウド データアクセス アーキテクチャを示しています。

 Google Cloud、アマゾン ウェブ サービス(AWS)、SaaS パートナーにわたる Lakehouse のクロスクラウド データアクセスのアーキテクチャ。
Lakehouse のアーキテクチャは、 Google Cloud AI と分析エンジンを外部のクラウド カタログ、オブジェクト ストレージ、SaaS パートナーに接続します。

上の図は、 Google Cloud と外部クラウドおよび SaaS 環境にまたがるアーキテクチャを示しています。

  • Google Cloud: リモート データセット全体で AI、ガバナンス、分析、クロスクラウド データアクセスを提供します。
    • AI エージェントとエクスペリエンス: Conversational Analytics と Gemini Enterprise で自律型エージェントを構築します。このエージェントは、Knowledge Catalog でデータとセマンティックな意味を検索し、分析エンジンと処理エンジンを介してクエリを実行します。
    • Knowledge Catalog: Lakehouse からメタデータとリネージを同期することで、統合ガバナンスとデータリネージ、データ分析情報、プロファイリング、データ プロダクトを提供します。
    • 分析エンジンと処理エンジン: BigQuery SQL、BigQuery AI、Looker ワークロードを実行します。また、Lakehouse を介してメタデータを解決し、テーブルを読み取ることで、Managed Service for Apache Spark とオープンエンジン(Apache Spark、Apache Flink、Trino)を使用してリモートデータを処理します。
    • レイクハウスのクロスクラウド データアクセス: ファイルの移行や ETL パイプラインを使用せずに、リモートデータをその場でクエリします。
      • メタデータの同期: Lakehouse ランタイム カタログを使用して、Apache Iceberg REST と Delta Sharing を介してテーブル メタデータを検出して同期します。OpenID Connect(OIDC)または Secret Manager を介して認証し、スコープ付きの一時的な認証情報を発行します。
      • クロスクラウド機能(AWS): ブロックレベルのリードスルー キャッシュ(インテリジェント キャッシュ(ローカル キャッシュ))を使用して、読み取られたデータブロックを Google Cloud にキャッシュし、クロスクラウド ネットワーク トランスポートを使用して、Dedicated Cross-Cloud Interconnect(CCI)、Partner Interconnect、またはインターネット(TLS を使用)経由でトラフィックをルーティングします。
  • 外部クラウドと SaaS データソース: リモート カタログ、SaaS データクラウド、オブジェクト ストレージをホストします。
    • 外部クラウドと SaaS カタログ: クラウド データカタログ(AWS の AWS Glue Data Catalog、AWS または Google Cloudの Databricks Unity Catalog と Snowflake Horizon Catalog)と SaaS データクラウド(Salesforce Data Cloud、AWS またはGoogle Cloudの Workday データレイク、SAP ビジネスデータクラウド(BDC))のメタデータを、Iceberg REST API と Delta Sharing(SAP BDC の場合)を介して同期します。
    • 外部クラウド オブジェクト ストレージ(AWS): Apache Iceberg テーブル(Parquet データファイル)と Amazon S3 テーブルを Amazon S3 に保存し、CCI またはインターネット(TLS を使用)経由で直接ブロック読み取りを行います。

クロスクラウド データへのアクセスの仕組み

Lakehouse は、次のプロセスを使用してリモートデータをクエリします。

  1. メタデータの検出: Google Cloud のレイクハウスは、Databricks Unity Catalog や AWS Glue などのリモート Apache Iceberg REST カタログに接続します。Lakehouse は、ファイルをコピーせずにデータを検出します。リモート カタログ プロバイダに応じて、Lakehouse は Secret Manager または OIDC トークン連携を介して、Google を ID プロバイダとして安全に認証します。
  2. 安全な転送: プライベート相互接続(Dedicated CCI や Partner Interconnect など)を介してトラフィックをルーティングすると、公共のインターネットと比較してデータ転送コストが大幅に削減され、レイテンシを高い精度で予測できます。
  3. 最適化された実行: クエリがリモート クラウドからデータを読み取ると、Lakehouse はそれらのデータ セグメントを Google Cloud 内の専用ストレージに一時的にキャッシュします。後続のクエリではローカル キャッシュが使用されるため、クロスクラウドの下り(外向き)料金の大部分を回避できます。

サポートされているカタログ

レイクハウスでは、次のリモート カタログ プロバイダからのデータのクエリがサポートされています。

基本コンセプト

このセクションでは、クロスクラウド データアクセス機能を使用するために不可欠な主要コンポーネントについて説明します。

メタデータ レイヤ

メタデータ レイヤは、リモートの Apache Iceberg REST カタログ エンドポイントに接続し、更新間隔に基づいて Iceberg リソース(名前空間、テーブル)のメタデータを同期します。Lakehouse は、Secret Manager または OIDC トークン連携に保存されている OAuth 認証情報を使用して安全に認証します。

トランスポート層

トランスポート層を使用すると、BigQuery とオープンソース エンジンは、メタデータ層から同期されたメタデータを使用してデータをクエリできます。特定のタイプのリモート カタログの場合、Lakehouse は公共のインターネットまたは専用のプライベート相互接続を介したデータのクエリをサポートしています。

アーキテクチャとセキュリティの要件に合った転送方法を選択します。

お客様所有(CCI)

専用 Cross-Cloud Interconnect または パートナー Cross-Cloud Interconnect を使用して、プライベート Cross-Cloud Interconnect 経由で AWS Amazon S3 バケットに保存されているデータをクエリするように BigQuery を構成できます。

プライベート相互接続を使用すると、次のメリットがあります。

  • セキュリティの強化: データは Google Cloud と AWS 間のプライベート ネットワーク接続を介して移動し、公共のインターネットを回避します。
  • 費用の削減: 特にプライベート相互接続容量と組み合わせた場合、インターネットの外向きと比較して、AWS からの外向き料金が低くなる可能性があります。
  • 一貫したパフォーマンス: 公共のインターネットと比較して、ネットワークのレイテンシと帯域幅をより正確に予測できます。

アーキテクチャの概要

プライベート クエリを有効にするには、プライベート相互接続を介して BigQuery から AWS Amazon S3 バケットへのパスを構成します。 Google CloudVirtual Private Cloud(VPC)の重要なコンポーネントは、内部ロードバランサ(ILB)です。ILB は、BigQuery から AWS VPC 内の Amazon S3 のプライベート エンドポイントにリクエストを分散します。これらのエンドポイントは、AWS PrivateLink を使用してプロビジョニングされます。

複数の Elastic Network Interface(ENI)をバックエンドとして ILB を使用することは、ロード バランシング、スケーラビリティ、高可用性を実現するために不可欠です。これは、Dedicated CCI と Partner Interconnect のどちらを使用する場合にも該当します。

プライベート クエリのワークフローは次のプロセスに従います。

  1. BigQuery は、Service Directory サービスで構成された接続を使用します。
  2. Service Directory は、サービス名を Google Cloud ILB の内部 IP アドレスに解決します。
  3. ILB は BigQuery からリクエストを受信し、構成されたバックエンドに分散します。
  4. ILB バックエンドはハイブリッド接続ネットワーク エンドポイント グループ(NEG)であり、それぞれが AWS VPC 内の ENI のプライベート IP アドレスを指しています。
  5. トラフィックは、ILB から NEG を経由し、プライベート相互接続を介して AWS ENI に流れます。
  6. Amazon S3 VPC インターフェース エンドポイント(AWS PrivateLink)の一部である AWS ENI は、Amazon S3 サービスへのプライベート アクセスを提供します。

パブリック インターネット(CCI なし)

プライベート相互接続を構成しない場合、リモート カタログへのクエリはデフォルトで公共のインターネットを介して送信されます。

パブリック インターネット経由でデータをクエリする場合は、次の点を考慮してください。

  • 標準的な暗号化: データアクセス リクエストとデータ転送は、公共のインターネットを介して標準の TLS プロトコルを使用して転送中に暗号化されます。
  • 下り(外向き)料金: データ転送には、リモート クラウド プロバイダ(AWS など)からの標準のインターネット下り(外向き)料金が発生します。これは通常、プライベート相互接続の下り(外向き)料金よりも高くなります。
  • 可変レイテンシ: ネットワーク パフォーマンス、帯域幅、レイテンシは、パブリック インターネットのルーティングと輻輳に依存するため、専用のプライベート相互接続と比較して、クエリの実行時間の予測が難しくなります。
  • 簡素化された設定: Google Cloud またはリモート クラウド プロバイダで追加のネットワーキング インフラストラクチャ、VPC ピアリング、Service Directory の構成は必要ありません。

アーキテクチャの概要

公共のインターネット経由でデータをクエリする場合、Lakehouse はリモート カタログとオブジェクト ストレージのエンドポイントに直接接続します。プライベート Google Cloud やリモート クラウド ネットワーキング インフラストラクチャは必要ありません。

パブリック インターネット クエリのワークフローは次のプロセスに従います。

  1. BigQuery は、Lakehouse カタログで定義されたリモートテーブルに対してクエリを開始します。
  2. Lakehouse は、Secret Manager または OIDC トークン連携に保存されている認証情報を使用して、リモート Apache Iceberg カタログで安全に認証します。
  3. Lakehouse は、パブリック インターネット経由でテーブル メタデータとマニフェスト ファイルを取得し、関連する基盤となるデータファイル(AWS Amazon S3 など)を特定します。
  4. 基盤となるオブジェクトのデータアクセス リクエストは、標準の TLS 暗号化を使用して、パブリック インターネット経由でGoogle Cloud から直接送信されます。
  5. リモート ストレージ サービスは、Lakehouse から提供された一時的なスコープ付き認証情報を使用してリクエストを検証し、リクエストされたデータブロックをパブリック インターネット経由で Google Cloudに返します。

インテリジェントなキャッシング

リモート クラウドデータをクエリすると、Lakehouse は取得したデータブロックを Google Cloud内にローカルに自動的にキャッシュします。キャッシュは、すべてのクロスクラウド クエリで自動的に有効になり、リモート クラウド プロバイダからの下り(外向き)料金を最小限に抑えることができます。キャッシュに保存されたデータを対象とする後続のクエリは、クラウド間でデータを再取得するのではなく、ローカルの Google Cloud ストレージから直接読み取ります。

下り(外向き)費用の削減

最初のクエリ実行時に、Lakehouse はリモート クラウド プロバイダから必要なデータブロックを取得し、ローカル キャッシュにデータを入力します。同じデータブロックをターゲットとする後続のクエリは、クラウド間でデータを再取得するのではなく、ローカルのGoogle Cloud キャッシュから直接読み取ります。

同じデータセットに対してクエリパターンが繰り返されるワークロードの場合、キャッシュはローカル ストレージからデータ リクエストを処理することで、クロスクラウドの下り(外向き)料金を削減します。実際の下り(外向き)料金の削減は、クエリ アクセス パターン、データ変更率、ターゲット Google Cloudリージョンのキャッシュ保持などの要因によって異なります。

ジョブ統計情報でキャッシュの使用状況と下り(外向き)費用の削減を確認する

クエリのキャッシュ ヒット率と下り(外向き)コストの削減を確認するには、BigQuery コンソールまたは API(JobStatistics2)でクエリの統計情報を確認します。クエリは複数のプロバイダのデータを参照できるため、ジョブの統計情報には、実行中にアクセスされた各クラウド プロバイダのエントリを含む、繰り返しの object_storage_stats(objectStorageStats)フィールドが用意されています。

各 object_storage_stats エントリは、次の指標を報告します。

  • cloud_provider(cloudProvider): オブジェクト ストレージをホストするクラウド プロバイダ(AWS、AZURE など)。
  • cache_bytes_read(cacheBytesRead): ローカル Google Cloud キャッシュから読み取られた合計バイト数。リモート オブジェクト ストレージの読み取りは回避されます。
  • object_storage_bytes_read(objectStorageBytesRead): リモート クラウド プロバイダのオブジェクト ストレージから直接読み取られた合計バイト数。

データ所在地と管轄区域に関する考慮事項

Google Cloud リージョンにリモート カタログまたは接続を作成すると、キャッシュに保存されたデータがそのターゲット リージョン内にローカルに保存されます。

リモート クラウドデータが別の地理的リージョンまたは管轄区域(たとえば、欧州連合の AWS Amazon S3 と us-east4 の BigQuery コンピューティングの組み合わせ)に存在する場合、クロスクラウド クエリは、リモートデータのデータ所在地キャッシュ コピーをターゲットのGoogle Cloud リージョンに保存します。接続またはカタログを作成するユーザーまたは管理者は、管轄区域をまたぐキャッシュ保存が組織のデータ所在地、主権、コンプライアンスの要件に準拠していることを確認する必要があります。

暗号化と CMEK のサポート

顧客管理の暗号鍵(CMEK)は、レイクハウス キャッシュではサポートされていません。キャッシュに保存されたすべてのデータブロックは、デフォルトのGoogle-owned and Google-managed encryption keysを使用して保存データの暗号化が行われます。

組織で CMEK 以外のサービスを制限する組織のポリシー制約(constraints/gcp.restrictNonCmekServices)が適用されている場合、Lakehouse は制限付きテーブルにアクセスするクエリのキャッシュを自動的に無効にします。クエリは引き続き正常に実行されますが、データブロックはキャッシュに保存されず、キャッシュ関連の下り(外向き)料金の削減も行われません。

次のステップ