列出数据集
本文档介绍如何在 BigQuery 中列出和获取数据集的相关信息。
准备工作
授予为用户提供执行本文档中的每个任务所需权限的 Identity and Access Management (IAM) 角色。
所需角色
如需获得列出数据集或获取数据集相关信息所需的权限,请让您的管理员为您授予项目的 BigQuery Metadata Viewer (roles/bigquery.metadataViewer
) IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
此预定义角色包含 bigquery.datasets.get
权限,该权限是列出数据集或获取数据集相关信息所需的权限。
在项目或组织级层应用 roles/bigquery.metadataViewer
角色时,您可以列出项目中的所有数据集。 在数据集级层应用 roles/bigquery.metadataViewer
角色时,您可以列出您已获得该角色的所有数据集。
列出数据集
从下列选项中选择一项:
控制台
在导航菜单中,点击 BigQuery Studio。
在分层图表面板中,展开项目名称以查看该项目中的数据集,或使用搜索框按数据集名称进行搜索。
SQL
查询 INFORMATION_SCHEMA.SCHEMATA
视图。
在 Google Cloud 控制台中,转到 BigQuery 页面。
在查询编辑器中,输入以下语句:
SELECT schema_name FROM PROJECT_ID.`region-REGION`.INFORMATION_SCHEMA.SCHEMATA;
替换以下内容:
PROJECT_ID
:您的 Google Cloud 项目的 ID。如果未指定,则使用默认项目。REGION
:任何数据集区域名称。 例如us
。
点击
运行。
如需详细了解如何运行查询,请参阅运行交互式查询。
bq
发出 bq ls
命令以按数据集 ID 列出数据集。您可以使用 --format
标志来控制输出。如果您要列出非默认项目中的数据集,请在该命令中添加 --project_id
标志。
如需列出项目中的所有数据集(包括隐藏数据集),请使用 --all
标志或 -a
快捷方式。
如需列出项目中的所有数据集(不包括隐藏数据集),请使用 --datasets
标志或 -d
快捷方式。此标志是可选标志。默认情况下,系统不会列出隐藏数据集。
其他标志包括:
--filter
:用于列出匹配过滤条件表达式的数据集。请使用以空格分隔的标签键和值列表,格式为labels.key:value
。如需详细了解如何使用标签过滤数据集,请参阅添加和使用标签。--max_results
或-n
:用于表示结果数量上限的整数,默认值为50
。
bq ls --filter labels.key:value \ --max_results integer \ --format=prettyjson \ --project_id project_id
替换以下内容:
- key:value:标签键和值
- integer:表示要列出的数据集数量的整数
- project_id:您的项目的名称
示例:
输入以下命令可列出默认项目中的数据集。--
format
设置为 pretty 可返回采用基本格式的表。
bq ls --format=pretty
输入以下命令可列出 myotherproject
中的数据集。--format
设置为 prettyjson
可返回 JSON 格式的详细结果。
bq ls --format=prettyjson --project_id myotherproject
输入以下命令可列出默认项目中的所有数据集(包括隐藏数据集)。在输出中,隐藏数据集以下划线开头。
bq ls -a
输入以下命令可从默认项目返回超过 50 个(默认输出)数据集。
bq ls --max_results 60
输入以下命令可列出默认项目中具有 org:dev
标签的数据集。
bq ls --filter labels.org:dev
API
要使用 API 列出数据集,请调用 datasets.list
API 方法。
C#
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 C# 设置说明进行操作。 如需了解详情,请参阅 BigQuery C# 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 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
PHP
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 PHP 设置说明进行操作。 如需了解详情,请参阅 BigQuery PHP API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
Python
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Python 设置说明进行操作。 如需了解详情,请参阅 BigQuery Python API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
Ruby
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Ruby 设置说明进行操作。 如需了解详情,请参阅 BigQuery Ruby API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
获取有关数据集的信息
从下列选项中选择一项:
控制台
在浏览器面板中,展开您的项目并选择数据集。
展开
操作选项,然后点击打开。 说明和详细信息会显示在详细信息面板中。数据集的表以及数据集名称会在 Explorer 面板中列出。
默认情况下,隐藏数据集在 Google Cloud 控制台中处于隐藏状态。如需显示隐藏数据集的相关信息,请使用 bq 命令行工具或 API。
SQL
查询 INFORMATION_SCHEMA.SCHEMATA
视图。
在 Google Cloud 控制台中,转到 BigQuery 页面。
在查询编辑器中,输入以下语句:
SELECT * EXCEPT (schema_owner) FROM PROJECT_ID.`region-REGION`.INFORMATION_SCHEMA.SCHEMATA;
请替换以下内容:
-
PROJECT_ID
:您的 Google Cloud 项目的 ID。如果未指定,则使用默认项目。 -
REGION
:任何数据集区域名称。 例如us
。
-
点击
运行。
如需详细了解如何运行查询,请参阅运行交互式查询。
您还可以查询 INFORMATION_SCHEMA.SCHEMATA_OPTIONS
视图。
SELECT * FROM PROJECT_ID.`region-REGION`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS;
bq
发出 bq show
命令。--format
标志可用于控制输出。如果您要获取非默认项目中数据集的相关信息,请按以下格式将相应项目 ID 添加到数据集名称中:project_id:dataset
。输出结果会显示数据集的信息,例如访问控制、标签和位置。此命令不会显示数据集的继承权限,但您可以在 Google Cloud 控制台中查看这些权限。
如需显示隐藏数据集的相关信息,请使用 bq ls --all
命令列出所有数据集,然后在 bq show
命令中使用隐藏数据集的名称。
bq show --format=prettyjson project_id:dataset
请替换以下内容:
- project_id 是项目的名称。
- dataset 是数据集的名称。
示例:
输入以下命令可显示默认项目中 mydataset
数据集的相关信息。
bq show --format=prettyjson mydataset
输入以下命令可显示 myotherproject
项目中 mydataset
数据集的相关信息。
bq show --format=prettyjson myotherproject:mydataset
输入以下命令可显示默认项目中隐藏数据集 _1234abcd56efgh78ijkl1234
的相关信息。
bq show --format=prettyjson _1234abcd56efgh78ijkl1234
API
调用 datasets.get
API 方法并提供所有相关参数。
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 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
验证数据集名称
以下示例展示了如何检查数据集是否存在:
Java
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Java 设置说明进行操作。 如需了解详情,请参阅 BigQuery Java API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
Python
试用此示例之前,请按照 BigQuery 快速入门:使用客户端库中的 Python 设置说明进行操作。 如需了解详情,请参阅 BigQuery Python API 参考文档。
如需向 BigQuery 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为客户端库设置身份验证。
后续步骤
- 如需详细了解如何创建数据集,请参阅创建数据集。
- 如需详细了解如何向数据集分配访问权限控制,请参阅控制数据集访问权限。
- 如需详细了解如何更改数据集属性,请参阅更新数据集属性。
- 如需详细了解如何创建和管理标签,请参阅创建和管理标签。
- 如需查看
INFORMATION_SCHEMA
的概览,请转到 BigQueryINFORMATION_SCHEMA
简介。