Oushu Database 3.1.2新特性 (发布日期:2018年6月6日) -------------------------------------------------------------- Oushu Database 3.1.2版本比Oushu Database 3.1.1版本有如下新特性增强: * 新执行器新增bigint[]类型的&&、@>和<@操作。 * 增加hive协议,可以通过hawq直接在hive表中读取和插入数据,支持csv,text,orc格式。 .. list-table:: :widths: auto :header-rows: 1 * - 操作系统 - 版本 * - Redhat/Centos - 7.0 * - Redhat/Centos - 7.1 * - Redhat/Centos - 7.2 * - Redhat/Centos - 7.3 * - Redhat/Centos - 7.4 从3.1.1升级到3.1.2 ++++++++++++++++++++++++++ 1. 在master节点关闭hawq 3.1.1集群 :: sudo su gpadmin hawq stop cluster -a 2. 在所有hawq节点上备份 hawq3.1.1的设置 :: hawq ssh -f hostfile -e 'cp -rf $GPHOME/etc ~/' 3. 在每个hawq节点上安装hawq 3.1.2的yum源 3.1 系统包含avx指令请配置以下YUM源: :: hawq ssh -f hostfile -e 'sudo wget -O /etc/yum.repos.d/oushu-database.repo $获取的repo地址' hawq ssh -f hostfile -e 'sudo wget -O /etc/yum.repos.d/oushu-database-utils.repo $获取的repo地址' hawq ssh -f hostfile -e 'sudo yum makecache' 3.2 系统不包含avx指令请配置以下YUM源: :: hawq ssh -f hostfile -e 'sudo wget -O /etc/yum.repos.d/oushu-database.repo $获取的repo地址' hawq ssh -f hostfile -e 'sudo wget -O /etc/yum.repos.d/oushu-database-utils.repo $获取的repo地址' hawq ssh -f hostfile -e 'sudo yum makecache' 4. 在每个hawq节点上安装hawq 3.1.2的rpm包 :: hawq ssh -f hostfile -e 'sudo yum remove -y hawq' sudo yum install -y hawq hawq ssh -f hostfile -e 'sudo yum install -y hawq' 5. 配置每个hawq节点 :: hawq ssh -f hostfile -e 'cp -rf ~/etc/* $GPHOME/etc/' 6. 安装HIVE 1) 在master节点上配置集群到升级模式 :: hawq start cluster hawq config -c upgrade_mode -v on --skipvalidation hawq restart cluster -a 2) 在master节点上的template1库的pg_catalog.pg_proc表上安装HIVE,在$GPHOME/etc/hawq-site.xml文件中找到$hawq_master_address_port的值,用其实际值替换命令中的$hawq_master_address_port :: PGOPTIONS='-c gp_session_role=utility' psql -a -p $hawq_master_address_port -d template1 -f $GPHOME/share/postgresql/hive_install.sql > hive_install.out 2>&1 3) 在每个segment节点的template1库的pg_catalog.pg_proc表上安装HIVE,在$GPHOME/etc/hawq-site.xml文件中找到$hawq_segment_address_port的值,用其实际值替换命令中的$hawq_segment_address_port :: source /usr/local/hawq/greenplum_path.sh PGOPTIONS='-c gp_session_role=utility' psql -a -p $hawq_segment_address_port -d template1 -f $GPHOME/share/postgresql/hive_install.sql > hive_install.out 2>&1 4) 在master节点上将集群配置为普通模式 :: hawq config -c upgrade_mode -v off --skipvalidation hawq restart cluster -a 5) 在master节点获取数据库用户名称 :: psql -a -d template1 -c "select datname from pg_database where datname not in ('hcatalog', 'template0', 'template1') order by datname;" 6) 在master节点的每个数据库的pg_catalog.pg_proc表中安装HIVE :: psql -a -d $user_database_name -f $GPHOME/share/postgresql/hive_install.sql > hive_install.out 2>&1 7) 在master节点重启集群 :: hawq restart cluster -a