【发布时间】:2015-05-11 14:34:03
【问题描述】:
有没有办法确定 BigQuery 将我的数据存储在哪个区域 (like these)?更重要的是,有没有办法指定我的数据在发送到 BigQuery 时的存储位置?如果重要的话,我同时使用 POST 方法来批量加载数据和流式传输。
如果这两个问题的答案都是“否”,那么 BQ 在哪里存储数据?它只是在美国,其他地方......还是遍布全球?
【问题讨论】:
标签: google-bigquery
有没有办法确定 BigQuery 将我的数据存储在哪个区域 (like these)?更重要的是,有没有办法指定我的数据在发送到 BigQuery 时的存储位置?如果重要的话,我同时使用 POST 方法来批量加载数据和流式传输。
如果这两个问题的答案都是“否”,那么 BQ 在哪里存储数据?它只是在美国,其他地方......还是遍布全球?
【问题讨论】:
标签: google-bigquery
注意:本文中的所有内容均应视为指导原则,而非保证。如有疑问,请参阅 BigQuery 服务条款,该条款将更详细地说明有关数据位置的保证。
默认情况下,BigQuery 将您的数据存储在 us-central1 和 us-central2 中。如果您希望 BigQuery 数据接近您的计算(即 GCE),您应该将您的计算移至这些区域之一。
BigQuery 位置信息位于数据集上。目前有三个可能的值:US、EU 和未指定。如果是美国,则数据位于美国(us-central1 和 us-central2),欧盟,数据位于欧盟(europe-west1,尽管其他副本可能存储在欧盟其他地方)。如果不指定,目前相当于存储在美国。
您可以通过执行datasets.get() 操作来查看这一点,您可以通过以下方式使用bq 命令行客户端执行此操作:
bq --format=prettyjson show publicdata:samples | grep location
注意,默认情况下,位置为空,表示位置未指定。
创建数据集时必须设置位置;也只有(目前)一组白名单客户可以设置他们的数据集位置。
【讨论】:
location 字段。这是我在运行bq --format=prettyjson show publicdata:samples 时看到的输出:gist.github.com/mkantor/34534881306e3290b8a11a80e8ffae0e。