首页 > 数据库 >hhdb数据库介绍(9-20)

hhdb数据库介绍(9-20)

时间:2024-11-29 11:25:40浏览次数:11  
标签:20 是否 NIOExecutor 配置 参数值 参数 hhdb 默认值 数据库

计算节点参数说明

计算节点使用过程中,维护了许多系统配置参数,本文描述这些参数如何使用以及对功能带来什么影响。每个参数都有一个默认值,可以在服务启动时在server.xml配置文件中修改,也可以登录管理平台在参数配置页面进行修改。这些参数大多数可以在运行时使用动态加载(reload @@config)操作动态更改,无需停止并重新启动服务。部分参数也可以使用set方式修改。

adaptiveProcessor

参数说明:

Property Value
参数值 adaptiveProcessor
是否可见 隐藏不显示
参数说明 控制启动服务时是否自动适配
默认值 true
Reload是否生效

参数设置:

server.xml中adaptiveProcessor参数配置 如下配置:

<property name="adaptiveProcessor">true</property><!--控制启动服务时是否自动适配-->

adaptiveProcessor参数默认为true,即开启自动适配,包括processor、processorExecutor和timerExecutor值都将自动适配。为false时则关闭自动适配。

参数作用:

开启自动适配后,计算节点会根据当前服务器配置和自动适配规则设定参数,即使在server.xml中对以下参数值进行配置,也不会生效,仍然会按照适配规则设置参数值。

<property name="processors">16</property><!--处理器数-->
<property name="processorExecutor">4</property><!--各处理器线程数-->
<property name="timerExecutor">4</property><!--定时器线程数-->

登录3325端口,执行show @@threadpool命令,查看当前processor、processorExecutor和timerExecutor值。例如:

mysql> show @@threadpool;

+-----------------+-----------+--------------+-----------------+----------------+------------+
| name            | pool_size | active_count | task_queue_size | completed_task | total_task |
+-----------------+-----------+--------------+-----------------+----------------+------------+
| TimerExecutor   | 4         | 0            | 15              | 50376807       | 50376822   |
| $NIOExecutor-0- | 4         | 0            | 0               | 99254          | 99254      |
| $NIOExecutor-1- | 4         | 1            | 0               | 81195          | 81196      |
| $NIOExecutor-2- | 4         | 2            | 0               | 140921         | 140923     |
| $NIOExecutor-3- | 4         | 1            | 0               | 48218          | 48219      |
| $NIOExecutor-4- | 4         | 0            | 0               | 39073          | 39073      |
| $NIOExecutor-5- | 4         | 0            | 0               | 31656          | 31656      |
| $NIOExecutor-6- | 4         | 0            | 0               | 167007         | 167007     |
| $NIOExecutor-7- | 4         | 1            | 0               | 27221          | 27222      |
+-----------------+-----------+--------------+-----------------+----------------+------------+
9 rows in set (0.00 sec)

$NIOExecutor有0到7,表示当前processor=8,对应的pool_size为4,表示processorExecutor=4,TimerExecutor对应的pool_size为4,表示timerExecutor=4。

cat /proc/cpuinfo| grep "processor"| wc -l

注意
计算节点在刚刚启动时并不会生成所有线程,而是用多少创建多少,因此执行show @@threadpool;命令,可能会显示如下图:

mysql> show @@threadpool;

+-----------------+-----------+--------------+-----------------+----------------+------------+
| name            | pool_size | active_count | task_queue_size | completed_task | total_task |
+-----------------+-----------+--------------+-----------------+----------------+------------+
| TimerExecutor   | 4         | 0            | 14              | 73720          | 73734      |
| $NIOExecutor-0- | 1         | 0            | 0               | 1              | 1          |
| $NIOExecutor-1- | 1         | 0            | 0               | 1              | 1          |
| $NIOExecutor-2- | 1         | 0            | 0               | 1              | 1          |
| $NIOExecutor-3- | 1         | 0            | 0               | 1              | 1          |
| $NIOExecutor-4- | 2         | 0            | 0               | 2              | 2          |
| $NIOExecutor-5- | 5         | 0            | 0               | 5              | 5          |
| $NIOExecutor-6- | 1         | 0            | 0               | 1              | 1          |
| $NIOExecutor-7- | 1         | 1            | 0               | 1              | 1          |
+-----------------+-----------+--------------+-----------------+----------------+------------+
9 rows in set (0.00 sec)

直到计算节点受到足够压力时才会达到自动适配的值,也就是说,自动适配的值为最大值。

allowMajorityElectionCount

参数说明:

Property Value
参数值 allowMajorityElectionCount
是否可见
参数说明 此参数控制计算节点在特定条件下允许已下线节点重新参与选举的机制
默认值 0
最小值 0
最大值 200

参数设置:

<property name="allowMajorityElectionCount">0</property><!-- 如果在一分钟内,计算节点收到的KEEP_ALIVE大于该参数,同时收到的集群成员信息 >= ((集群成员总数/2)+1)时将允许已经下线的计算节点重新发起选举,默认0,不开启此机制-->

参数作用:

如果在一分钟内,计算节点收到的KEEP_ALIVE大于该参数,同时收到的集群成员信息 >= ((集群成员总数/2)+1)时,将允许已经下线的计算节点重新发起选举,默认0,不开启此机制

allowRCWithoutReadConsistentInXA

参数说明:

Property Value
参数值 allowRCWithoutReadConsistentInXA
是否可见
参数说明 允许XA模式下使用不保证读写强一致性的RC隔离级别
默认值 0
Reload是否生效

参数设置:

server.xml中allowRCWithoutReadConsistentInXA参数配置 如下配置:

<property name="allowRCWithoutReadConsistentInXA">0</property><!-- 是否允许XA模式下使用不保证读写强一致性的RC隔离级别,0为是,1为否 -->

参数作用:

默认XA模式下只能选择REPEATABLE READ、SERIALIZABLE两种隔离级别。

若参数allowRCWithoutReadConsistentInXA设置成0,XA模式下允许使用保证事务读写一致性的READ COMMITTED隔离级别(但须注意原SQL涉及跨库查询被拆分多条语句多次查询时,会不停读到最新事务,故该模式下需尽量使用单库查询) ;若参数allowRCWithoutReadConsistentInXA设置成1,也允许XA模式下使用READ COMMITTED隔离级别,但是不能保证事务读写一致性,隔离级别实质介于READ COMMITED和READ UNCOMMITED之间,其性能优于设置成0的情况,且启动和同步加载时时会有日志提示,如下:

2020-03-12 15:36:03.719 [WARN][INIT][main] cn.hotpu.hotdb.a(519) -- Note that the READ COMMITTED isolation level in XA mode is essentially between READ COMMITTED and READ UNCOMMITTED at this time, which does not guarantee strong consistency of reading and writing.

allowReadConsistentInReadOnly

参数说明:

Property Value
参数值 allowReadConsistentInReadOnly
是否可见
参数说明 开启实例级别只读后,是否保证读一致性
默认值 false
Reload是否生效

参数设置:

server.xml中allowReadConsistentInReadOnly参数配置:

<property name="allowReadConsistentInReadOnly">0</property><!--开启只读后是否保证读一致性,默认 false(consistent reading in instance readonly or not, default false) -->

参数作用:

控制开启实例级别只读后,是否保证读一致性。默认为0,不保证读一致性;若为1,则在多计算节点集群模式下enableListener和enableXA参数启用且部署了监听组件后,可保证读一致性。

autoReloadWhenSyncFailed

参数说明:

Property Value
参数值 autoReloadWhenSyncFailed
是否可见
参数说明 集群间配置同步失败时是否触发自动的动态加载
默认值 treu

参数设置:

<property name="autoReloadWhenSyncFailed">0</property><!-- 集群间配置同步失败时是否触发自动的动态加载,默认true-->

autoIncrement

参数说明:

Property Value
参数值 autoIncrement
是否可见
参数说明 全局自增序列模式。
默认值 1
Reload是否生效

参数作用:

控制表的自增序列是否可以全局自增,该参数设置范围为:0、1、2;

autocompleteOrder

参数说明:

Property Value
参数值 autocompleteOrder
是否可见
参数说明 自动为带limit的语句补齐排序字段
默认值 true
Reload是否生效

参数设置:

<property name="autocompleteOrder">true</property><!--   是否自动为带limit的语句补齐排序字段(Auto-complete order columns for query with limit)   -->

参数作用:

autocompleteOrder默认自动为带limit的语句补齐排序的字段,设置为false时,不带排序字段。 参数为false时,计算节点下发带limit的语句时,不添加排序字段:
在这里插入图片描述
参数为true时,计算节点下发带limit的语句时,自动添加排序字段:
在这里插入图片描述

badConnAfterContinueGet

参数说明:

Property Value
参数值 badConnAfterContinueGet
是否可见
参数说明 是否继续获取连接
默认值 true
Reload是否生效

参数设置:

<property name="badConnAfterContinueGet">true</property><!-- 是否继续获取连接 true 为继续获取连接,false 为返回null,不继续获取,由外层创建新连接或其他操作 -->

参数作用:

计算节点从连接池获取连接后时,如果进行了连接有效性检验并获取到了一个失效的连接,当该参数为true,连接池将继续获取可用连接,为false,连接池将返回null,由外部代码逻辑继续进行处理。

badConnAfterFastCheckAllIdle

参数说明:

Property Value
参数值 badConnAfterFastCheckAllIdle
是否可见
参数说明 当获取坏的后端连接时,是否快速检测所有空闲连接
默认值 true
Reload是否生效

参数设置:

<property name="badConnAfterFastCheckAllIdle">true</property><!-- 当获取坏的后端连接时,是否快速检测所有空闲连接,true为检测,false为不检测,默认为true-->

参数作用:

当获取到坏的后端连接,计算节点连接池是否快速检测全部的空闲连接。

bakUrl & bakUsername & bakPassword

参数说明:

Property Value
参数值 bakUrl
是否可见
参数说明 从配置库地址
默认值 jdbcmysql//127.0.0.1:3306/hotdb_config
Reload是否生效
Property Value
参数值 bakUsername
是否可见
参数说明 从配置库用户名
默认值 hotdb_config
Reload是否生效
Property Value
参数值 bakPassword
是否可见
参数说明 从配置库密码
默认值 DRDS_config@2013
Reload是否生效

参数作用:

bakUrl和bakUsername以及bakPassword属于配套参数,用于配置库高可用功能。若使用配置库高可用,则需要设置为对应从配置库的信息且保证主从配置库实例的复制关系正常,且互为主备,当主配置库发生故障时会自动切换到从配置库。

切换过程中,若存在复制延迟,会等待从配置库复制延迟追上后切换并提供服务。

若不需要主备配置库,则这里配置为跟主配置库信息一致或不配置从配置库即可。

<property name="bakUrl">jdbc:mysql://192.168.210.31:3306/hotdb_config</property><!-- 从配置库地址,需指定配置库服务所在的真实IP地址 -->
<property name="bakUsername">hotdb_config</property><!-- 从配置库用户名 -->
<property name="bakPassword">DRDS_config@2013</property><!-- 从配置库密码 -->

当配置库因主库故障发生切换后,主库恢复正常且检测过数据主从一致,此时可恢复主备配置库重新到可切换状态,需要将配置库里的houdb_config_info表里k字段为hotdb_master_config_status这一行的v值从0更新为1,并在管理端执行reload @@config,才会重新使用主配置库

mysql> select * from hotdb_config_infoG

***************************1.row**************************
k: hotdb_master_config_status
v: 1
description: NULL

bnlUsersOnly

参数说明:

Property Value
参数值 bnlUsersOnly
是否可见
参数说明 控制是否仅bnlUsers优先选择BNL算法进行JOIN
默认值 false
Reload是否生效

参数设置:

server.xml中bnlUsersOnly参数配置,如下配置:

<property name="bnlUsersOnly">false</property><!-- 仅允许BNL用户优先选择BNL算法进行JOIN(only bnlUsers are allowed to choose BNL algorithm for JOIN) -->

参数作用:

bnlUsersOnly参数为隐藏参数,默认为false。开启后对于JOIN逻辑,优先使用BNL算法进行,BNL用户的配置方式如下:

  1. 创建计算节点用户,动态加载。
  2. 计算节点配置库执行以下SQL:
insert into hotdb_config_info values('bnl_users','bnl@%','BNL用户列表');  

注意
'bnl_users'和'BNL用户列表'为固定信息,只需修改'bnl@%'为计算节点用户即可。

  1. 开启bnlUsersOnly参数为true,并进行动态加载。

标签:20,是否,NIOExecutor,配置,参数值,参数,hhdb,默认值,数据库
From: https://www.cnblogs.com/henghuixinda/p/18576179

相关文章

  • 【喜报】上海斯歌BPM平台解决方案上榜“2024年上海市优秀信创解决方案”
     近日,由上海市经济信息化委会同上海市委网信办、上海市密码管理局、上海市国资委主办的“2024年上海市优秀信创解决方案”征集遴选活动圆满落幕,上海斯歌的“基于微服务BPM流程管理平台解决方案”成功上榜入选! 为激发创新活力,发挥标杆作用,为行业信创领域用户提供选型参考,促......
  • hhdb数据库介绍(9-21)
    计算节点参数说明checkClusterBeforeDnSwitch参数说明:PropertyValue参数值checkClusterBeforeDnSwitch是否可见否参数说明集群模式下触发数据节点高可用切换时,是否先判断集群所有成员正常再进行数据节点切换默认值falseReload是否生效是参数设置......
  • hhdb数据库介绍(9-22)
    计算节点特殊说明dataNodeIdleCheckPeriod参数说明:PropertyValue参数值dataNodeIdleCheckPeriod是否可见是参数说明数据节点默认空闲检查时间(秒)默认值120最小值1最大值3600Reload是否生效Y参数设置:<propertyname="dataNodeIdleCheckPe......
  • hhdb数据库介绍(9-23)
    计算节点参数说明enableCursor参数说明:PropertyValue参数值enableCursor是否可见是参数说明是否允许PREPARE语句通过CURSOR获取数据默认值falseReload是否生效是参数设置:server.xml的enableCursor参数:<propertyname="enableCursor">false</pr......
  • hhdb数据库介绍(9-24)
    计算节点参数说明failoverAutoresetslave参数说明:PropertyValue参数值failoverAutoresetslave是否可见是参数说明故障切换时,是否自动重置主从复制关系默认值falseReload是否生效否参数设置:<propertyname="failoverAutoresetslave">false</prop......
  • 小记 ?—2024.11.29
    上一次写小记已是很久之前的事了。记得那篇小记被同学瞥见后,我还被调侃了许久。彼时的我,只是随手记录,却未曾想会有这样的波澜。这次写小记的念头,其实周三(2024.11.27)就萌生了。只是,拖延成了惯性,一直到今天(2024.11.29),才终于动笔。尽管早已在心中勾勒了无数遍,但提笔时依然不知从何落......
  • hhdb数据库介绍(9-16)
    SQL语法支持事务管理与锁语句语句类型事务语句语句参数状态说明事务管理STARTTRANSACTION无参数支持WITHCONSISTENTSNAPSHOT支持READWRITE支持READONLY支持BEGIN支持COMMIT支持COMMIT[AND[NO]CHAIN][[NO]RELE......
  • P4408 [NOI2003] 逃学的小孩 —— 树的直径
    [NOI2003]逃学的小孩题目描述Chris家的电话铃响起了,里面传出了Chris的老师焦急的声音:“喂,是Chris的家长吗?你们的孩子又没来上课,不想参加考试了吗?”一听说要考试,Chris的父母就心急如焚,他们决定在尽量短的时间内找到Chris。他们告诉Chris的老师:“根据以往的经验,Chris现......
  • hhdb数据库介绍(9-17)
    SQL语法支持其他语句表维护语句语句类型SQL语句支持状态说明表维护语句ANALYZETABLE禁用CHECKTABLE禁用CHECKSUMTABLE禁用OPTIMIZETABLE禁用REPAIRTABLE禁用视图相关语句语句类型SQL语句支持状态说明视图相关语句......
  • hhdb数据库介绍(9-18)
    SQL语法支持计算节点语法特殊功能默认分片规则建表在使用关系集群数据库时,需要先将表的分片规则信息配置好之后才能创建表。实际使用过程中,用户可能对关系集群数据库及分片规则不了解,这就需要一种能直接过渡到HHDBServer的方案,该方案能根据逻辑库关联的分片节点数量自动对表生......