SAP Business データクラウド 用のボーダーレス Lakehouse を設定する

このドキュメントでは、ボーダーレス Lakehouse を設定して、Google Cloud内で SAP Business Data Cloud(BDC)のデータを直接クエリする方法について説明します。これにより、外部データソースが既存の Google Cloud 環境と統合されます。

ボーダーレス Lakehouse と SAP BDC の統合の概要については、SAP BDC の統合についてをご覧ください。

始める前に

  1. Lakehouse の概要を確認して、Lakehouse がデータアクセスを管理する方法を理解します。
  2. 仕組みについては、ボーダーレス Lakehouse についてをご覧ください。
  3. サポートされているカタログを確認して、要件を確認します。
  4. SAP 管理者が SAP BDC 環境にアクセスして BDC Connect アプリケーションを構成できることを確認します。
  5. ターゲットの Google Cloud プロジェクトが BigQuery Enterprise Plus エディションで実行されていることを確認します。
  6. Google Cloud アカウントにログインします。 Google Cloudを初めて使用する場合は、 アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  7. Verify that billing is enabled for your Google Cloud project.

  8. Enable the BigLake API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  9. Verify that billing is enabled for your Google Cloud project.

  10. Enable the BigLake API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

必要なロール

ボーダレス Lakehouse の設定に必要な権限を取得するには、プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。

  • Lakehouse カタログを管理する: BigLake 管理者(roles/biglake.admin)または BigQuery 管理者(roles/bigquery.admin

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

制限事項と考慮事項

このセクションでは、ボーダーレス Lakehouse の使用に関する制限事項と考慮事項について説明します。

  • SAP デルタ共有テーブルは、きめ細かいアクセス制御(FGAC)をサポートしていません。
  • ネットワーク設定によっては、特定の VPC 構成または許可リストが必要になる場合があります。VPC Service Controls の構成については、SAP BDC の VPC Service Controls の構成をご覧ください。
  • /- などの特殊文字を含むデータ プロダクトは対象外です。SAP BDC から BigQuery に共有されても、BigQuery で使用できません。データ プロダクトに特殊文字が含まれている場合、Google 側で更新が中断され、再登録が必要になることがあります。これらのデータ プロダクトを生成する既知の SAP システムには、BW ソースと SuccessFactors があります。
  • データの更新速度: フェデレーション カタログの --refresh-interval フラグは、メタデータの同期頻度を決定します。間隔を短くすると、より新しいデータが提供されますが、リモート カタログ プロバイダから追加の API 費用が発生する可能性があります。
  • Iceberg 指標レポート: Iceberg 指標レポートは、フェデレーション カタログでは使用できません。連携カタログにアクセスするときに、Iceberg クライアントで rest-metrics-reporting-enabled プロパティを false に設定します。

全般的なワークフロー

SAP BDC でボーダーレス Lakehouse を設定して使用するには、次の操作を行います。

  • Enterprise Plus エディションを設定する: SAP BDC インスタンスをクエリするときに BigQuery Enterprise Plus を有効にします。
  • Lakehouse カタログを作成する: BigQuery 管理者が、SAP BDC に接続するための空の Delta Sharing カタログを作成します。
  • SAP for Me でコネクタを構成する: SAP 管理者が BDC Connect アプリケーション インスタンスをプロビジョニングします。
  • カタログを更新する: エンドポイントと招待コードを Lakehouse カタログに追加して、ハンドシェイクを完了します。
  • SAP BDC データ プロダクトを共有する: SAP データ スチュワードが BigQuery 用のデータ プロダクトを共有します。
  • データをクエリする: BigQuery を使用して連携データをクエリします。
  • 権限を構成する: Identity and Access Management(IAM)を使用してアクセスを管理します。

BigQuery Enterprise Plus エディションを設定する

この 1 回限りの設定により、BigQuery は Enterprise Plus を使用して SAP BDC インスタンスをクエリできます。

Enterprise Plus 予約を作成する

  1. [BigQuery] に移動します。

    BigQuery に移動

  2. ナビゲーション メニューで、[管理] > [容量管理] に移動します。

  3. [予約名] に名前を入力します(例: enterprise-plus-sap-res)。

  4. [予約] タブをクリックし、[予約を作成] をクリックします。

  5. [ロケーション] で、データが保存されているリージョンを選択します。これは、Lakehouse カタログで使用されているリージョンと一致している必要があります。

  6. [エディション] で [Enterprise Plus] を選択します。

  7. [スロット] で、次のように設定します。

    • データをクエリしていないときに課金されないように、ベースライン スロット0 に設定します。
    • 自動スケーリングを有効にして、BigQuery が必要に応じてスロットをスケーリングできるようにします。
  8. [保存] をクリックします。

プロジェクトを予約に割り当てる

  1. [容量管理] ページで、[割り当て] タブをクリックします。
  2. [課題を作成] をクリックします。
  3. [リソースを選択] で、BigQuery ジョブを実行するプロジェクト、フォルダ、または組織を選択します。
  4. [予約] で、作成した Enterprise Plus 予約を選択します。
  5. [サービスの種類] で [クエリ] を選択します。
  6. [作成] をクリックします。

確認するには、BigQuery ジョブ履歴の [ジョブ情報] で、そのプロジェクト内で実行されたジョブを確認します。

連携を設定する

データをクエリするには、リモート SAP BDC カタログに接続する Lakehouse 連携カタログを設定します。これにより、BigQuery サービス アカウントが Google Cloud プロジェクトの ID として機能する信頼関係を確立するハンドシェイクが開始されます。

Lakehouse Delta Sharing カタログを作成する

Google Cloud コンソールまたは gcloud CLI を使用して、空の Delta Sharing カタログを作成します。

コンソール

  1. Google Cloud コンソールで、[Lakehouse] ページに移動します。

    [レイクハウス] に移動

  2. ナビゲーション メニューで [ランタイム カタログ] をクリックします。

  3. [カタログを作成] をクリックし、[連携カタログ] を選択します。

  4. [カタログ構成] セクションで、次の情報を入力します。

    • [連携カタログのソース] で、[SAP(Delta)] を選択します。
    • [カタログ名(Lakehouse)] に、カタログの名前を入力します。
    • [データのロケーション] で、Lakehouse リージョンを選択します。
  5. [続行] をクリックします。

  6. ページに表示された Google Cloud サービス アカウント ID を取得し、この ID を SAP 管理者に提供します。

gcloud

  1. 空の Delta Sharing カタログを作成します。

    gcloud biglake delta-sharing catalogs create CATALOG_ID \
      --project="PROJECT_ID" \
      --location="REGION" \
      --refresh-interval="REFRESH_INTERVAL"

    次のように置き換えます。

    • CATALOG_ID: カタログの名前。
    • PROJECT_ID: 実際の Google Cloud プロジェクト ID。
    • REGION: Lakehouse リージョン。
    • REFRESH_INTERVAL: 省略可: カタログからメタデータを更新する間隔。単位付きの期間文字列として指定します(例: 5m は 5 分、300s は 300 秒、1h は 1 時間)。省略すると、更新間隔はデフォルトで 5 分(5m または 300s)になります。
  2. SAP 管理者に提供する Google Cloud サービス アカウント ID を取得します。

    gcloud biglake delta-sharing catalogs describe CATALOG_ID \
        --project="PROJECT_ID"

SAP for Me でコネクタを構成する

SAP 管理者は、SAP for Me にログインして、BDC Connect アプリケーションの新しいインスタンスをプロビジョニングする必要があります。

  1. [表示名] を入力します。
  2. リソース グループを選択または作成します。
  3. BDC 容量ユニットを割り当てます。
  4. Google Cloud サービス アカウント ID を外部システム インスタンス ID として入力します。
  5. リージョンを選択します。これは BDC Core リージョンと一致する必要があります。
  6. [完了] をクリックします。

完了したら、テナントの詳細ビューに移動します。[View Tenant Notifications] ボタンにポインタを合わせると、SAP Connector EndpointSAP Invitation Code を含むアクティベーション リンクが表示されます。

これらを BigQuery 管理者に提供します。

詳細については、SAP のドキュメントの SAP Business データクラウド Connect のプロビジョニングをご覧ください。

SAP 登録の詳細でカタログを更新する

Google Cloud コンソールまたは gcloud CLI を使用して、ハンドシェイクを完了するようにカタログを更新します。

コンソール

  1. [接続の詳細] ページをまだ表示していない場合は、次の操作を行います。

    1. Google Cloud コンソールで、[Lakehouse] ページに移動します。

      [レイクハウス] に移動

    2. ナビゲーション メニューで [ランタイム カタログ] をクリックします。

    3. SAP Delta Sharing カタログを選択して、[カタログの詳細] ページを開きます。

    4. バナーの [カタログを登録] をクリックします。

  2. [接続の詳細] セクションに、次の情報を入力します。

    • [コネクタ エンドポイント] に、SAP 管理者から提供された URL を入力します。
    • [招待コード] に、SAP 管理者から提供されたコードを入力します。
  3. [保存] をクリックします。

gcloud

gcloud biglake delta-sharing catalogs update CATALOG_ID \
    --project="PROJECT_ID" \
    --connector-endpoint="CONNECTOR_ENDPOINT" \
    --invitation-code="INVITATION_CODE" \
    --refresh-interval="REFRESH_INTERVAL"

次のように置き換えます。

  • CATALOG_ID: カタログの名前。
  • PROJECT_ID: 実際の Google Cloud プロジェクト ID。
  • CONNECTOR_ENDPOINT: SAP 管理者が提供する URL。
  • INVITATION_CODE: SAP 管理者から提供されたコード。
  • REFRESH_INTERVAL: 省略可: カタログからメタデータを更新する間隔。単位付きの期間文字列として指定します(例: 5m は 5 分、300s は 300 秒、1h は 1 時間)。省略した場合、バックグラウンドでのメタデータの更新間隔はデフォルトで 5 分(5m または 300s)になります。

SAP BDC データ プロダクトを共有する

SAP データ スチュワードは、SAP Business Data Cloud にログインして、BigQuery のデータ プロダクトを共有する必要があります。

  1. カタログを閲覧し、共有可能なデータ プロダクトを選択します。
  2. API に移動します。
  3. [共有] をクリックします。
  4. [ターゲットを追加] をクリックし、Google BigQuery の BDC Connect インスタンスを選択します。
  5. [共有] をクリックします。

共有データ プロダクトは Google BigQuery で検出できます。詳細については、SAP のドキュメントの Working with Data Products in SAP Business Data Cloud Connect をご覧ください。

次のステップ