データ交換を管理する

Analytics Hub 管理者は、次の操作を行えます。

  • データ交換を作成、更新、表示、共有、削除します。
  • リスティングを作成、更新、削除、共有します。
  • Analytics Hub 管理者を管理し、管理者、パブリッシャー、サブスクライバー、閲覧者を一覧表示します。

デフォルトでは、データ交換は限定公開であり、その交換にアクセスできるユーザーまたはグループのみがデータを表示またはデータに登録できます。ただし、Google Cloud ユーザー(allAuthenticatedUsersがリストを検出してサブスクライブする場合は、データ交換の公開をするようにリクエストできます。

始める前に

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

必要な権限

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

  • Cloud コンソールで API を表示する serviceUsage.services.get/list
  • API を有効にする serviceUsage.services.enable

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

  • roles/editor
  • roles/owner
  • roles/serviceusage.serviceUsageAdmin

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

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.admin)が必要です。詳細については、Analytics Hub 管理者のロールをご覧ください。このロールを他のユーザーに付与する方法については、Analytics Hub 管理者の作成をご覧ください。

データ交換を作成する

データ交換を作成するには、次の手順に沿って操作します。

コンソール

  1. Analytics Hub ページに移動します。

    Analytics Hub に移動

  2. [エクスチェンジの作成] をクリックします。

  3. [エクスチェンジの作成] ダイアログで、データ交換の [プロジェクト] と [リージョン] を選択します。データ交換の作成後にプロジェクトとリージョンを更新することはできません。

  4. [表示名] に、データ交換の名前を入力します。

  5. 省略可: 次のフィールドに値を入力します。

    • メインの連絡先: データ交換に関するメインの連絡先の URL またはメールアドレスを入力します。
    • 説明: データ交換の説明を入力します。
  6. [エクスチェンジの作成] をクリックします。

  7. 省略可: [エクスチェンジの権限] セクションで、次の操作を行います。

    1. 次のフィールドにメールアドレスを入力して、Analytics Hub のユーザーロールを付与します。

    2. 権限を保存するには、[権限を設定] をクリックします。

  8. データ交換の権限を設定していない場合は、[スキップ] をクリックします。

API

projects.locations.dataExchanges.create メソッドを使用します。

POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges?dataExchangeId=DATAEXCHANGE_ID

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

  • PROJECT_ID: データ交換を作成するプロジェクトの ID。
  • LOCATION: データ交換のロケーション。Analytics Hub をサポートするロケーションの詳細については、サポート対象のリージョンをご覧ください。
  • DATAEXCHANGE_ID: データ交換の ID。

リクエストの本文で、データ交換の詳細を指定します。リクエストが成功した場合は、レスポンスの本文にデータ交換の詳細が含まれます。

API でデータ交換に対して実行できるタスクの詳細については、projects.locations.dataExchanges メソッドをご覧ください。

データ交換を更新する

データ交換を更新するには、次の手順に沿って操作します。

コンソール

  1. Analytics Hub ページに移動します。

    Analytics Hub に移動

  2. データ交換のリストで、更新するデータ交換をクリックします。

  3. [エクスチェンジの編集] をクリックします。

  4. [エクスチェンジの編集] ダイアログで、次の項目を更新します。

    • 表示名
    • メインの連絡先
    • 説明
  5. [保存] をクリックします。

API

projects.locations.dataExchanges.patch メソッドを使用します。

PATCH https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID?updateMask=UPDATEMASK

UPDATEMASK は、更新するフィールドのリストに置き換えます。複数の値を更新するには、カンマ区切りのリストを使用します。たとえば、データ交換の表示名と連絡先担当者を更新するには、「displayName,primaryContact」と入力します。

リクエストの本文で、次のフィールドの更新後の値を指定します。

  • 表示名
  • 説明
  • ドキュメント
  • アイコン
  • メインの連絡先

API でデータ交換に対して実行できるタスクの詳細については、projects.locations.dataExchanges メソッドをご覧ください。

データ交換を表示する

アクセスできる組織内のすべてのデータ交換を表示するには、次の手順に沿って操作します。

コンソール

  1. Analytics Hub ページに移動します。

    Analytics Hub に移動

  2. Google Cloud 組織内のデータ交換のリストを表示します。

API

organizations.locations.dataExchanges.list メソッドを使用します。

GET https://analyticshub.googleapis.com/v1/organizations/ORGANIZATION_ID/location/LOCATION/dataExchanges

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

  • ORGANIZATION_ID: 組織 ID。詳細については、組織 ID の取得をご覧ください。
  • LOCATION: 既存のデータ交換を一覧表示するロケーション。

データ交換を共有する

Analytics Hub パブリッシャーが、データ交換が含まれる組織とは異なる組織に属している場合、パブリッシャーが Analytics Hub でデータ交換を表示することはできません。データ交換へのリンクをパブリッシャーと共有する必要があります。

  1. Analytics Hub ページに移動します。

    Analytics Hub に移動

  2. データ交換のリストから、 [その他のオプション] をクリックします。

  3. [共有リンクをコピー] をクリックします。

ユーザーにデータ交換へのアクセス権を付与する

ユーザーがデータ交換にアクセスできるようにするには、そのデータ交換についての IAM ポリシーを設定する必要があります。事前定義された IAM ユーザーロールについては、Analytics Hub のユーザーロールをご覧ください。方法は次のとおりです。

コンソール

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

    Analytics Hub に移動

  2. 権限を設定するデータ交換名をクリックします。

  3. [権限を設定] をクリックします。

  4. プリンシパルを追加するには、 [プリンシパルを追加] をクリックします。

  5. [新しいプリンシパル] フィールドに、アクセス権限を付与するメールアドレスを追加します。

  6. [ロールを選択] で、[Analytics Hub] の上にポインタを置き、次のいずれかの Identity and Access Management(IAM)ロールを選択します。

    • Analytics Hub 管理者
    • Analytics Hub パブリッシャー
    • Analytics Hub リスティング管理者
    • Analytics Hub サブスクライバー
    • Analytics Hub 閲覧者
  7. [保存] をクリックします。

API

  1. projects.locations.dataExchanges.getIamPolicy メソッドを使用して、リスティング getIamPolicy メソッドがある既存のポリシーを読み取ります。

    POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:getIamPolicy
    

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

    • PROJECT_ID: プロジェクト ID(例: my-project-1)。
    • LOCATION: データ交換のロケーション。
    • DATAEXCHANGE_ID: データ交換 ID。

    Analytics Hub により現在のポリシーが返されます。

  2. メンバーとそれに関連する Identity and Access Management(IAM)のロールを追加または削除するには、テキスト エディタでポリシーを編集します。メンバーを追加するには、次の形式を使用します。

    • user:test-user@gmail.com
    • group:admins@example.com
    • serviceAccount:test123@example.domain.com
    • domain:example.domain.com

    たとえば、roles/analyticshub.subscriber ロールを group:subscribers@example.com に付与するには、次のバインディングをポリシーに追加します。

    {
     "members": [
       "group:subscribers@example.com"
     ],
     "role":"roles/analyticshub.subscriber"
    }
    
  3. projects.locations.dataExchanges.setIamPolicy メソッドを使用して、更新したポリシーを書き込みます。リクエストの本文で、前のステップで更新した IAM ポリシーを指定します。

    POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:setIamPolicy
    

    リクエストの本文で、リスティングの詳細を指定します。リクエストが成功した場合は、レスポンスの本文にリスティングの詳細が含まれます。

Analytics Hub 管理者の作成

データ交換を管理するには、Analytics Hub 管理者を作成する必要があります。交換管理者を作成するには、プロジェクト レベルまたはデータ交換レベルで Analytics Hub 管理者のロール(roles/analyticshub.adminをユーザーに付与する必要があります。

管理者がプロジェクト内のすべてのデータ交換を管理できるようにするには、そのプロジェクトの Analytics Hub 管理者ロールを付与します。管理者が特定のデータ交換を管理できるようにするには、対象のデータ交換に対する Analytics Hub 管理者のロールを付与します。

データ交換を一般公開する

デフォルトでは、データ交換は限定公開であり、その交換にアクセスできるユーザーまたはグループのみがリスティングを表示またはリスティングに登録できます。ただし、データ交換を一般公開することは可能です。一般公開のデータ交換のリスティングは、Google Cloud ユーザー(allAuthenticatedUsersが検出および登録できます。

データ交換を公開するには、以下の手順に沿って操作します。

  1. allAuthenticatedUsersリスティングを表示できるようにするには、データ交換レベルで Analytics Hub の閲覧者のロールを付与する必要があります。

  2. allAuthenticatedUsersリスティングに登録できるようにするには、データ交換レベルで Analytics Hub サブスクライバーのロールを付与する必要があります。

  3. データ交換を一般公開するように Google にリクエストします。Google がリクエストを承認すると、すべての Google Cloud ユーザー(allAuthenticatedUsers)がそのデータ交換の公開リスティングを表示できます。

データ交換を削除する

データ交換を削除すると、含まれているリスティングもすべて削除されます。ただし、共有データセットとリンクされたデータセットは削除されません。また、プロジェクトが削除されても、プロジェクト内のデータ交換は削除されません。プロジェクトを削除する前に、手動でこれらのデータ交換を削除する必要があります。データ交換を削除すると、元に戻すことはできません。

データ交換を削除するには、次の手順に沿って操作します。

コンソール

  1. Analytics Hub ページに移動します。

    Analytics Hub に移動

  2. データ交換のリストで、削除するデータ交換をクリックします。

  3. [エクスチェンジを削除] をクリックします。

  4. [エクスチェンジを削除しますか?] ダイアログで「削除」と入力して削除を確定します。

  5. [削除] をクリックします。

API

projects.locations.dataExchanges.delete メソッドを使用します。

DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID

API でデータ交換に対して実行できるタスクの詳細については、projects.locations.dataExchanges メソッドをご覧ください。

次のステップ