starrocks 关闭 pipeline引擎 跟开启性能差别大吗,在2.5.13 上看不开启的话在高并发下表现更稳定,开启了之后在高并发下,经常容易出现慢查询( 同一条 sql )
建议开启,后续高版本中会强制开启。您可以执行下show variables like “%para%”; 还有show variables like “%dop%”; 看下结果。可以提供下执行快慢两种情况的profile
应该是因为开启pipeline后单个查询并行度更高,没开是1,开启后是cpu核数的一半,在集群查询请求并发较高的情况下,单个sql执行并行度高可能会造成调度等待耗时增加。可以通过set global pipeline_dop=2 这种方式调整下dop。集群查询并发请求较高的话可以设置低一点。 pipeline_dop
的(https://docs.starrocks.io/zh/docs/reference/System_variable/#pipeline_dop) 这个参数含义如下:
- 描述:一个 Pipeline 实例的并行数量。可通过设置实例的并行数量调整查询并发度。默认值为 0,即系统自适应调整每个 pipeline 的并行度。您也可以设置为大于 0 的数值,通常为 BE 节点 CPU 物理核数的一半。从 3.0 版本开始,支持根据查询并发度自适应调节
pipeline_dop
。
我设置了 session 级别的 pipeline_dop=2 , 好像没用
可以用2.5.20 (set global pipeline_dop=1)再压下试试,如果还有问题,联系下我。