はじめに
Google BigQuery Enterpriseは、非常に大きな読み取り専用データを処理するためのクラウドベースのビッグデータ解析ウェブサービスです。DomoのGoogle BigQueryコネクターを使用すると、指定したプロジェクトからデータを取得することができます。Google BigQueryのクエリは、標準的なSQL SELECTステートメントのバリエーションを使って記述されています。 Google BigQuery Workload Identity連携データアカウントにはData Centerから接続できます。このトピックでは、Google BigQuery Workload Identity Federation Dataコネクターのユーザーインターフェースに固有のフィールドとメニューについて説明します。DataSetの追加、更新スケジュールの設定およびDataSet情報の編集を行うには、「 コネクターを使用してDataSetを追加する 」を参照してください。必要条件
Google BigQuery Workload Identity連携データアカウントに接続してDataSetを作成するには、以下が必要です。 注記: 以下の手順では、特にWIF設定ファイルを作成する方法を説明しています。WIF設定ファイルは、BigQueryへのCloud Amplifier接続を設定するときにも使用できます。- Google Cloudコンソールで既存のWorkload Identity連携アカウントを設定している場合は、以下の手順に従います。
- ドロップダウンリストから、[Use an existing Workload Identity Federation] を選択します。
- ドロップダウンリストから [Enter configuration values manually] を選択した場合:
- [Project Number] 、 [Project ID] 、 [Pool ID] 、 [Provider ID] 、 [Service Account Email] を入力します。
-
外部IDがサービスアカウントに偽装できるようにするには、サービスアカウントのWorkload Identityユーザー権限(roles/iam.workloadIdentityUser)を付与する必要があります。権限は、特定の外部IDまたは複数の外部IDに付与できます。
- Workload Identityプール( Workload Identityプールページ )に移動します。
- 作成したプールをクリックします。
- [grant access] をクリックします。
- 設定したサービスアカウントを選択します。
- ドロップダウンリストから [Allow access to all identities in the pool] を選択してプール内のすべてのIDへのアクセス権を付与するか、ドロップダウンリストから [Filter by user email address] を選択して、ユーザーのメールアドレスでフィルターをかけるか、ドロップダウンリストから [Filter by unique code representing your Domo instance and connector] を選択して、コネクターとDomoインスタンスを表す固有のGUID IDでフィルターをかけることができます。
- ドロップダウンリストから [Enter the JSON configuration from Google Cloud Consol] を選択した場合:
- Workload Identity連携のJSON設定を入力します。
-
フィルターから以下のいずれかのオプションを選択して、外部IDアクセスを制限できます。
- ユーザーのメールアドレスでフィルターをかける
- Domoインスタンスとコネクターを表す固有のコードでフィルターをかける
- プール内のすべてのIDへのアクセス権を付与する
- Google Cloudコンソールで既存のWorkload Identity連携アカウントを設定していない場合は、以下の手順に従います。
- ドロップダウンリストから [Go through prerequisite] を選択します。
-
Google Cloudプロジェクトを設定する必要があります。
- Google Cloudダッシュボード に移動します。
- [Create Project] をクリックします。
- [Project Name] と [Location] を入力し、 [Create] を選択します。
- Google Cloudコンソール に移動すると、作成されたプロジェクト情報が表示されます。
- [Project Number] および [Project ID] を入力します。
- Identity and Access Management(IAM)API、 Cloud Resource Manager API 、 IAM Service Account Credentials API 、 Security Token Service API へのアクセス権をプロジェクトに付与するには、 [Enable access to APIs] に移動して、 [Next] をクリックし、 [Enable] をクリックします。
-
Workload IdentityプールおよびWorkload Identityプロバイダーを作成するには:
- Workload Identityプールページ に移動します。
- このリンクが開かない場合は、[IAM & Admin] > [Workload Identity Federation] に進みます。
- [Get Started] をクリックします。
- 作成した プールID を入力します。
- プロバイダードロップダウンから [SAML] を選択します。
- プロバイダーID を入力します。
- メタデータファイルをダウンロードし、Google にアップロードします。
- プロバイダー属性を設定するには、Google 1の場合、google.subject がキーで assertion.subject が値です。
- Workload IdentityプールおよびWorkload Identityプロバイダーを保存します。
-
サービスアカウントをお持ちでない場合は、アカウントを設定する必要があります。
注記: サービスアカウントは、Workload IdentityプールおよびWorkload Identityプロバイダーと同じプロジェクトに存在する必要はありません。
- サービスアカウントを作成するには、サービスアカウント作成ページ に移動します。サービスアカウントを既に持っている場合は、 サービスアカウントページ に移動します。
- サービスアカウントのメール を入力します。
- Domoがアクセスするリソースへのアクセス権をサービスアカウントに付与します。
-
外部ワークロードがサービスアカウントに偽装できるようにするには:
注記: 外部IDがサービスアカウントに偽装できるようにするには、サービスアカウントのWorkload Identityユーザー権限(roles/iam.workloadIdentityUser)をユーザーに付与する必要があります。権限は、特定の外部IDまたは複数の外部IDに付与できます。
- Workload Identityプール( Workload Identityプールページ )に移動します。
- 作成したプールをクリックします。
- [grant access] をクリックします。
- 既に設定しているサービスアカウントを選択します。
- ドロップダウンリストから [Allow access to all identities in the pool] を選択してプール内のすべてのIDへのアクセス権を付与するか、ドロップダウンリストから [Filter by user email address] を選択して、ユーザーのメールアドレスでフィルターをかけるか、ドロップダウンリストから [Filter by unique code representing your Domo instance and connector] を選択して、コネクターとDomoインスタンスを表す固有のGUID IDでフィルターをかけることができます。
- 必要に応じて、設定ファイルをダウンロードします。このファイルは、後でDomoでアカウントを作成する際に使用できます。
Google BigQuery Workload Identity連携データアカウントに接続する
このセクションでは、Google BigQuery Workload Identity Federation Dataコネクターページの [認証情報] および [詳細] ペインのオプションについて説明します。このページのほかのペインの項目である [スケジュール設定] や [DataSetに名前を付け、説明を入力] に関しては、ほとんどのタイプのコネクターで共通しています。詳細については、「 コネクターを使用してDataSetを追加する 」を参照してください。[認証情報]ペイン
このペインには、Google BigQuery Workload Identity連携データアカウントに接続するための認証情報を入力するフィールドがあります。下表では、各フィールドに必要な内容を説明しています。フィールド | 説明 |
|---|---|
Project Number | 作成したプロジェクトのプロジェクト番号を入力します。 |
Project ID | 作成したプロジェクトのプロジェクトIDを入力します。 |
Pool ID | プールIDを入力します。 |
Provider ID | プロバイダーIDを入力します。 |
Service Account Email | 選択したサービスアカウントIDに対して生成されたサービスアカウントのメールアドレスを入力します。 |
[詳細]ペイン
このペインには、メインとなる [Report] メニューのほか、選択したレポートタイプに応じて表示/非表示になる様々なメニューが含まれています。メニュー | 説明 | ||||||
|---|---|---|---|---|---|---|---|
Report | 実行するGoogle BigQuery Workload Identity連携データレポートを選択します。以下のレポートが利用できます。
| ||||||
What Query Type would you like to use? | 使用するクエリタイプを選択します。デフォルトでは、レガシーSQLが選択されています。 | ||||||
Query | Google BigQueryの完全修飾クエリを入力します。 | ||||||
Query Parameter | クエリパラメーターの値を入力します。これはクエリパラメーターの初期値になります。最終実行日はオプションです。指定しない場合はデフォルトで「02/01/1700」となります。例:<tt>! | ||||||
Project ID | データを取得するプロジェクトのIDを入力します。 | ||||||
Expect Large Results | 大きい結果を返すクエリの場合、一時的なテーブルが作成され、ジョブが完了すると削除されます。一時的なテーブルを作成するには、DataSet IDが必要です。 | ||||||
DataSet ID | データを取得するDataSetのIDを入力します。 | ||||||
Projects | 利用可能なプロジェクトのリストからプロジェクトを選択します。 | ||||||
DataSet | 利用可能なDataSetリストからDataSetを選択します。 | ||||||
Tables | 利用可能なテーブルのリストからテーブルを選択します。 | ||||||
Location | ロケーションを入力します。ロケーション情報については、 https://cloud.google.com/bigquery/docs/locations を参照してください。 | ||||||
Selected Fields | フィールドを選択します。 | ||||||
Max Results | データの1ページ当たりの結果の数です。デフォルトでは、最大の結果は1ページ当たり10,000です。DataSetのメモリー不足エラーが発生した場合は、最大の結果を減らします。 | ||||||
Use Google BigQuery Schema | Google BigQueryから受け取ったスキーマを使用するには、このチェックボックスを選択します。これは、列のデータタイプがDomoで正しく認識されない場合に役立ちます。例:テーブルの文字列に「123」が含まれている。 |