hive 外表数据查询问题

为了更快的定位您的问题,请提供以下信息,谢谢
【详述】问题详细描述
【背景】做过哪些操作?
【业务影响】
【StarRocks版本】例如:3.1.2
【集群规模】例如:3fe(1 follower+2observer)+3be(fe与be混部)
【机器信息】CPU虚拟核/内存/网卡,例如:48C/64G/万兆
【联系方式】
【附件】
TPC-H Q5 hive外表测试
lineitem_orc_partition4 分区表
orders_orc_partition4 分区表
查询31天的分区,只需要14S
查询7天的分区,需要8分钟
麻烦分析一下为什么只7天的还慢很多?是执行计划解析有问题吗?

explain.sql (52.9 KB)

看起来表的关联顺序有变化,方便的话麻烦获取下profile

query (336.4 KB) slow_query (384.7 KB)

这个是两个sql的profile,麻烦帮忙看一下

你好,麻烦有时间再帮忙看一下这个问题。

好的,我晚点看下

你好,有时间麻烦帮忙看一下,感谢

设置下disable_join_reorder=true;再试下呢,另外3.1.2的profile解析有点问题,新版本优化了这个问题,也可以升级到3.1.3版本

麻烦提供下 eplain costs + sql的返回结果. 我们确认下join 成本计算的问题.

你好,有时间麻烦帮忙看一下,感谢
explain-costs.sql (47.5 KB)

使用disable_join_reorder=true后,查询正常了。导致这个的原因是什么?

好的。麻烦看一下

执行快的 也麻烦提供下

explain-costs2.sql (45.6 KB)

已发,再帮忙看一下,谢谢

当前看没有列统计信息导致优化器 没法根据成本选一个最优的plan. 可以尝试下在hive端执行下analyze 收集统计信息后再看看. 另外 查询31天的分区,只需要14S 也请提供下. 我们会优化下在没有统计信息时成本计算模型.

explain-31 (74.0 KB) profile-31.sql (338.1 KB)
这个是查询31天的explain和profile,另外我们会在哪个版本优化一下呢?我这边到时好升级版本

有时间再看一下31天分区

有尝试在hive侧收集下统计信息吗

只测试收集了一个分区统计信息,大部分情况下hive测并没有收集统计信息