返回首页

gbase数据、南大通用产品文档:GBase8adistribution 命令

更新日期:2024年09月11日

功能
安装完集群,生成distribution 时,需要使用该命令进行操作来制定节点分片的分布
策略。

GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
164
注意

此命令需要切换到dbaUser 用户下,才能正确执行。若使用其它用户执行
生成distribution 命令,将提示用户切换到dbaUser 用户执行该命令,并报
错退出;

若使用单VC 模式
(兼容模式)
安装集群,
安装完成后直接生成distribution,
会将所有free node 加入到默认vc 中;

若在未生成distribution 时扩容新的gnode 节点,扩容前执行的创建数据库
用户和修改数据库密码操作,在新扩容的gnode 节点不生效,需在扩容后
重新创建数据库用户和修改密码操作。
distribution 配置有负载均衡模式、高可用模式和自定义分片分布模式(自定义分布
模式)三种方式,若不设置默认为负载均衡模式。
负载均衡模式
配置pattern 1 表示使用负载均衡模式,
此模式下gcChangeInfo.xml 中的每个rack 中
的节点为一组,每个rack 中的节点上主分片的备份分片1 存放到gcChangeInfo.xml
中下一个rack 中的节点上,备份分片2 存放到gcChangeInfo.xml 中上一个rack 中
的节点上。gcChangeInfo.xml 中的第一个rack 的上一个rack 为最后一个rack,最后
一个rack 的下一个rack 为第一个rack。
说明
使用负载均衡模式生成distribution

每个节点主分片数(即参数p)必须小于每个rack 的节点数,以此来保证
备份分片分布均匀。

每个rack 包含的节点数尽可能相同,若gcChangeInfo.xml 文件中有多于1
个rack 的节点数与其它rack 不同,
gcadmin 将会提示用户系统性能可能会
下降,需用户确认后才能生成distribution。
高可用模式
pattern 2 模式为高可用模式,
此模式下生成的distribution 将每个data 节点的备份分
片1 存放到下一个data 节点上,
备份分片2 存放到上一个data 节点上。
使用高可用
模式时,配置文件gcChangeInfo.xml 中仅需一个rack 即可,即使有多个rack 也会
作为一个rack 处理。
自定义分片分布模式
自定义分片分布模式需手动编写一个xml 文件,
用来配置distribution 分片分布信息,

GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
165
即在文件中指明每个分片的主备分片存放的对应节点。使用该方式配置distribution
的分布方式无需输入参数p,d 和pattern。
语法
gcadmin distribution

[d num] [extension] [pattern
1|2][db_user user_name] [db_pwd password] [vc vc_name]
表4- 11 参数说明
参数名称


gcChangeInfo.xml
生成distribution 的gnode 节点信息文件。集群安装成功后,会在
安装包所在目录下生成一个名为gcChangeInfo.xml 的示例文件。
该文件为xml 格式,其根标签为,描述生成distribution
的数据节点信息;子标签为,即机架,描述的是机架与
gnode 节点对应关系。安装后生成的gcChangeInfo.xml 中仅有一

其中包含集群中的所有数据节点信息,
在使用pattern 1
模式生成distribution 时,
可按机器部署情况插入多个标签,
将数据节点信息插入到对应的标签下。
p num
每个数据节点存放的分片数量,最小值为1,p 值乘数据节点数
不大于65535,即集群总分片数不大于65535,否则gcadmin 将
报错退出。
d num
每个分片的备份数量,取值为0,1 或2。当取值为0 时,需要用
户确认;若不输入参数d,默认值为1。当节点数无法满足备份
分片落点时,会报错。
pattern 1|2
生成distribution 所使用模式,number 取值为1 或2,pattern 1 为
负载均衡模式,pattern 2 为高可用模式。若不输入参数pattern,
默认使用pattern 1 生成distribution。
extension
生成的新distribution 将原有分片尽可能分布到原节点上。
db_user
user_name
扩容生成新distribution 时需传入数据库用户名。可不指定,默认
数据库用户为root。
扩容后创建新虚拟集群,在新生成虚拟集群中生成该虚拟集群的
distribution 时需传入该参数。
db_pwd password
如果db_user user_name 指定用户的密码不为空,生成新
distribution 时需要在执行命令时传入该用户的密码。密码中的特
殊字符需要加转义字符。密码为空时不需传入该参数,只需传入

GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
166
参数名称


数据库用户名。
vc vc_name
指定生成distribution 的虚拟集群名称。
如果集群只有一个vc,

成distribution 不需要指定vcname
示例
示例1:负载均衡模式设置。
在安装好集群后,在执行安装操作的节点上,安装包目录下会生成一个包含所有
Data 节点信息的gcChangeInfo.xml 文件,如下所示:
$ cat gcChangeInfo.xml











根据实际机架和机器部署情况,在该文件中插入标签,如下所示:















使用负载均衡模式和修改后的gcChangeInfo.xml 文件生成distribution 的命令参考如
下:
$ gcadmin distribution gcChangeInfo.xml p 1 d 2 pattern 1
gcadmin generate distribution ...
NOTE: node [192.168.153.129] is coordinator node, it shall be data node too

GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
167
NOTE: node [192.168.153.130] is coordinator node, it shall be data node too
gcadmin generate distribution successful
生成distribution 后,
可使用gcadmin showdistribution 查看数据主备节点的分布信息,
如下所示:
$ gcadmin showdistribution
Distribution ID: 1 | State: new | Total segment num: 6
Primary Segment Node IP
Segment ID
Duplicate
Segment node IP
===========================================================
=========================
|

背景信息
在ANALYZE | ANALYSE 和VACUUM 语句执行过程中,系统维护一个内部的记数器,
跟踪所执行的各种I/O 操作的近似开销。
如果积累的开销达到了vacuum_cost_limit 声明的限
制,则执行这个操作的进程将睡眠vacuum_cost_delay 指定的时间。然后它会重置记数器然
后继续执行。
这个特性是缺省关闭的。
如需开启,
需要把vacuum_cost_delay 变量设置为一个非零值。

建表时指定表空间
功能说明
创建表时可以指定要使用的TABLESPACE,
不做指定则使用库的默认表空间。

区表作为一个表来看待,只能指定一个tablespace,不支持为不同分区指定不同
tablespace。
语法格式
CREATE TABLE [[vc_name.]database_name.]table_name (column_def...) TAB
LESPASCE=tablespace_name;
表5- 65 参数说明
参数名称


vc_name
虚拟集群名称,可选项。
database_name
数据库名称,可选项。
table_name
表名称。
tablespace_name
表空间名称。
说明

CREATE TABLE …LIKE…不支持指定表空间;

CREATE TABLE …AS SELECT…支持指定表空间。