ラベルの表示
このページでは、BigQuery リソースのラベルを表示する方法について説明します。
ラベルを表示するには、次の方法があります。
- Google Cloud コンソールの使用
INFORMATION_SCHEMA
ビューのクエリ- bq コマンドライン ツールの
bq show
コマンドの使用 datasets.get
またはtables.get
API メソッドを呼び出す- クライアント ライブラリを使用する
ビューはテーブル リソースと同様に扱われるため、tables.get
メソッドを使用して、ビューとテーブルの両方のラベル情報を取得できます。
始める前に
このドキュメントの各タスクを実行するために必要な権限をユーザーに与える Identity and Access Management(IAM)のロールを付与します。
必要な権限
ラベルの表示に必要な権限は、アクセスできるリソースの種類によって異なります。このドキュメントのタスクを実行するには、次の権限が必要です。
データセットの詳細を表示する権限
データセットの詳細を表示するには、bigquery.datasets.get
の IAM 権限が必要です。
次の各事前定義 IAM ロールには、データセットの詳細を表示するために必要な権限が含まれています。
roles/bigquery.user
roles/bigquery.metadataViewer
roles/bigquery.dataViewer
roles/bigquery.dataOwner
roles/bigquery.dataEditor
roles/bigquery.admin
また、bigquery.datasets.create
権限がある場合は、作成したデータセットの詳細を表示できます。
BigQuery での IAM のロールと権限については、事前定義ロールと権限をご覧ください。
テーブルや詳細を表示する権限
テーブルや詳細を表示するには、bigquery.tables.get
IAM 権限が必要です。
すべての IAM 事前定義ロールには、テーブルや詳細を表示するために必要な権限(roles/bigquery.user
と roles/bigquery.jobUser
以外)が含まれています。
また、bigquery.datasets.create
権限がある場合は、作成したデータセット内のテーブルとビューの詳細を表示できます。
BigQuery での IAM のロールと権限については、事前定義ロールと権限をご覧ください。
ジョブ詳細に対する権限
ジョブの詳細を表示するには、bigquery.jobs.get
の IAM 権限が必要です。
次の各事前定義 IAM ロールには、ジョブの詳細を表示するために必要な権限が含まれています。
roles/bigquery.admin
(プロジェクト内のすべてのジョブの詳細を表示できます)roles/bigquery.user
(自分が所有するジョブの詳細を表示できます)roles/bigquery.jobUser
(自分が所有するジョブの詳細を表示できます)
BigQuery での IAM のロールと権限については、事前定義ロールと権限をご覧ください。
データセット、テーブル、ビューのラベルの表示
リソースのラベルを表示するには、次のいずれかのオプションを選択します。
コンソール
データセットの場合は、データセットの詳細ページが自動的に開きます。テーブルとビューの場合は、[詳細] をクリックして詳細ページを開きます。ラベル情報は、そのリソースの情報テーブルに表示されます。
SQL
データセットのラベルを確認するには INFORMATION_SCHEMA.SCHEMATA_OPTIONS
ビューにクエリを実行します。テーブルのラベルを確認するには、INFORMATION_SCHEMA.TABLE_OPTIONS
ビューにクエリを実行します。たとえば、次の SQL クエリは、mydataset
という名前のデータセットのラベルを返します。
Google Cloud コンソールで [BigQuery] ページに移動します。
クエリエディタで次のステートメントを入力します。
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA_OPTIONS WHERE schema_name = 'mydataset' AND option_name = 'labels';
[
実行] をクリックします。
クエリの実行方法については、インタラクティブ クエリを実行するをご覧ください。
bq
bq show
コマンドをリソース ID とともに使用します。--format
フラグを使用して出力を制御できます。リソースがデフォルト プロジェクト以外のプロジェクトにある場合は、[PROJECT_ID]:[DATASET]
の形式でプロジェクト ID を追加します。出力を読みやすい形式にするには、--format
フラグを pretty
に設定します。
bq show --format=pretty [RESOURCE_ID]
ここで、[RESOURCE_ID]
は、有効なデータセット、テーブル、ビュー、またはジョブ ID です。
例:
デフォルト プロジェクト内の mydataset
のラベルを表示するには、次のコマンドを入力します。
bq show --format=pretty mydataset
出力は次のようになります。
+-----------------+--------------------------------------------------------+---------------------+ | Last modified | ACLs | Labels | +-----------------+--------------------------------------------------------+---------------------+ | 11 Jul 19:34:34 | Owners: | department:shipping | | | projectOwners, | | | | Writers: | | | | projectWriters | | | | Readers: | | | | projectReaders | | +-----------------+--------------------------------------------------------+---------------------+
次のコマンドを入力して、mydataset.mytable
のラベルを表示します。mydataset
はデフォルト プロジェクトではなく myotherproject
にあります。
bq show --format=pretty myotherproject:mydataset.mytable
クラスタ化されたテーブルの出力は、次のようになります。
+-----------------+------------------------------+------------+-------------+-----------------+------------------------------------------------+------------------+---------+ | Last modified | Schema | Total Rows | Total Bytes | Expiration | Time Partitioning | Clustered Fields | Labels | +-----------------+------------------------------+------------+-------------+-----------------+------------------------------------------------+------------------+---------+ | 25 Jun 19:28:14 | |- timestamp: timestamp | 0 | 0 | 25 Jul 19:28:14 | DAY (field: timestamp, expirationMs: 86400000) | customer_id | org:dev | | | |- customer_id: string | | | | | | | | | |- transaction_amount: float | | | | | | | +-----------------+------------------------------+------------+-------------+-----------------+------------------------------------------------+------------------+---------+
API
datasets.get
または tables.get
メソッドを呼び出します。レスポンスには、そのリソースに関連付けられたすべてのラベルが含まれます。
または、datasets.list
を使用して複数のデータセットのラベルを表示することも、tables.list
を使用して複数のテーブルとビューのラベルを表示することもできます。
ビューはテーブル リソースと同様に扱われるため、tables.get
および tables.list
メソッドを使用してビューとテーブルの両方のラベル情報を表示できます。
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 に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
テーブルラベルの表示
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 に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
ジョブラベルの表示
ジョブのラベルを表示するには、次のいずれかのオプションを選択します。
SQL
ジョブのラベルを確認するには、INFORMATION_SCHEMA.JOB_BY_*
ビューに対してクエリを実行します。たとえば、次の SQL クエリは、現在のプロジェクトで現在のユーザーが送信したジョブのクエリテキストとラベルを返します。
Google Cloud コンソールで [BigQuery] ページに移動します。
クエリエディタで次のステートメントを入力します。
SELECT query, labels FROM INFORMATION_SCHEMA.JOBS_BY_USER;
[
実行] をクリックします。
クエリの実行方法については、インタラクティブ クエリを実行するをご覧ください。
bq
bq コマンドライン ツールを使用してクエリジョブのラベルを表示するには、クエリジョブのジョブ ID を指定して bq show -j
コマンドを入力します。--format
フラグを使用して出力を制御できます。たとえば、クエリジョブのジョブ ID が bqjob_r1234d57f78901_000023746d4q12_1
の場合は、次のコマンドを入力します。
bq show -j --format=pretty bqjob_r1234d57f78901_000023746d4q12_1
出力は次のようになります。
+----------+---------+-----------------+----------+-------------------+-----------------+--------------+----------------------+ | Job Type | State | Start Time | Duration | User Email | Bytes Processed | Bytes Billed | Labels | +----------+---------+-----------------+----------+-------------------+-----------------+--------------+----------------------+ | query | SUCCESS | 03 Dec 15:00:41 | 0:00:00 | email@example.com | 255 | 10485760 | department:shipping | | | | | | | | | costcenter:logistics | +----------+---------+-----------------+----------+-------------------+-----------------+--------------+----------------------+
API
jobs.get
メソッドを呼び出します。レスポンスには、そのリソースに関連付けられたすべてのラベルが含まれます。
次のステップ
- BigQuery リソースにラベルを追加する方法を学習する。
- BigQuery リソースのラベルを更新する方法を学習する。
- ラベルを使用してリソースをフィルタする方法を学習する。
- BigQuery リソースでラベルを削除する方法を学習する。
- Resource Manager ドキュメントでラベルの使用について読む。