Greenplum扩容
Greenplum支持原有主机扩展Segment个数、新增主机、和混合扩展
本文以在已有机器上扩展节点为例
1、可按照hostname:address:port:fselocation:dbid:content:preferred_role:replication_port来配置扩展文件
[gpadmin@hadoop-test1 conf]# vi /home/sdk/gpadmin/conf/new_segments
#hostname:address:port:fselocation:dbid:content:preferred_role:replication_port hadoop-test2:hadoop-test2:31000:/home/sdk/gpadmin/gpdata/gpdatap3:10:4:p:35002 hadoop-test3:hadoop-test3:31000:/home/sdk/gpadmin/gpdata/gpdatam3:11:4:m:35002 hadoop-test2:hadoop-test2:32000:/home/sdk/gpadmin/gpdata/gpdatap4:12:5:p:35003 hadoop-test3:hadoop-test3:32000:/home/sdk/gpadmin/gpdata/gpdatam4:13:5:m:35003
2、执行命令
gpexpand -i /home/sdk/gpadmin/conf/new_segments
扩充4个节点后变成了
新扩充的节点并不会立即有数据分布上去,可以查看表分布情况和重分布计划
testDB=# select * from gpexpand.status; testDB=# select * from gpexpand.status_detail ;
testDB=# select * from gpexpand.expansion_progress ;
执行重分布命令可让数据重新分布到新扩容的节点上
gpexpand -a -d 1:00:00 -D testDB -S -t /tmp -v -n 1
抽取一个重分布表,查看数据分布情况。可以看到数据已经分布到新节点了。
testjava=# select gp_segment_id,count(*) from user_wide_tmp group by gp_segment_id;
如果配置文件或其他原因导致扩展失败,可进入限制模式进行回滚
1、gpstart -R 2、gpexpand -r -D testDB 3、gpstart