3 个回答
对于 Compaction score 高的问题,通用的解决方案是:调整 “max_tablet_version_num”(默认 2000),还能手动触发 compaction,临时处理用
curl -X POST http://be_host:webserver_port/api/compaction/run?tablet_id=xxxx&compact_type=cumulative
同时,要收集 Compaction score 监控、BE 日志、tablet 的 rowset 布局(“curl be_ip:webserver_port/api/compaction/show?tablet_id=${tablet_id}” 获取)等信息。发布于:2周前 (04-16) IP属地:四川省
使用下面的方式来查看compaction 一段时间内的平均并发数
备注:
cat be/log/be.INFO | grep -E "succeed to do base compaction|succeed to do cumulative compaction" | awk '{print }' | awk -F= '{print }' | awk -Fs '{sum+=} END {print sum}'
备注:
1、用上述的命令统计一段时间内compaction的总耗时。
2、计算统计的clock time,比如统计的日志文件包含14:00 到 14:20日志,那clock time = 20min * 60 = 1200秒
3、compaction的平均并发 4000 / 1200 = 3.3 并发
4、然后获取BE的配置的并发限制和compaction线程数量,如果没有配置则为默认,如果实际的并发已经接近设置的并发,则是满负荷工作。
发布于:2周前 (04-16) IP属地:四川省
如果线程数过小,可以调大下线程数:max_base_compaction_threads ,max_cumu_compaction_threads,调整这两个参数即可
备注:
备注:
1、2.0.x 版本,默认线程数:base compaction thread num = 4,Cumu compaction thread num = 10;
2、2.1.x 版本,默认线程数:Base compaction thread num = 4,Cumu compaction thread num = -1(每块盘一个)。
发布于:2周前 (04-16) IP属地:四川省
我来回答
您需要 登录 后回答此问题!