【问题标题】:Sharing BigQuery's cache across multiple users跨多个用户共享 BigQuery 的缓存
【发布时间】:2016-01-04 22:47:23
【问题描述】:

据我了解,BigQuery 的caching 机制是基于每个用户的。但我们希望能够在项目/数据集/表级别共享缓存。

例如,John 和 Mary 都在同一个 Google 项目 XYZ 上工作。他们喜欢使用 BigQuery,并且都在数据集 FooXYZ:Foo.Bar 中查询表 Bar,以从他们的数据中获得美丽的见解。

John 登录并针对 XYZ:Foo.Bar 编写查询,执行需要 10 秒。几分钟后,Mary 登录并在XYZ:Foo.Bar 上编写exact 相同的查询。这也需要 10 秒,但她没有得到缓存命中。

有什么办法可以在用户之间共享查询缓存,即在项目/数据集/表级别?还是我遗漏了一些明显的东西?

【问题讨论】:

    标签: google-bigquery


    【解决方案1】:

    出于隐私原因,BigQuery 不会在用户之间共享缓存 - 但它可能是一个有趣的功能请求:https://code.google.com/p/google-bigquery/

    您今天可以实施的替代方案是使用服务帐号代表您的用户连接到 BigQuery 的代理。例如,在使用 http://demo.redash.io 时,您会获得 BigQuery 原生缓存和应用级缓存。与 Datalab 相同 - 因为它默认使用服务帐户,所以会为同一项目中的用户缓存结果。

    【讨论】:

    • 感谢费利佩!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-12
    • 1970-01-01
    相关资源
    最近更新 更多