gpfdist是Greenplum数据库并行文件分发程序。对于可读的外部表和 gpload数据导入将外部表文件并行提供给所有Greenplum数据节点。可写外部表使用它来并行接受Greenplum数据库段的输出流并将其写出到文件中。
gpfdist一般都是部署在ETL的主机上进行对数据文件进行写入或者读取操作,而不是安装在Greenplum数据库的主机上。
总体来说,使用gpfdist的好处是确保在读取或写入外部表时具有最大的并行度,也就是充分的利用资源,从而提供最佳性能,并且更易于管理外部表。
安装准备工作:
- 一台ETL主机
- greenplum-clients-5.21.0-rhel7-x86_64.zip
- greenplum-loaders-5.21.0-rhel7-x86_64.zip
- ETL主机的root使用权限
客户端安装
首先将两个压缩包放到ETL主机的/opt/soft目录下,通过ftp上传即可,如图所示:
解压clients.zip并执行安装程序,命令为:
[root@wp2020 soft]# unzip greenplum-clients-5.21.0-rhel7-x86_64.zip
执行命令为:
[root@wp2020 soft]# ./greenplum-clients-5.21.0-rhel7-x86_64.bin
执行命令后出现关于客户端的英文解释及用法:
多次按空格键之后进入详细安装位置
出现Do you accept the Pivotal Clients license agreement? [yes | no],在光标处输入yes即可进入下一步,如果需要退出输入no即可,如图所示:
输入yes之后,要确认client的默认安装目录是否为/usr/local/greenplum-clients-5.21.0,如果默认则按回车(enter)进入下一步,如果想要指定目录,可以输入指定的安装目录
这一步是要确认将客户端内容安装到/usr/local/greenplum-clients-5.21.0目录下,输入yes即可进入下一步:
下面将会检查主机是否存在默认目录,不存在将进行默认目录创建,如图所示:
输入yes后,开始创建默认目录,并将文件导入到默认目录中,如果出现Installation complete字样表示client安装完成,默认目录为/usr/local/greenplum-clients-5.21.0
到对应目录查看就会看到新创建的目录,如图所示:
至此greenplum-clients-5.21.0-rhel7-x86_64.zip即安装完成,是不是非常简单,下面就是按照同样的步骤安装greenplum-loaders-5.21.0-rhel7-x86_64.zip即可,安装完成如图所示:
安装完成后到默认目录检查如图所示:
表示这两个文件全部安装完成,下面开始配置环境变量。
配置环境变量
因为gpfdist一般部署在ETL主机上,所以相对使用的主机用户也是普通用户,而非root用户,所以下面首先创建一个etl用户并设置密码,命令如下:
[root@wp2020 local]# useradd etl [root@wp2020 local]# passwd etl
然后切换到etl用户下进行配置:
[root@wp2020 local]# su - etl
主要编辑两个环境变量文件,分别是bashrc和bash_profile
[etl@wp2020 ~]$ vi ~/.bashrc
添加以下两行内容,内容可以在刚刚创建的目录下找到
source /usr/local/greenplum-loaders-5.21.0/greenplum_loaders_path.sh source /usr/local/greenplum-clients-5.21.0/greenplum_clients_path.sh
如图所示:
保存之后执行source命令
[etl@wp2020 ~]$ source ~/.bashrc
继续编辑bash_profile文件
[etl@wp2020 ~]$ vi ~/.bash_profile
添加内容如图所示:
保存后进行一下source
[etl@wp2020 ~]$ source ~/.bash_profile
至此安装客户端环节结束。
gpfdist使用
下面就要启动gpfdist服务
[etl@wp2020 ~]$ gpfdist -t 600 -w 600 -d /data -p 9091 -l /data/log/log1
代表前端执行成功,如果想要放到后台执行,可执行以下命令
[etl@wp2020 ~]$ nohup gpfdist -t 600 -w 600 -d /data -p 9092 -l /data/log/log1 &
常用命令解释
-d | 指定的目录,gpfdist将为可读的外部表提供文件,或为可写的外部表创建输出文件。如果未指定,则默认为当前目录。 |
-l | 指定日志文件,要记录标准输出消息的标准路径和日志文件名。 |
-p | 指定数据库访问的端口,HTTP端口 gpfdist将提供文件。默认为8080,本次设定为9091 |
-t | 超时设置,设置Greenplum数据库建立与数据库的连接所允许的时间 gpfdist处理。默认值为5秒。允许值为2到7200秒(2小时),一般常规设置300-1200即可,看数据量大小情况而定。 |
-m | 行长度设置,设置允许的最大数据行长度(以字节为单位)。默认值为32768。当用户数据包含非常宽的行时。否则不应使用它,因为它会增加资源分配。有效范围是32K至256MB。 |
-w | 时间设置,设置Greenplum数据库在关闭目标文件(如命名管道)之前延迟的秒数。默认值为0,无延迟。最大值是7200秒(2小时)。 |
评论