首页 > 数据库 > > 通过外表并行导入-安装配置和启动GDS
GaussDB 200提供了数据服务工具GDS来帮助分发待导入的用户数据及实现数据的高速导入。GDS需部署到数据服务器上。
数据量大,数据存储在多个服务器上时,在每个数据服务器上安装配置、启动GDS后,各服务器上的数据可以并行入库。GDS在各台数据服务器上的安装配置和启动方法相同,本节以一台服务器为例进行说明。
鲲鹏平台:
因此请勿使用历史版本的GDS进行导入。数据库版本升级后,请按照操作步骤中的办法下载新版本的GDS进行安装配置和启动。在导入导出开始时,GaussDB 200也会进行两端的版本一致性检测,不一致时会打屏显示报错信息并终止对应操作。
GDS的版本号的查看办法为:在GDS工具的解压目录下执行如下命令。
gds -V数据库版本的查看办法为:连接数据库后,执行如下SQL命令查看。
SELECT version();GDS所在的数据服务器必须按照推荐的操作系统以及通信参数进行配置,与集群的配置参数保持一致,确保GDS数据服务器与集群通信正常,避免发生网络断连等问题,影响业务的正常执行。
gs_check -i CheckSysParams -L根据提示,对与期望值不匹配参数进行修改,再次执行上述命令进行验证。
假设遇到提示信息“Warning reason: variable 'net.ipv4.tcp_retries1' RealValue '3' ExpectedValue '5'.”,则使用如下命令:
vim /etc/sysctl.conf //设置参数net.ipv4.tcp_retries1=5
sysctl -p //使参数生效
mkdir -p /opt/bin将GDS工具包上传至上一步所创建的目录中。
以上传SUSE Linux版本的工具包为例 ,将软件安装包中的GDS工具包“GaussDB-Kernel-V300R002C00-SUSE11-64bit-Gds.tar.gz”上传至上一步所创建的目录中。
GaussDB 200预置了这些证书,放置在了数据目录${BIGDATA_DATA_HOME}/share/sslcert/gds下。请下载并上传。
cd /opt/bin
tar -zxvf GaussDB-Kernel-V300R002C00-SUSE11-64bit-Gds.tar.gz
groupadd gdsgrp
useradd -g gdsgrp gds_user
chown -R gds_user:gdsgrp /opt/bin/gds
chown -R gds_user:gdsgrp /input_data
su - gds_user
gds -d dir -p ip:port -H address_string -l log_file -D -t worker_num示例:
/opt/bin/gds/gds -d /input_data/ -p 192.168.0.90:5000 -H 10.10.0.1/24 -l /opt/bin/gds/gds_log.txt -D -t 2使用SSL加密方式传输数据的情况下,启动GDS。
gds -d dir -p ip:port -H address_string -l log_file -D
-t worker_num --enable-ssl --ssl-dir Cert_file
示例:
/opt/bin/gds/gds -d /input_data/ -p 192.168.0.90:5000 -H 10.10.0.1/24 -l /opt/bin/gds/gds_log.txt -D --enable-ssl --ssl-dir /opt/bin/命令中的斜体部分请根据实际替换。
GDS是根据导入事务并发数来决定服务运行线程数的。也就是说即使启动GDS时设置了多线程,也并不会加速单个导入事务。未做过人为事务处理时,一条INSERT语句就是一个导入事务。
vim /opt/bin/gds/config/gds.conf示例:
配置“gds.conf”文件如下:
<?xml version="1.0"?>
<config>
<gds name="gds1" ip="192.168.0.90" port="5000" data_dir="/input_data/" err_dir="/err" data_seg="100MB" err_seg="100MB" log_file="/log/gds_log.txt" host="10.10.0.1/24" daemon='true' recursive="true" parallel="32"></gds>
</config>
配置文件信息如下:
python gds_ctl.py start示例:
cd /opt/bin/gds
python gds_ctl.py start
Start GDS gds1 [OK]
gds [options]:
-d dir Set data directory.
-p port Set GDS listening port.
ip:port Set GDS listening ip address and port.
-l log_file Set log file.
-H secure_ip_range
Set secure IP checklist in CIDR notation. Required for GDS to start.
-e dir Set error log directory.
-E size Set size of per error log segment.( < si ze < 1TB)
-S size Set size of data segment.(1MB < size < 10 TB)
-t worker_num Set number of worker thread in multi-thre ad mode, the upper limit is 32. If withou t setting, the default value is 1.
-s status_file Enable GDS status report.
-D Run the GDS as a daemon process.
-r Read the working directory recursively.
-h Display usage.属性 | 说明 | 取值范围 |
|---|---|---|
name | 标识名。 | - |
ip | 监听ip地址。 | IP需为合法IP地址。 IP的默认值:127.0.0.1 |
port | 监听端口号。 | 取值范围:1024~65535,正整数。 默认值:8098。 |
data_dir | 数据文件目录。 | - |
err_dir | 错误日志文件目录。 | 默认值:数据文件目录 |
log_file | 日志文件路径。 | - |
host | 设置允许连接到GDS的主机IP地址(参数为CIDR格式,仅支持linux系统)。 | - |
recursive | 是否递归数据文件目录。 | 取值范围:
默认值:false。 |
daemon | 是否以DAEMON(后台)模式运行。 | 取值范围:
默认值:false。 |
parallel | 导入工作线程并发数目。 | 取值范围:0~32,正整数。 默认值:1。 |
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3129994/ ,如需转载,请注明出处,否则将追究法律责任。