首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在联合分区上的查询比在一个表上运行要慢得多

在联合分区上的查询比在一个表上运行要慢得多
EN

Stack Overflow用户
提问于 2013-07-05 18:15:45
回答 1查看 342关注 0票数 0

在stackoverflow和googlers的建议下,我们努力实现了bq表的每日分区策略,然而,我们面临着一个问题,当有超过30个分区时,它需要更长的时间(可能是2-3倍)。因此,3个月就是90个分区,即使是在总共1000万行的小数据集上,它也比只有10m行的小数据集慢两倍。当我们有6个月的时间时会发生什么?

为什么会这样呢?什么是正确的方法?

此外,我们看到GAE有时在运行大查询大小的字符串时会出现问题,尽管文档声称限制非常大。

非常感谢

EN

回答 1

Stack Overflow用户

发布于 2013-07-06 08:04:31

我在事务性数据日志方面也遇到了类似的问题。首先,我们尝试使用一个巨大的表来存储日常事务数据(对我们来说,这是按秒计算的数据)。我还发现,使用表分区可以获得更好的性能,然而,当我们按照您所描述的(每天)尝试这样做时,我们得到的性能比我们尝试使用一个巨大的表时要差得多。

最后,经过反复试验,我们发现对我们来说最好的方法是进行月度表分区--这样可以获得更好的查询性能(几乎快两倍!)。显然,我认为这取决于您的查询(例如,是否存在连接等)。以及你的应用程序的具体要求。对于我们来说,一条业务规则是我们只存储3年的客户数据,因此在任何给定的时间,我们将拥有的分区表的最大数量将是36,但这可能不符合您的应用程序的需求。

注意-我们没有使用GAE,我们只是通过脚本使用原始的BigQuery应用程序接口,尽管我希望在GAE托管的应用程序上性能会更好。

我还应该补充说,我们的平均查询大约是3000万行,但数据本身并不是非常冗长(有很多小字符串和INTs)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17486431

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档