资源有限,大查询不报错

为了更快的定位您的问题,请提供以下信息,谢谢
【详述】一张300亿行的数据表,数据量650G,一张17亿行的数据,数据量150G,涉及两张表的视图嵌套join,希望能够完整执行完成
【背景】
【业务影响】执行相关查询报错mem limit
【StarRocks版本】例如:1.18.2
【集群规模】例如:1fe(1 follower+2observer)+3be(fe与be混部)
【机器信息】CPU虚拟核/内存/网卡,例如:128C/100G/万兆
【联系方式】
【附件】

只有三个be?恐怕很难

使用的哪个版本?可以开启spill down试试,https://docs.starrocks.io/zh-cn/latest/administration/spill_to_disk

1.18.2 无法使用 spill down :joy:

1.18.2是帖子模版里面的版本 :joy:

不好意思, 老了,眼花 :sneezing_face:

使用3.1版本,已经开启了仍然报错


内存使用如下

count其中某个列呢,可以执行出来吗

还想问下大家,我设置了block_cache_disk_size = 536870912000
block_cache_disk_path 缓存磁盘路径 ,但是看起来并没有生效,没有创建文件

这个rd_dwd_fact_5是个视图,还是不行

存算分离还是存算一体呢,explain costs + sql 看下

另外把视图的创建语句贴下

存算一体,[1|attissue.sql (2.0 KB) achment](upload://zY61NZVPqjFBhqqr9MpWSEBsepq) (22.2 KB)

explain costs

1 (22.2 KB)

@jingdan 请教下,spill落盘应该只支持了部分算子? 像union这种就没支持?

@jingdan 我也遇到类似问题,也开了spill,有缓解,但是有些场景也是会报错。不知是否和并行的调度有关?一次性起了太多并行线程消耗太多内存? 要限制并行的话是需要调哪个参数呢? fragment_pool_thread_num_max 这个参数是针对整个集群的还是单次查询的呢? 还是应该调整这个pipeline_dop?