我在 25 个分区(每个 40m)联合和 1 个完整表中有约 10 亿行。我运行一个计算不同计数的查询,通常它会在 1-4 个分区上找到数据。(查询是动态的)基于 where 子句。相同的查询在所有表的联合上运行 30 秒,而在全表上运行 50 秒。处理相同的 GB。首先,出色的性能:-) 问题是: 1.仅使用 union vs 1 big table 在性能方面的原则是什么?分区表总是更快吗?2. 如果它只使用几个分区,为什么要按相同的 GB 向我收费?这意味着我将不得不动态构建查询以选择正确的分区......这是一种负担。(我知道您没有类似 SQL 的优化器,但如果我需要管理分区,我不应该从中受益吗?)
多谢