单分区和多分区性能差异

【详述】
查询逻辑是将三张表,

  • item_basic(约2000万条)
  • record_basic(约130万条)
  • report_summary(约1000条)

联结,并通过过滤条件筛选出一定量数据后,进行聚合。

由于业务逻辑的需求,对数据按时间进行分区,遇到如下现象,

  • 在相同数据量、相同条件参数的情况下,向多个分区(按照时间分区)的表查询的耗时,大于向单分区(未按照时间分区)的表查询(e.g. 137ms VS 88ms);
  • 对按时间分区的表进行的查询,SQL加上了分区键的查询条件,但是耗时上依旧比单分区的多(e.g. 125ms VS 88ms);
  • 添加了分区键查询条件的查询,其执行计划中未找到分区键过滤对应的部分。

有如下问题想咨询,

  • 单分区查询反而快是否是符合预期的?
  • Profile的文件中内容过多
    • 如何理解Active对应的耗时数据,什么时候可以串行累加?什么时候是并行的?
    • 怎么快速找到瓶颈,并且和查询计划对应上?

【StarRocks版本】例如:2.2.1
【集群规模】例如:1 FE + 3 BEs(fe与be混部)
【附件】

Profile的信息非常多,有没有一些技巧或者经验能帮助新手快速理解Profile中的信息?