oceanbase 3节点集群做统计分析时 只使用了每个节点的一个cpu

【产品名称】

oceanbase

【产品版本】

3.1

【问题描述】

3台 12c 16g 机器 1:1:1 部署ob集群 使用 unit 规格为 max_cpu=8, min_cpu=8, max_memory=‘9G’, min_memory=‘9G’ 创建表 partition by KEY(id) partitions 192 写入600W数据 执行 select /*+ parallel(24) */ from_unixtime(rq_date_chsr/1000,’%Y-%m’) mth,count(1) cut from zttjgl_zttjcx_01hkmn group by from_unixtime(rq_date_chsr/1000,’%Y-%m’); 查询中通过监控服务器top 发现每台机器只有一个cpu 在满负荷运作 其他核心空闲系统参数: large_query_threshold = 100ms large_query_worker_percentage = 100 能否有办法执行这次统计查询 调动所有cpu 核心,提高运算速度,目前sql 执行时间为4s 左右

primary_zone情况呢

primary_zone=RANDOM

create resource unit tpch_unit max_cpu=8, min_cpu=8, max_memory='9G', min_memory='9G', max_iops=10000, min_iops=1000, max_session_num=1000000, max_disk_size='100G';
create resource pool tpch_pool unit = 'tpch_unit', unit_num = 1, zone_list=('zone1','zone2','zone3');
create tenant tpch_mysql resource_pool_list=('tpch_pool'), charset=utf8mb4, replica_num=3, zone_list('zone1', 'zone2', 'zone3'), primary_zone=RANDOM, locality='F@zone1,F@zone2,F@zone3' set variables ob_compatibility_mode='mysql', ob_tcp_invited_nodes='%';


今天有人值班吗


我个人的看法是,基于线程的计算模型,会更节约CPU,在高并发场景下可能CPU的使用情况会更可观。

你内存太小了,整台机器16g 内存, 完全不够用, 线上系统稳定运行最低配置是8c64g 的配置