---
title: Google BigQuery コネクタ構成ガイド
description: この記事では、お客様のCustomer Data HubアカウントでGoogle BigQueryコネクタを構成する方法について説明します。
url: https://docs.tealium.com/ja/server-side-connectors/google-bigquery-connector/
---
この記事では、Google BigQueryコネクタの構成方法について説明します。

## API情報

このコネクタは以下のベンダーAPIを使用します：

* API名：Google API
* APIバージョン：v2
* APIエンドポイント：`https://bigquery.googleapis.com/bigquery/v2`
* ドキュメント：[Google API](https://cloud.google.com/bigquery/docs/loading-data)

## バッチ制限

このコネクタは、ベンダーへの大量データ転送をサポートするためにバッチリクエストを使用します。詳細については、[バッチアクション](https://docs.tealium.com/batched-actions/)を参照してください。リクエストは、次のいずれかの閾値に達するか、プロファイルが公開されるまでキューに入れられます：

* 最大リクエスト数：100,000
* 最古のリクエストからの最大時間：60分
* リクエストの最大サイズ：90 MB

## 構成

コネクタマーケットプレイスに移動して、新しいコネクタを追加します。コネクタを追加する一般的な手順については、[コネクタについて](https://docs.tealium.com/about-connectors/)を参照してください。

コネクタを追加した後、Googleに認証するために以下の手順を使用します：

1. **認証タイプ**を選択します：
    * **Googleでサインイン**
        1. Googleアカウントを選択し、TealiumがGoogleアカウントにアクセスすることを許可します。
        1. **プロジェクトID**フィールドの下の**リロード**をクリックします。
    * **プライベートキーJSONファイル**：（このオプションはレガシーコネクタインターフェースでは利用できません。）
        1. **IAM & Admin > サービスアカウント > サービスアカウントの作成（オプション）**に移動します。
        1. サービスアカウントのアクションメニュー（三つの点）をクリックし、**キーの管理 > キーの追加 > 新しいキーの作成 > JSON > 作成**を選択します。
        1. サービスアカウント用に生成されたJSONキーの内容を貼り付けます。詳細については、[Google: サーバー間アプリケーション用のOAuth 2.0の使用](https://developers.google.com/identity/protocols/oauth2/service-account#creatinganaccount)を参照してください。
1. 接続する**プロジェクトID**を選択します。
1. **完了**をクリックします。

## アクション

| アクション名 | AudienceStream | EventStream |
| --- | :---: | :---: |
| レコード追加 | ✓ | ✓ |
| レコードバッチ追加 | ✓ | ✓ |
| カスタムステートメント実行 | ✓ | ✓ |
| イベントデータバッチ全体を送信 | ✗ | ✓ |
| 訪問データバッチ全体を送信 | ✓ | ✗ |
| ログイベント全体を送信 | ✗ | ✓ |
| ログイベントを送信 | ✗ | ✓ |

アクションの名前を入力し、ドロップダウンメニューからアクションタイプを選択します。

次のセクションでは、各アクションのパラメータとオプションの構成方法について説明します。

### レコード追加

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| データセット | 接続するテーブルのコレクションのIDを選択します。 |
| テーブル | 接続するテーブル名を提供します。 |

#### イベントパラメータ

テーブルの列にパラメータをマッピングします。少なくとも1つのパラメータをマッピングする必要があります。

パラメータの利用可能性は、コネクタが構成されたときに選択されたデータセットとテーブルに依存します。

### レコードバッチ追加

#### バッチ制限

このアクションは、ベンダーへの大量データ転送をサポートするためにバッチリクエストを使用します。詳細については、[バッチアクション](https://docs.tealium.com/batched-actions/)を参照してください。リクエストは、次のいずれかの閾値に達するか、プロファイルが公開されるまでキューに入れられます：

* 最大リクエスト数：100,000
* 最古のリクエストからの最大時間：60分
* リクエストの最大サイズ：90 MB

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| データセット | 接続するテーブルのコレクションのIDを選択します。 |
| テーブル | 接続するテーブル名を提供します。 |

#### イベントパラメータ

| **パラメータ** | **説明** |
| --- | --- |
| バッチの有効期限 | バッチアクションが送信される頻度を指定するために、有効期限（TTL）を構成します。値は5分から60分の間で入力してください。デフォルト値は60分です。 |

#### バッチ制限

このアクションは、ベンダーへの大量データ転送をサポートするためにバッチリクエストを使用します。詳細については、[バッチアクション](https://docs.tealium.com/batched-actions/)を参照してください。リクエストは、次のいずれかの閾値に達するか、プロファイルが公開されるまでキューに入れられます：

* 最大リクエスト数：500
* 最古のリクエストからの最大時間：10分
* リクエストの最大サイズ：1 MB

### カスタムステートメント実行

このアクションを使用して、BigQueryテーブルに対してカスタムSQLステートメントを実行します。

この機能を使用するには、属性を名前付きプレースホルダーにマッピングし、SQLで `@MY_PLACEHOLDER` 形式を使用して参照します。次に、マッピングされた各プレースホルダーのデータタイプをマッピングします。たとえば、整数属性を `MY_NUM_PARAM` というプレースホルダーにマッピングした場合、`INT64` → `MY_NUM_PARAM` にマッピングします。

最後に、マッピングされた値を実行時に動的に置き換えるために、プレースホルダーを参照するSQLステートメントを書きます。

以下は、文字列値とブール値の行を追加する `INSERT` ステートメントを実行する方法を示す例です。

まず、属性をプレースホルダーにマッピングします：

![](https://docs.tealium.com/images/server-side-connectors/bigquery-custom-sql-map-values.png)

次に、プレースホルダーにデータタイプをマッピングします：

![](https://docs.tealium.com/images/server-side-connectors/bigquery-custom-sql-map-types.png)

その後、それらのプレースホルダーを参照するSQLステートメントを書きます：

```none
INSERT INTO bigquery_table (my_string_col, my_bool_col)
VALUES ('@MY_STRING_PARAM', @MY_BOOLEAN_PARAM);
```

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| データセット | (必須) 接続するテーブルのコレクションのIDを選択します。 |
| クエリパラメータ | (必須) SQLクエリで使用されるプレースホルダー名に属性をマッピングします。少なくとも1つのパラメータをマッピングする必要があります。 |
| クエリパラメータタイプ | (必須) マッピングされた各パラメータのタイプを指定します。有効な値は：`STRING`, `INT64`, `FLOAT64`, `BOOL`, `TIMESTAMP`, `DATE`, `TIME`, `DATETIME`, `ARRAY`, `STRUCT`です。たとえば、整数属性を `MY_PARAM` というプレースホルダーにマッピングした場合、`INT64` を `MY_PARAM` にマッピングします。 |
| クエリ | (必須) 実行するSQLステートメントを入力します。`INSERT`、`UPDATE`、または `MERGE` ステートメントのみが許可されます。マッピングされたパラメータを参照するには、`@`記号を使用します。たとえば、ブール属性を `MY_BOOLEAN_PARAM` にマッピングした場合、その値が表示されるSQLで `@MY_BOOLEAN_PARAM` を使用します。 |
| バッチの有効期限 | 1分から60分の間で有効期限（TTL）を構成します。デフォルト値は10分です。 |

### イベントデータバッチ全体を送信

#### バッチ制限

このアクションは、ベンダーへの大量データ転送をサポートするためにバッチリクエストを使用します。詳細については、[バッチアクション](https://docs.tealium.com/batched-actions/)を参照してください。リクエストは、次のいずれかの閾値に達するか、プロファイルが公開されるまでキューに入れられます：

* 最大リクエスト数：100,000
* 最古のリクエストからの最大時間：60分
* リクエストの最大サイズ：90 MB

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| データセット | 接続するテーブルのコレクションのIDを選択します。 |
| テーブル | 接続するテーブル名を提供します。 |
| タイムスタンプを記録する列 | タイムスタンプを記録する列を選択します。 |
| ペイロードを記録する列 | ペイロードを記録する列を選択します。 |
| タイムスタンプ属性 | デフォルトでは、アクションの現在のタイムスタンプが送信されます。異なる形式で送信したい場合は、タイムスタンプとして割り当てる属性を選択します。割り当てられた属性が空の値を生成した場合、コネクタは現在のタイムスタンプを送信します。 |
| 属性名の印刷 | デフォルトでは、属性キーが使用されます。代わりに属性名をキーとして使用したい場合は、このチェックボックスを有効にします。属性名が更新されるとペイロード名が反映されることに注意してください。 |
| バッチの有効期限 | 5分から60分の間で有効期限（TTL）を構成します。デフォルト値は60分です。 |

### 訪問データバッチ全体を送信


#### バッチ制限

このアクションは、ベンダーへの大量データ転送をサポートするためにバッチリクエストを使用します。詳細については、[バッチアクション](https://docs.tealium.com/batched-actions/)を参照してください。リクエストは、次のいずれかの閾値に達するか、プロファイルが公開されるまでキューに入れられます：

* リクエストの最大数：100,000
* 最も古いリクエストからの最大時間：60分
* リクエストの最大サイズ：90MB

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| データセット | 接続するテーブルのコレクションのIDを選択します。 |
| テーブル | 接続するテーブル名を提供します。 |
| タイムスタンプを記録する列 | タイムスタンプを記録する列を選択します。 |
| ペイロードを記録する列 | ペイロードを記録する列を選択します。 |
| タイムスタンプ属性 | デフォルトでは、アクションの現在のタイムスタンプが送信されます。異なる形式で送信したい場合は、タイムスタンプとして割り当てる属性を選択します。属性が割り当てられて空の値を生成した場合、コネクタは現在のタイムスタンプを送信します。 |
| 現在の訪問データを訪問データに含める | 現在の訪問データを訪問データに含めます。 |
| 属性名を印刷 | デフォルトでは、属性キーが使用されます。代わりに属性名をキーとして使用したい場合は、このチェックボックスを有効にします。属性名が更新されるとペイロード名が更新を反映することに注意してください。 |
| バッチの有効期限 | バッチアクションが送信される頻度を指定するために、有効期限（TTL）を構成します。5分から60分の間の値を入力します。デフォルト値は60分です。 |

### ログイベント全体を送信

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| データセット | 接続するテーブルのコレクションのIDを選択します。 |
| テーブル | 接続するテーブル名を提供します。 |
| タイムスタンプを記録する列 | タイムスタンプを記録する列を選択します。 |
| ペイロードを記録する列 | ペイロードを記録するJSON列を選択します。 |
| タイムスタンプ属性 | デフォルトでは、アクションの現在のタイムスタンプが送信されます。異なる形式で送信したい場合は、タイムスタンプとして割り当てる属性を選択します。属性が割り当てられて空の値を生成した場合、コネクタは現在のタイムスタンプを送信します。 |

### ログイベントを送信

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| データセット | 接続するテーブルのコレクションのIDを選択します。 |
| テーブル | 接続するテーブル名を提供します。 |
| ログイベントリソース属性 | テレメトリが記録されるエンティティに関する情報をキャプチャするフィールドです。 |
| ログイベントHTTP属性 | ログシステムでHTTPリクエストとレスポンスを記録するフィールドです。HTTP配列全体を単一の列にマッピングするには、`http`属性をマップします。ターゲット列のタイプがJSONの場合、生の配列が送信されます。それ以外の場合、配列は文字列に変換されます。 |
| ログイベント結果属性 | 操作の結果を記録するフィールドで、成功したかエラーが発生したかを詳述します。 |
| ログイベントその他の属性 | ログされたイベントに関する追加のメタデータを提供するフィールドです。 |