サブスクリプションを管理する

Analytics Hub のサブスクライバーは、次の操作を行うことができます。

  • リスティングをサブスクライブする。
  • 特定のプロジェクトの現在のサブスクリプションを一覧表示する。
  • サブスクリプションを削除します。

Analytics Hub のパブリッシャーは、次の操作を行うことができます。

  • リスティングのすべてのサブスクリプションを表示する。
  • 特定のサブスクリプションへのアクセスを取り消す。

サブスクリプションは、サブスクライバーのプロジェクトに存在するリージョン リソースです。サブスクリプションには、サブスクライバーに関する関連情報が保存され、パブリッシャーとサブスクライバーの間の契約を表します。

始める前に

BigQuery Sharing(旧 Analytics Hub)を開始するには、 Google Cloud プロジェクト内で Analytics Hub API を有効にする必要があります。

必要な権限

Analytics Hub API を有効にするには、次の Identity and Access Management(IAM)権限が必要です。

  • serviceUsage.services.get
  • serviceUsage.services.list
  • serviceUsage.services.enable

次の IAM 事前定義ロールには、Analytics Hub API を有効にするために必要な権限が含まれています。

  • roles/serviceusage.serviceUsageAdmin

BigQuery での IAM のロールの詳細については、事前定義ロールと権限をご覧ください。

Analytics Hub API を有効にする

Analytics Hub API を有効にする方法は次のとおりです。

コンソール

Analytics Hub API ページに移動し、 Google Cloud プロジェクトの Analytics Hub API を有効にします。

Analytics Hub API を有効にする

gcloud

gcloud services enable コマンドを実行します。

gcloud services enable analyticshub.googleapis.com

必要なロール

サブスクリプションの管理に必要な権限を取得するには、プロジェクトに対する Analytics Hub サブスクリプション オーナー roles/analyticshub.subscriptionOwner)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

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

サブスクライバーのワークフロー

サブスクライバーは、サブスクリプションで次の操作を行うことができます。

リスティングに登録する

リスティングをサブスクライブするには、リスティングとデータ エクスチェンジを表示してサブスクライブするの手順を実施してください。

サブスクリプションの一覧表示

特定のプロジェクトの現在のサブスクリプションを表示するには、projects.locations.subscriptions.list メソッドを使用します。

GET https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/subscriptions

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

  • PROJECT_ID: 一覧表示するサブスクリプションを含むプロジェクト ID。

  • LOCATION: 既存のサブスクリプションを一覧表示するロケーション。

サブスクリプションの削除

サブスクリプションを削除するには、projects.locations.subscriptions.delete メソッドを使用します。

DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/subscriptions/SUBSCRIPTION_ID

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

  • PROJECT_ID: 削除するサブスクリプションを含むプロジェクト ID。
  • LOCATION: 削除するサブスクリプションのロケーション。BigQuery の共有をサポートするロケーションの詳細については、サポートされているリージョンをご覧ください。
  • SUBSCRIPTION_ID: 削除するサブスクリプションの ID。

リクエストの本文は空にする必要があります。リクエストが成功した場合、レスポンスの本文にはオペレーションのインスタンスが含まれます。

サブスクライバーがサブスクリプションの削除を開始すると、サブスクライバーのプロジェクトからリンクされたデータセットが削除されます。

複数のリージョンのリスティングからサブスクリプションを削除すると(プレビュー)、リンクされたプライマリとセカンダリのデータセット レプリカもすべてサブスクライバーのプロジェクトから削除されます。

API を使用してサブスクリプションに対して実行できるタスクの詳細については、projects.locations.subscriptions メソッドをご覧ください。

パブリッシャーのワークフロー

パブリッシャーは、サブスクリプションで次の操作を行うことができます。リスティングのサブスクリプションの管理について詳しくは、リスティングの管理をご覧ください。

サブスクリプションの一覧表示

すべてのサブスクリプションを一覧表示するには、次のいずれかのオプションを選択します。

コンソール

  1. Google Cloud コンソールで、[共有(Analytics Hub)] ページに移動します。

    [共有(Analytics Hub)] に移動

    アクセス可能なすべてのデータ エクスチェンジを記載したページが表示されます。

  2. サブスクリプションを一覧表示するデータ エクスチェンジの名前をクリックします。

  3. [サブスクリプション] タブをクリックします。データ エクスチェンジ内のリスティングのサブスクリプションがすべて表示されます。

API

特定のデータ エクスチェンジのリスティングのサブスクリプションを一覧表示するには、projects.locations.dataExchanges.listSubscriptions メソッドを使用します。

GET https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID:listSubscriptions

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

  • PROJECT_ID: 削除するサブスクリプションを一覧表示するデータ エクスチェンジのプロジェクト ID。
  • LOCATION: サブスクリプションを一覧表示するデータ エクスチェンジのロケーション。
  • DATAEXCHANGE_ID: サブスクリプションを一覧表示するデータエクスチェンジの ID。

サブスクリプションを取り消す

パブリッシャーがサブスクリプションを取り消すと、サブスクライバーはリンクされたデータセットをクエリできなくなります。これはサブスクライバーが所有するリソースに対するパブリッシャーが開始したアクションであるため、リンク済みデータセットはサブスクライバーのプロジェクトでぶら下がったままになります。サブスクライバーは、ぶら下がりデータセットを削除して削除できます。

パブリッシャーが複数のリージョンのリスティングからサブスクリプションを取り消すと(プレビュー)、サブスクライバーはリンクされたプライマリ データセット レプリカまたはセカンダリ データセット レプリカをクエリできなくなります。

定期購入を取り消すには、次のいずれかのオプションを選択します。

コンソール

  1. Google Cloud コンソールで、[共有(Analytics Hub)] ページに移動します。

    [共有(Analytics Hub)] に移動

    アクセス可能なすべてのデータ エクスチェンジを示すページが表示されます。

  2. リスティングを作成するデータ エクスチェンジの名前をクリックします。

  3. [サブスクリプション] タブをクリックします。データ エクスチェンジのすべてのサブスクリプションが表示されます。

  4. 取り消すサブスクリプションの横にあるチェックボックスをオンにするか、すべてのサブスクリプションを選択します。

  5. [サブスクリプションを取り消す] をクリックします。

API

サブスクリプションを取り消すには、projects.locations.subscriptions.revoke メソッドを使用します。

POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/subscriptions/SUBSCRIPTION_ID:revoke

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

  • PROJECT_ID: 取り消すサブスクリプションのプロジェクト ID。
  • LOCATION: サブスクリプションのロケーション。
  • SUBSCRIPTION_ID: 取り消すサブスクリプションの ID。

制限事項

サブスクリプションには次のような制限があります。

  • 2023 年 7 月 25 日より前に作成されたリンク済みデータセットはバックフィルされません。2023 年 7 月 25 日以降に作成されたサブスクリプションのみが API メソッドで機能します。

次のステップ