调整并行度 通过setparallel_fragment_exec_instance_num=8; 增加并行度,提升计算资源利用率。 调整BE(Backend)节点的资源配置,避免资源竞争。 5、统计信息收集 定期收集表统计信息,帮助优化器生成高效执行计划:-- 手动收集统计信息ANALYZETABLEads_order COMPUTE STATISTICS; 6、资源隔离与优先级 为ADS 层查询分配独立...
parallel_fragment_exec_instance_num指定并行片段执行的实例数。默认为1.表示每个BE上fragment的实例数量,如果希望提升单个查询的性能,可以设置为BE的CPU核数的一半。query_mem_limit用于设置每个 BE 节点上查询的内存限制。以字节为单位。当查询使用的内存超过该限制时,查询将被终止。load_mem_limit各 BE 节点上单个...
在这个 POC 场景中,有几个 join 的左右表差不多大,并且数据量不大也不是很小(几百 K 行),系统可能默认会使用了 broadcast join,导致右表数据需要复制多份到多个 BE 节点。如果 BE 上还开启了并行度parallel_fragment_exec_instance_num(设置大于 1 时),则就可能需要拷贝更多份的右表数据了:BE 数量 * 并...
SET enable_pipeline_engine=false; SET parallel_fragment_exec_instance_num=8; 查看tablet分布。 show data xxx; 说明 建议tablet大小在1 GB~10 GB。 查看建表。 通过Profile判断iotime。如果很大,可以删除一些不必要的索引,例如,删除建得比较多的bitmap索引。 查看表数据模型,选择合适的数据模型。例如,uniq ke...
3、并行度调整当机器资源比较充裕时,可以将增加执行并行度( parallel_fragment_exec_instance_num),让更多的执行实例同时处理一组数据扫描,从而提升查询效率。但是并行度设置为较大的数值会消耗更多的机器资源,如 CPU、内存、磁盘 IO,影响整体的 QPS。需要根据实际上的查询场景来设置并行度,一般建议占用机器核数的50...
我的意思是parallel_fragment_exec_instance_num参数没有生效,想了解一下这个参数是不是我测试所理解的意思呢?JiangLai 2022年03月8日 07:55 #4 您好,并不是调高了并行度,查询效率就一定会被提高,您可以通过查看profile中的OLAP_SCAN_NODE (id=x)来查看并行度是否生效,同id的表示同一个表的scan信息。我...
结论4:测试 4 分析 fragment 1/2 实际并行度计算公式如下。适当增加 tablet 个数【partition、bucket】和 exec instance num 可以加快查询速度。此加速过程会作用于结论 1 中全部耗时点。 当tablet 个数【不含副本】小于 parallel_fragment_exec_instance_num * BE 个数时取 tablet 个数 ...
通过提高StarRocks的查询并发(parallel_fragment_exec_instance_num)、单节点内存限制(exec_mem_limit)等对复杂查询友好的参数,提高集群的查询性能; 数据是准实时更新,写多读多的场景(实时报表、实时全链路监控),我们构建了实时分析集群,通过 调整StarRocks的compaction(cumulative_compaction_num_threads_per_disk、base...
例如数据是T+1更新,且单表数据量在百亿级别以上的场景(例如高维业务指标报表、Adhoc分析),我们构建了离线分析集群。通过提高StarRocks的查询并发(parallel_fragment_exec_instance_num)、单节点内存限制(exec_mem_limit)等对复杂查询友好的参数,提高集群的查询性能; ...
例如数据是T+1更新,且单表数据量在百亿级别以上的场景(例如高维业务指标报表、Adhoc分析),我们构建了离线分析集群。通过提高StarRocks的查询并发(parallel_fragment_exec_instance_num)、单节点内存限制(exec_mem_limit)等对复杂查询友好的参数,提高集群的查询性能; ...