TOPN DESC 场景效率很低

为了更快的定位您的问题,请提供以下信息,谢谢
【详述】想要把SR上的某张表作为后端的接口表来用,其中在查询时涉及一个TOPN的倒序取值操作,效率很低,
【业务影响】大
【是否存算分离】否
【StarRocks版本】例如:3.4.0
【集群规模】目前还在测试环节中,集群规模 1fe+1be
【机器信息】CPU虚拟核/内存/网卡,例如:16C/64G/万兆
【联系方式】2830201534@qq.com
【背景】
该表的数据是通过FlinkCDC实时同步过来的,用的是主键模型,只有一个KEY(业务库中的唯一ID),且分桶也为该字段,自动分桶。
业务执行的查询条件最全条件如下,当前表数据量近3000w:
SELECT
xxx
FROM
test_table
WHERE
deleted = 0
AND (po_code LIKE ? AND po_type = ? AND vend_id = ? AND pur_org_id = ? AND order_status IN (?) AND
created_by = ? AND updated_by = ? AND po_code IN (?) AND province_id IN (?) AND city_id IN (?) AND
district_id IN (?))
ORDER BY
updated_at DESC,
created_at DESC
LIMIT ?;

        然后当前执行的查询如下:

SELECT
xxx 共 30 个字段
FROM
test_table
WHERE
deleted = 0
AND city_id IN (?)
ORDER BY
updated_at DESC,
created_at DESC
LIMIT 10000,200;

这个结果集的数据量大概是 800多w,在优化前,也就是上面提到的表结构,执行上面这个查询花费近5s,后面新建了一张表,调整了字段updated_at和created_at 的顺序,保持和order by顺序一致,并且指定排序键为 updated_at、created_at,存储同一份数据,然后执行同样的查询,花费了 1.3s,确实快了很多,但是当前数据量这么小,为什么会要1.3s呢,感觉还能再快点,但不清楚该如何优化了,是不是因为单节点的原因?

还有就是当我上面的业务条件较多时,如何设置索引呢,目前表是没有建索引的,或者表结构是否需要调整呢?

【附件】
附上优化前后的profile:

优化前.txt (21.9 KB)

优化后.txt (22.0 KB)

@jingdan 大佬帮看下

mpp 架构在单节点很难发挥能力, 建议您这边使用3be ,3副本进行测试验证

好的 感谢 如果解决后我会反馈

建表的时候 order by 的 updated_at 是第一列应该就能解决