コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

BigQuery Data Transfer Service の有効化

BigQuery Data Transfer Service を使用するには、プロジェクトのオーナーとして次の手順を行う必要があります。

  • プロジェクトを作成して BigQuery API を有効にします。
  • BigQuery Data Transfer Service を有効にします。

Identity and Access Management(IAM)のロールの詳細については、IAM のドキュメントのロールについてをご覧ください。

プロジェクトを作成して BigQuery API を有効にする

BigQuery Data Transfer Service を使用する前に、プロジェクトを作成し、通常はこのプロジェクトで請求を有効にする必要があります。BigQuery Data Transfer Service で既存のプロジェクトを使用することも、新しいプロジェクトを作成することもできます。既存のプロジェクトを使用する場合は、BigQuery API を有効にする必要があります。

プロジェクトを作成して BigQuery API を有効にするには:

  1. Google Cloud コンソールでプロジェクトの選択ページに移動します。

    プロジェクト セレクタに移動

  2. Google Cloud プロジェクトを選択または作成します。

  3. すべての転送について、プロジェクトで課金を有効にします。無料の転送では、$0 が請求されます。

    課金の有効化が必要になるのは、プロジェクトごとに 1 回のみです。複数のソースからデータを転送する場合も同様です。BigQuery でデータのクエリを行うには、データの転送後に課金を有効にする必要があります。

    プロジェクトに対して課金が有効になっていることを確認するで詳細をご覧ください。

  4. 新しいプロジェクトでは、BigQuery が自動的に有効になります。既存のプロジェクトで BigQuery を有効にするには、BigQuery API を有効にします。

    BigQuery API を有効にする

BigQuery Data Transfer Service を有効にする

転送を作成する前に、BigQuery Data Transfer Service を有効にする必要があります。BigQuery Data Transfer Service を有効にするには、プロジェクトのオーナーのロールが付与されている必要があります。

BigQuery Data Transfer Service を有効にするには:

  1. API ライブラリの BigQuery Data Transfer API ページを開きます。

  2. プルダウン メニューから、適切なプロジェクトを選択します。

  3. [有効にする] ボタンをクリックします。

    Data Transfer API を有効にします

サービス エージェント

BigQuery Data Transfer Service は、サービス エージェントと呼ばれる Google 管理のサービス アカウントを使用してリソースにアクセスして管理します。これには以下のようなリソースが含まれますが、これらに限定されるものではありません。

  • データ転送を承認する際に使用するサービス アカウントのアクセス トークンを取得する。
  • 有効な場合は、指定された Pub/Sub トピックに通知を公開します。
  • BigQuery ジョブの開始。

BigQuery Data Transfer Service を有効にした後に初めて API を使用すると、サービス エージェントが自動的に作成されます。サービス エージェントの作成時に、Google は事前定義されたサービス エージェントのロールを自動的に付与します。

プロジェクト間サービス アカウントの承認

BigQuery Data Transfer Service が有効になっているプロジェクトとは別のプロジェクトを使用して、サービス アカウントを使用してデータ転送を承認する場合、roles/iam.serviceAccountTokenCreator ロールを、次の Google Cloud CLI コマンドを使用しているサービス エージェントに付与する必要があります。

gcloud iam service-accounts add-iam-policy-binding service_account \
--member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com \
--role roles/iam.serviceAccountTokenCreator

ここで

  • service_account は、データ転送の承認に使用するクロス プロジェクト サービス アカウントです。
  • project_number は、BigQuery Data Transfer Service が有効になっているプロジェクトのプロジェクト番号です。

クロス プロジェクト リソースの構成の詳細については、Identity and Access Management サービス アカウントの権限借用のドキュメントの別のプロジェクトのリソースの構成をご覧ください。

サービス エージェントを手動で作成する

API を操作する前にサービス エージェントの作成をトリガーする場合(たとえば、サービス エージェントに追加のロールを付与する場合)は、次のいずれかの方法を使用できます。

サービス エージェントの作成を手動でトリガーしても、Google は事前定義されたサービス エージェントのロールを自動的に付与しません。次の Google Cloud CLI コマンドを使用して、サービス エージェントに事前定義ロールを手動で付与する必要があります。

gcloud projects add-iam-policy-binding project_number \
--member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com \
--role roles/bigquerydatatransfer.serviceAgent

ここで

  • project_number は、BigQuery Data Transfer Service が有効になっているプロジェクトのプロジェクト番号です。

bigquery.adminアクセス権を付与

転送を作成するすべてのユーザーに、IAM 事前定義ロールの bigquery.admin が付与されている必要があります。bigquery.admin のロールには、次の BigQuery Data Transfer Service の権限が含まれます。

  • bigquery.transfers.update
  • bigquery.transfers.get

bigquery.admin の役割には bigquery.datasets.update 権限も含まれます。転送の宛先データセットにデータを書き込むには、bigquery.datasets.update 権限が必要です。

bigquery.admin 役割を付与するには:

Console

  1. Google Cloud コンソールで [IAM] ページを開きます。

    [IAM] ページを開く

  2. [プロジェクトを選択] をクリックします。

  3. プロジェクトを選択して [開く] をクリックします。

  4. [追加] をクリックしてプロジェクトに新しいメンバーを追加し、権限を設定します。

  5. [メンバーの追加] ダイアログで、次の操作を行います。

    • [メンバー] で、ユーザーまたはグループのメールアドレスを入力します。
    • [役割を選択] プルダウンで [BigQuery] > [BigQuery 管理者] の順にクリックします。
    • [追加] をクリックします。

      管理者権限を付与する

gcloud

Google Cloud CLI を使用して、ユーザーやグループに bigquery.admin ロールを付与できます。

プロジェクトの IAM ポリシーにバインドを 1 つ追加するには、次のコマンドを入力します。ユーザーを追加するには、フォーマット user:user@example.com--member フラグを指定します。グループを追加するには、フォーマット group:group@example.com--member フラグを指定します。

gcloud projects add-iam-policy-binding project_id \
--member principal:address \
--role roles/bigquery.admin

ここで

  • project_id はプロジェクト ID です。
  • principalgroupuser のどちらかです。
  • address はユーザーまたはグループのメールアドレスです。

例:

gcloud projects add-iam-policy-binding myproject \
--member group:group@example.com \
--role roles/bigquery.admin

このコマンドでは、更新したポリシーが出力されます。

    bindings:
    - members:
      - group:group@example.com
        role: roles/bigquery.admin
    

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

次のステップ

BigQuery Data Transfer Service を有効にしたら、データソースの転送を作成します。

Google Software as a Service(SaaS)アプリ: 外部クラウド ストレージ プロバイダ: データ ウェアハウス: また、Google Cloud Marketplace では、いくつかのサードパーティ転送を利用できます。