数据集简介
此页面简要介绍 BigQuery 中的数据集。
数据集
数据集包含在特定项目中,数据集是用来组织和控制表和视图访问权限的顶级容器。表或视图必须属于数据集,因此需要创建至少一个数据集,才能将数据加载到 BigQuery 中。
使用 GoogleSQL 时,请使用 projectname.datasetname
格式来完全限定数据集名称;使用 bq 命令行工具时,请使用 projectname:datasetname
格式来完全限定数据集名称。
位置
您在创建数据集时会指定一个位置用于存储 BigQuery 数据。如需查看 BigQuery 数据集位置的列表,请参阅 BigQuery 位置。创建数据集后,该位置无法更改,但您可以将数据集复制到其他位置,也可以手动将数据集移动到其他位置(在其他位置重新创建数据集)。
BigQuery 在包含待查询表的数据集所在的位置处理查询。BigQuery根据服务专用条款将您的数据存储在选定位置。
数据保留
数据集将时间旅行与故障安全期结合使用,以将已删除和修改的数据保留一小段时间,以防您需要恢复数据。如需了解详情,请参阅使用时间旅行和故障安全功能保留数据。
存储空间结算模式
您可以按逻辑和/或物理(压缩)字节为 BigQuery 数据存储付费。您选择的存储结算模式决定了存储价格。您选择的存储结算模式不会影响 BigQuery 性能。无论您选择哪种结算模式,您的数据都将以物理字节的形式存储。
您可以在数据集级层设置存储结算模式。如果您在创建数据集时未指定存储结算模式,则系统默认为使用逻辑存储结算。不过,您可以在创建数据集后更改数据集的存储结算模式。如果您更改了数据集的存储结算模式,则必须等待 14 天才能再次更改存储结算模式。
更改数据集的结算模式后,更改需要 24 小时才能生效。 更改数据集的结算模式时,长期存储中的任何表或表分区都不会重置为活跃存储。 更改数据集的结算模式不会影响查询性能和查询延迟时间。
数据集使用时间旅行和故障安全存储来保留数据。使用物理存储结算时,时间旅行和故障安全存储按活跃存储费率单独计费,但包含在使用逻辑存储结算时的基本费率中。您可以修改用于数据集的时间旅行窗口,以平衡物理存储费用和数据保留。您无法修改故障安全窗口。如需详细了解数据集数据保留,请参阅使用时间旅行和故障安全功能保留数据。如需详细了解如何预测存储费用,请参阅预测存储结算。
如果组织的任何现有旧版固定费率槽承诺位于数据集所在的区域,则无法将数据集加入物理存储空间结算。这不适用于通过 BigQuery 版本购买的承诺。
限制
BigQuery 数据集有以下限制:
- 数据集位置只能在创建时设置。创建数据集后,就无法再更改其位置。
查询中引用的所有表必须存储在位于同一位置的数据集中。
复制表时,包含源表和目标表的数据集必须位于同一位置。
各个项目的数据集名称不得重复。
如果您更改了数据集的存储空间结算模式,则必须等待 14 天才能再次更改存储空间结算模式。
如果您的任何现有旧版固定费率槽承诺位于数据集所在的区域,则无法将数据集加入物理存储空间结算。
配额
要详细了解数据集配额和限制,请参阅配额和限制。
价格
您无需为创建、更新或删除数据集付费。
要详细了解 BigQuery 价格,请参阅价格。
安全
如需控制对 BigQuery 中数据集的访问权限,请参阅控制对数据集的访问权限。 如需了解数据加密,请参阅静态加密。