查看标签
本页面介绍如何查看 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
使用带有资源 ID 的 bq show
命令。--format
标志可用于控制输出。如果资源属于非默认项目,请按以下格式添加项目 ID:[PROJECT_ID]:[DATASET]
。为确保可读性,可通过将 --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 文档中的使用标签。