复杂查询场景,sql相同,数据不变的情况,多次查询结果不一致

为了更快的定位您的问题,请提供以下信息,谢谢
【详述】复杂查询场景,sql相同,数据不变的情况,多次查询结果不一致
【背景】采用paimon+hdfs+starrocks 数据湖架构
【业务影响】 计算误差,导致业务准确性下降
【是否存算分离】 是
【StarRocks版本】 3.2.14和3.3.9版本都存在该问题
【集群规模】例如:3fe(1 follower+2observer)+5CN(fe与be混部)
【机器信息】CPU虚拟核/内存/网卡,例如:48C/64G/万兆
【联系方式】StarRocks-存算分离2群-阿金
【附件】
第一次查询及profile


sql,查询结果1- profile.txt (82.4 KB)
第二次查询及profile

sql,查询结果2- profile.txt (82.4 KB)

直接用starrocks ,你这样链路太长了吧

采用的数据湖架构,虽然链路长,但是架构更健壮,计算准确性问题,跟链路长短设计无关

遇到同杨的问题,同一个sql,多执行几次,结果差距大

看起来是这个问题 https://github.com/StarRocks/starrocks/pull/55287
原因是cache key生成的不正确,导致这个sql命中了别的sql的cache。

验证方法你可以试下set enable_query_cache=false之后结果是否一致

好的 ,我试试


我这边查看3.2.14 版本默认值就是false

我看在3.3.10版本修复了这个问题, 目前这边升级3.3.10后测试, 发现还是会出现数据对不上的问题,只不过概率和之前相比已经极大的降低了,执行了几十次,才复现出一次,count 值差异