美文网首页GreenPlum
greenplum扩展segment

greenplum扩展segment

作者: 长振 | 来源:发表于2018-06-05 17:29 被阅读0次

    greenplum的segment可以分为2类:

    • 各个数据节点上的seg
    • 数据节点内的seg
      单机上的seg增加,我们称之为“纵向扩展”,单机不变,通过增加机器,我们称之为“横向扩展”。
      扩展seg大致可分为2步:初始化seg;表重分布。
      其中横向扩展需要增加host机器数,并配置互联互通。

    横向扩展

    1、生成扩展配置文件

    #创建扩展目录
    mkdir /home/gpdata/gp5
    ...
    mkdir /home/gpdata/gp10
    #切换用户
    su gpadmin
    vim hosts_expand #需要扩展的机器
    gpexpand -f hosts_expand
    
    • 选择备份策略
    • 输入seg数量
    • 输入seg目录(目录需要提前手工创建)

    2、运行扩展脚本

    gpexpand -i gpexpand_inputfile_??? #上步生成的配置文件
    

    此步遇到个gp本身的bug,最后通过升级5.0到5.8得以解决。
    https://github.com/greenplum-db/gpdb/issues/4298

    3、重分布表

    gpexpand -d 时长or结束时间
    gpexpand -d 60:00:00 >gpexpand.log & #后台运行
    # 可通过命令查看分布进度
    select * from pg_stat_activity;
    

    查看类似alter table only 表名 with (reoganization=true) distributed by (分布键)

    4、检查分布情况

    select gp_segment_id,count(*) from 表名 group by 1
    

    纵向扩展

    相关文章

      网友评论

        本文标题:greenplum扩展segment

        本文链接:https://www.haomeiwen.com/subject/smlmsftx.html