【问题标题】:Is there a way to determine or specify what geo region BigQuery stores data in?有没有办法确定或指定 BigQuery 存储数据的地理区域?
【发布时间】:2015-05-11 14:34:03
【问题描述】:

有没有办法确定 BigQuery 将我的数据存储在哪个区域 (like these)?更重要的是,有没有办法指定我的数据在发送到 BigQuery 时的存储位置?如果重要的话,我同时使用 POST 方法来批量加载数据和流式传输。

如果这两个问题的答案都是“否”,那么 BQ 在哪里存储数据?它只是在美国,其他地方......还是遍布全球?

【问题讨论】:

    标签: google-bigquery


    【解决方案1】:

    注意:本文中的所有内容均应视为指导原则,而非保证。如有疑问,请参阅 BigQuery 服务条款,该条款将更详细地说明有关数据位置的保证。

    默认情况下,BigQuery 将您的数据存储在 us-central1us-central2 中。如果您希望 BigQuery 数据接近您的计算(即 GCE),您应该将您的计算移至这些区域之一。

    BigQuery 位置信息位于数据集上。目前有三个可能的值:US、EU 和未指定。如果是美国,则数据位于美国(us-central1us-central2),欧盟,数据位于欧盟(europe-west1,尽管其他副本可能存储在欧盟其他地方)。如果不指定,目前相当于存储在美国。

    您可以通过执行datasets.get() 操作来查看这一点,您可以通过以下方式使用bq 命令行客户端执行此操作:

    bq --format=prettyjson show publicdata:samples | grep location
    

    注意,默认情况下,位置为空,表示位置未指定。

    创建数据集时必须设置位置;也只有(目前)一组白名单客户可以设置他们的数据集位置。

    【讨论】:

    • 自从这个答案被接受后发生了一些变化。今天 CLI 显示的数据集元数据中没有 location 字段。这是我在运行bq --format=prettyjson show publicdata:samples 时看到的输出:gist.github.com/mkantor/34534881306e3290b8a11a80e8ffae0e
    • "请注意,默认情况下,位置为空,即未指定位置" 除非您明确设置了位置,否则它不会显示在请求中。如果它没有出现,则意味着它在美国。
    猜你喜欢
    • 1970-01-01
    • 2010-09-10
    • 1970-01-01
    • 2021-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多