はじめに
適切なハードウェアやインフラストラクチャがなければ、膨大なDataSetのクエリには時間とコストがかかる可能性があります。Google Big Queryは、Googleのインフラストラクチャの処理能力を使用して、追加専用表に対するSQLに似た超高速クエリを有効にすることで、この問題を解決します。データはまず、データベンダーが効果的にクエリを実行できる場所からGoogle BigQueryに読み込む必要があります。 ワークロードアイデンティティーフェデレーションでは、機密情報のない外部認証情報メタデータのみが入力に含まれるため、より安全な接続が可能です。外部認証情報メタデータを外部環境で使用することで、必要な操作のための一時的な/有効期限が短いトークンを生成できます。詳細については、「 Workload Identity連携 」を参照してください。 このトピックでは、Google BigQuery Workload Identity Federationコネクターのユーザーインターフェースに固有のフィールドとメニューについて説明します。DataSetの追加や更新スケジュールの設定、DataSet情報の編集に関する一般的な情報は、「 コネクターを使用してDataSetを追加する 」を参照してください。注記: writeback DataSetの所有者は、入力DataSetの所有者または共同所有者である必要があります。
必要条件
このコネクターを設定するには、次の情報が必要です。- ワークロードアイデンティティーフェデレーションクライアントライブラリ設定JSONキー(JSON設定ファイルとして)。
- GCPプロジェクトのプロジェクトID。
- GCPに既存のプロジェクトがない場合は、Google Developers Consoleでプロジェクトを作成します。
- GCPインスタンスでBig Query APIを有効にします。
- ワークロードアイデンティティープールとワークロードアイデンティティープロバイダーを作成します。
- サービスアカウントを作成し、このアカウントをプールに関連付けるか、プールを持つ既存のサービスアカウントに関連付けます。
- コネクターで使用するJSON設定ファイルをダウンロードします。
ステップ1:Google Developers Consoleでプロジェクトを作成する
注記: 使用したいプロジェクトが既にある場合は、このステップをスキップできます。
- https://console.developers.google.com に移動します。
-
[My Project] の横のドロップダウン矢印をクリックします。

-
[New Project] をクリックして、新しいプロジェクトの名前と、新しいプロジェクトの親組織またはフォルダを指定します。

- [Create] をクリックします。
ステップ2:Google BigQuery APIを有効にする
Google BigQuery APIをプロジェクトで有効にするには、次の手順を実行します。-
ハンバーガーメニューをクリックし、[API & Services] メニューを選択します。

- [Library] を選択し、Google BigQuery APIを検索します。
- Google [BigQuery API] の[Enable] をクリックします。
ステップ3:ワークロードアイデンティティープールとワークロードアイデンティティープロバイダーを作成する
ワークロードアイデンティティープールとワークロードアイデンティティープロバイダーを作成するには、次のステップを実行します。-
コンソールでハンバーガーメニューをクリックし、[IAM & Admin] を選択します。

- [Workload Identity Federation] オプションを選択します。
-
[create pool] をクリックします。

-
ステップ1でプールの名前を入力し、[enable pool] が選択されていることを確認します。

- ステップ2では、プロバイダーを選択するように求められます。[AWS] を選択します。
-
[provider details] タブで、プロバイダーの名前とIDを入力します(例: Domo AWS )。

- [AWS Account ID box] にDomoのAWSアカウントIDを入力する必要があります。 Domoインスタンスがある場所にもとづいて、次のアカウントIDのいずれかを使用します。 米国:339405024189 オーストラリア:01025142412 ヨーロッパ、中東、アフリカ(IE):687132894031 日本:622384692065 カナダ:710710207408
- 使用するIDが不明な場合は、Domoサポートにお問い合わせください。
- ステップ3で追加のプロバイダー属性をオプションで設定することもできます。
ステップ4:サービスアカウントにワークロードプールへのアクセスを許可します。
- ハンバーガーメニューで、[IAM] に移動し、 [Workload identity federation] リストを選択して、最近作成したプールを選択します。
- ウィンドウの上部にある [Grant Access] を選択します。
- 右側のペインで、アクセスを許可するサービスアカウントを選択するように求められます。
- [Select Service Account] ドロップダウンから適切なサービスアカウントを選択します。
- [Save] をクリックします。
- [Configure your application] で、DomoのAWSアカウントIDを使用して作成したプロバイダーを選択します。
- [Download Config] ボタンをクリックしてJSON設定ファイルをダウンロードします。 このファイルは、コネクターの起動に使用されます。
接続を設定する
このセクションでは、Google BigQuery Workload Identity Federationコネクターページの [認証情報] および [詳細] ペインのオプションについて説明します。このページのほかのペインの項目である [スケジュール設定] や [DataSetに名前を付け、説明を入力] に関しては、ほとんどのタイプのコネクターで共通しています。詳細については、「 コネクターを使用してDataSetを追加する 」を参照してください。[認証情報]ペイン
このペインには、Domoデベロッパーアカウントに接続するための認証情報の入力フィールドがあります。下表では、各フィールドに必要な内容を説明しています。フィールド | 説明 |
|---|---|
WORKLOAD IDENTITY FEDERATION CLIENT LIBRARY CONFIG JSON KEY | 外部認証メタデータを含む外部認証情報JSONファイルの設定。このファイルは、上記の手順のステップ4で入手できます。 |
| Project ID | Google BigQueryおよびワークロードプールにアクセスできるGCP内のプロジェクトのプロジェクトID。 |
[詳細]ペイン
このペインには、データを指定してデータの送信先を示すための多数のフィールドがあります。メニュー | 説明 | ||||||
|---|---|---|---|---|---|---|---|
| Report | 要件にもとづいて、次のレポートを実行します。
| ||||||
| SQL Dialect | 使用するSQLダイアレクトを選択します。デフォルトは標準SQLです。 | ||||||
| Query | クエリテキストを入力します。 | ||||||
| Query Parameters | クエリパラメーターの値を入力します。これはクエリパラメーターの初期値になります。最終実行日はオプションです。指定しない場合はデフォルトで「02/01/1700」となります。例:!{lastvalue:_id}!=1,!{lastrundate:start_date}!=02/01/1944 | ||||||
| Allow Large Results | 有効にされている場合、任意の大きい結果が一時的な宛先表に書き込まれ、ジョブが完了したときに削除されます。一時的な表を作成するには、DataSet名が必要です。 | ||||||
| Dataset_Names | 利用可能なDataSetリストからDataSet名を選択します。 | ||||||
| Table Names | 利用可能な表のリストから表の名前を選択します。 | ||||||
| Processing Location | クエリを実行する場所を入力します。特定の場所で実行されるクエリは、そのロケーションのデータのみを参照できます。 | ||||||
| Max Results | 最大の結果はデータのページごとに返される結果の数です。デフォルトでは、最大の結果は1ページ当たり10,000です。DataSetのメモリー不足エラーが発生する場合、最大の結果を減らします。 | ||||||
| Use Google BigQuery Schema | このチェックボックスを選択して、Google BigQueryから受け取ったスキーマを使います。<br>これは、列のデータタイプがDomoに不正に認識される可能性がある場合に役立ちます。例:表の文字列に「123」がある。 |