OB-QPS询问

【 测试环境 】
【 OB 】
【 4.2.0 】
【问题描述】
想问一下ocp-express监控页面显示的qps是什么逻辑,我同时压测几万个sql,也只显示qps几百,
另外通过sysbench压测得到的几十万QPS,对应的映射逻辑是什么呢,每秒有几十万的sql请求数据库吗

【附件】

表示平均每秒处理 SQL 语句数
https://www.oceanbase.com/docs/common-ocp-1000000000348794

表示服务端处理的请求数

这个请求指的不是SQL数么?

就是同一时间发往ob sql的数量

发现一个现象,root server所在的那台机器qps监控明显比其余高,这个现象正常吗

需要看当前表分区的leader是不是都在rootserver上,如果leader都在同一个节点,那么qps高是正常的

那这样会不会造成不均衡,假如是1:1:1的模式的话,有一台会很忙,其余两台都很空

可以设置租户的primaryzone为random,这样表如果有多个分区的话,会将多个分区打散在多个节点上,这样三台机器的负载会均衡

是设置的random呀,但是现在是一台qps打到了7000 其余两台都是200

表是分区表吗

用的MySQL语法,应该没有分区这个概念吧

表结构方便贴一下吗

#建表语句
CREATE TABLE tablename (
column1 bigint(20) unsigned NOT NULL AUTO_INCREMENT,
column2 bigint(20) unsigned NOT NULL DEFAULT ‘0’,
column3 bigint(20) NOT NULL DEFAULT ‘0’,
column4 bigint(20) unsigned NOT NULL DEFAULT ‘0’,
column5 bigint(20) NOT NULL DEFAULT ‘0’,
column6 tinyint(3) NOT NULL DEFAULT ‘-1’,
column7 datetime NOT NULL,
column8 datetime NOT NULL,
column9 datetime NOT NULL,
column10 datetime NOT NULL,
column11 datetime NOT NULL,
PRIMARY KEY (column1),
UNIQUE KEY xxx (column3,column4),
KEY column7 (column7),
KEY column8 (column8)
) ENGINE=InnoDB AUTO_INCREMENT=3381 DEFAULT CHARSET=utf8mb4;

这个是非分区表,非分区表只拥有一个主副本,建议改成分区表形式
https://www.oceanbase.com/docs/community-observer-cn-10000000000901489#16-title-示例%202%20修改表分区

比如改成三个分区的分区表,且primaryzone为random形式,则每个分区的主副本会分别处于1:1:1集群的三个节点上。

那这样从MySQL迁移过来的都无法用啊,这个影响很大啊

为什么没法用呢?非分区表一样可以用的,只是改成分区表对性能有优化

mysql是有分区概念的

嗯嗯,就是奇怪为啥多个server负载不均衡。

这个有办法吗,理论上三副本应该是均衡压力的才对吧,而且我用sysbench压测压力就很均衡