Background


当前Doris执行并发依赖fe设置的参数,并且受存储层tablet数量的制约,无法充分利用机器资源。
比如,当用户建表指明bucket数量为1,那么即使执行查询的时候fe指定并发参数为8,那么实际也只会有一个instance在执行。

Goal


在pipelineX上,我们基于local exchange对执行引擎进行了改造,改造完成后,执行并发不再受tablet数量限制,即使只有1个tablet,也可以将实际执行并发设置为8。

场景1 (scan + exchange)


场景2 (scan + group by)



场景3 (BUCKET SHUFFLE HASH JOIN)



场景4(colocate hash join)



用户行为变更


增加session variable:ignore_storage_data_distribution(默认为true)。

  • No labels