ビューに関する情報の取得
このドキュメントでは、BigQuery ビューのメタデータを一覧表示、情報を取得、表示する方法について説明します。
データセット内のビューは、次の方法で一覧表示できます。
- Google Cloud コンソールを使用する
- bq コマンドライン ツールの
bq ls
コマンド tables.list
API メソッドを呼び出す- クライアント ライブラリの使用
始める前に
このドキュメントの各タスクを実行するために必要な権限をユーザーに与える Identity and Access Management(IAM)のロールを付与します。
ビューの一覧表示
ビューを一覧表示するプロセスは、テーブルを一覧表示するプロセスと同じです。
必要な権限
データセット内のビューを一覧表示するには、bigquery.tables.list
IAM 権限が必要です。
次の IAM 事前定義ロールには、データセット内のビューを一覧表示するために必要な権限が含まれています。
roles/bigquery.user
roles/bigquery.metadataViewer
roles/bigquery.dataViewer
roles/bigquery.dataOwner
roles/bigquery.dataEditor
roles/bigquery.admin
BigQuery での IAM のロールと権限については、事前定義ロールと権限をご覧ください。
データセット内のビューの一覧表示
データセット内のビューを一覧表示するには、次の手順に沿って操作します。
Console
[エクスプローラ] パネルでプロジェクトを開いて、データセットを選択します。
リストをスクロールして、データセット内のテーブルを表示します。テーブルとビューはアイコンで区別できます。
SQL
INFORMATION_SCHEMA.VIEWS
ビューを使用します:
Google Cloud コンソールで [BigQuery] ページに移動します。
クエリエディタで次のステートメントを入力します。
SELECT table_name FROM DATASET_ID.INFORMATION_SCHEMA.VIEWS;
DATASET_ID
は、データセットの名前に置き換えます。[
実行] をクリックします。
クエリの実行方法については、インタラクティブ クエリを実行するをご覧ください。
bq
bq ls
コマンドを発行します。--format
フラグを使用して出力を制御できます。デフォルト プロジェクト以外のプロジェクトにあるビューを一覧表示する場合は、project_id:dataset
の形式でプロジェクト ID をデータセットに追加します。
bq ls --format=pretty project_id:dataset
ここで
- project_id はプロジェクト ID です。
- dataset は、データセットの名前です。
このコマンドを実行すると、Type
フィールドに TABLE
または VIEW
が表示されます。例:
+-------------------------+-------+----------------------+-------------------+ | tableId | Type | Labels | Time Partitioning | +-------------------------+-------+----------------------+-------------------+ | mytable | TABLE | department:shipping | | | myview | VIEW | | | +-------------------------+-------+----------------------+-------------------+
例:
次のコマンドを入力すると、デフォルト プロジェクトにある mydataset
データセット内のビューが一覧表示されます。
bq ls --format=pretty mydataset
次のコマンドを入力すると、myotherproject
にある mydataset
データセット内のビューが一覧表示されます。
bq ls --format=pretty myotherproject:mydataset
API
API を使用してビューを一覧表示するには、tables.list
メソッドを呼び出します。
Go
このサンプルを試す前に、クライアント ライブラリを使用した BigQuery クイックスタートにある Go の設定手順を完了してください。詳細については、BigQuery Go API のリファレンス ドキュメントをご覧ください。
BigQuery に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証を設定するをご覧ください。
Python
このサンプルを試す前に、クライアント ライブラリを使用した BigQuery クイックスタートにある Python の設定手順を完了してください。詳細については、BigQuery Python API のリファレンス ドキュメントをご覧ください。
BigQuery に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証を設定するをご覧ください。
ビューのメタデータは、次の方法で取得できます。
- Google Cloud コンソールを使用する
- bq コマンドライン ツールの
bq show
コマンドを使用する tables.get
API メソッドを呼び出す- クライアント ライブラリの使用
INFORMATION_SCHEMA
ビューのクエリ
ビューに関する情報の取得
ビューに関する情報を取得するプロセスは、テーブルに関する情報を取得するプロセスと同じです。
必要な権限
ビューの情報を取得するには、bigquery.tables.get
の IAM 権限が必要です。
次の各事前定義 IAM ロールには、それぞれビューに関する情報の取得に必要な権限が含まれています。
roles/bigquery.metadataViewer
roles/bigquery.dataViewer
roles/bigquery.dataOwner
roles/bigquery.dataEditor
roles/bigquery.admin
また、bigquery.datasets.create
権限がある場合は、自分が作成したデータセット内のビューに関する情報を取得できます。
BigQuery での IAM のロールと権限については、事前定義ロールと権限をご覧ください。
ビューに関する情報を取得するには:
Console
データセットを展開します。
ビュー名をクリックします。
[詳細] をクリックします。[詳細] タブには、ビューの説明、ビューの情報、ビューを定義する SQL クエリが表示されます。
SQL
INFORMATION_SCHEMA.VIEWS
ビューをクエリします。次の例では、将来の使用のために予約されている check_option
を除くすべての列を取得します。デフォルト プロジェクトにある DATASET_ID 内のすべてのビューに対するメタデータが返されます。
Google Cloud コンソールで [BigQuery] ページに移動します。
クエリエディタで次のステートメントを入力します。
SELECT * EXCEPT (check_option) FROM DATASET_ID.INFORMATION_SCHEMA.VIEWS;
DATASET_ID
は、データセットの名前に置き換えます。[
実行] をクリックします。
クエリの実行方法については、インタラクティブ クエリを実行するをご覧ください。
bq
bq show
コマンドを発行します。--format
フラグを使用すると、出力を制御できます。デフォルト以外のプロジェクトにあるビューの情報を取得する場合は、[PROJECT_ID]:[DATASET]
の形式でプロジェクト ID をデータセットに追加します。
bq show \ --format=prettyjson \ project_id:dataset.view
ここで
- project_id はプロジェクト ID です。
- dataset は、データセットの名前です。
- view は、ビューの名前です。
例:
デフォルト プロジェクトのデータセット mydataset
にある myview
の情報を表示するには、次のコマンドを入力します。
bq show --format=prettyjson mydataset.myview
myotherproject
のデータセット mydataset
にある myview
の情報を表示するには、次のコマンドを入力します。
bq show --format=prettyjson myotherproject:mydataset.myview
API
tables.get
メソッドを呼び出し、関連パラメータを指定します。
Go
このサンプルを試す前に、クライアント ライブラリを使用した BigQuery クイックスタートにある Go の設定手順を完了してください。詳細については、BigQuery Go API のリファレンス ドキュメントをご覧ください。
BigQuery に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証を設定するをご覧ください。
Java
このサンプルを試す前に、クライアント ライブラリを使用した BigQuery クイックスタートにある Java の設定手順を完了してください。詳細については、BigQuery Java API のリファレンス ドキュメントをご覧ください。
BigQuery に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証を設定するをご覧ください。
Node.js
このサンプルを試す前に、クライアント ライブラリを使用した BigQuery クイックスタートにある Node.js の設定手順を完了してください。詳細については、BigQuery Node.js API のリファレンス ドキュメントをご覧ください。
BigQuery に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証を設定するをご覧ください。
Python
このサンプルを試す前に、クライアント ライブラリを使用した BigQuery クイックスタートにある Python の設定手順を完了してください。詳細については、BigQuery Python API のリファレンス ドキュメントをご覧ください。
BigQuery に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証を設定するをご覧ください。
ビューのセキュリティ
BigQuery でビューへのアクセスを制御するには、承認済みビューをご覧ください。
次のステップ
- ビューの作成方法については、ビューの作成をご覧ください。
- 承認済みビューの作成方法については、承認済みビューの作成をご覧ください。
- ビューの管理の詳細については、ビューの管理をご覧ください。
INFORMATION_SCHEMA
の概要については、BigQueryINFORMATION_SCHEMA
の概要をご覧ください。