返回首页

gbase数据、南大通用产品文档:GBase8aformat

更新日期:2024年09月11日

功能
指定导出数据文件的数据格式。
说明
当设置为3 时,导出数据为无转义的文本格式。
示例

GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
534
示例1
--format='3'
示例2
-m'3'
参数说明
表4- 99 参数说明
参数全称
参数简称
取值范围
默认值
format
m
3
3

MOT 服务器优化
通常情况下,数据库由以下组件绑定:

CPU:更快的CPU 可以加速任何CPU 绑定的数据库。

磁盘:高速SSD/NVME 可加速任何I/O 绑定数据库。

网络:更快的网络可以加速任何SQL*Net 绑定数据库。
除以上内容外,以下通用服务器设置默认使用,可能会明显影响数据库的性能。
MOT 性能调优是确保快速的应用程序功能和数据检索的关键步骤。
MOT 支持最新的硬
件,因此调整每个系统以达到最大吞吐量是极为重要的。
BIOS
Hyper Threading 设置为ON。
建议打开超线程(HT=ON)。建议在MOT 上运行OLTP 工作负载时打开超线程。当使
用超线程时,某些OLTP 工作负载显示高达40%的性能增益。
操作系统环境设置

NUMA
禁用NUMA 平衡,如下所示。MOT 以极其高效的NUMA-aware 方式进行内存管理,
远远超过操作系统使用的默认方法。
echo 0 > /proc/sys/kernel/numa_balancing

服务
禁用如下服务:
service irqbalance stop
# MANADATORY
service sysmonitor stop
# OPTIONAL, performance
service rsyslog stop
# OPTIONAL, performance

调优服务
以下为必填项。
服务器必须运行throughput-performance 配置文件。

GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
440
[...]$ tuned-adm profile throughput-performance
throughput-performance 配置文件是广泛适用的调优,
它为各种常见服务器工作负载提供
卓越的性能。
其他不太适合GBase 8c 和MOT 服务器的配置可能会影响MOT 的整体性能,包括:平
衡配置、桌面配置、延迟性能配置、网络延迟配置、网络吞吐量配置和节能配置。

系统命令
推荐使用下列操作系统设置以获得最佳性能。
在/etc/sysctl.conf 文件中添加如下配置,然后执行sysctl -p 命令:
net.ipv4.ip_local_port_range = 9000 65535
kernel.sysrq = 1
kernel.panic_on_oops = 1
kernel.panic = 5
kernel.hung_task_timeout_secs = 3600
kernel.hung_task_panic = 1
vm.oom_dump_tasks = 1
kernel.softlockup_panic = 1
fs.file-max = 640000
kernel.msgmnb = 7000000
kernel.sched_min_granularity_ns = 10000000
kernel.sched_wakeup_granularity_ns = 15000000
kernel.numa_balancing=0
vm.max_map_count = 1048576
net.ipv4.tcp_max_tw_buckets = 10000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_keepalive_time = 30
net.ipv4.tcp_keepalive_probes = 9
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_retries2 = 80
kernel.sem = 250 6400000 1000 215432
net.core.wmem_max = 21299200
net.core.rmem_max = 21299200
net.core.wmem_default = 21299200
net.core.rmem_default = 21299200
#net.sctp.sctp_mem = 94500000 915000000 927000000
#net.sctp.sctp_rmem = 8192 250000 16777216
#net.sctp.sctp_wmem = 8192 250000 16777216

GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
441
net.ipv4.tcp_rmem = 8192 250000 16777216
net.ipv4.tcp_wmem = 8192 250000 16777216
net.core.somaxconn = 65535
vm.min_free_kbytes = 26351629
net.core.netdev_max_backlog = 65535
net.ipv4.tcp_max_syn_backlog = 65535
#net.sctp.addip_enable = 0
net.ipv4.tcp_syncookies = 1
vm.overcommit_memory = 0
net.ipv4.tcp_retries1 = 5
net.ipv4.tcp_syn_retries = 5
按如下方式修改/etc/security/limits.conf 对应部分:
soft nofile 100000
hard nofile 100000
软限制和硬限制设置可指定一个进程同时打开的文件数量。
软限制可由各自运行这些限
制的进程进行更改,直至达到硬限制值。

磁盘/SSD
下面以数据库同步提交模式为例,
介绍如何保证磁盘读写性能适合数据库同步提交模式。
按如下方式运行磁盘/SSD 性能测试:
[...]$ sync; dd if=/dev/zero of=testfile bs=1M count=1024; sync
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 1.36034 s, 789 MB/s
当磁盘带宽明显低于789MB/s 时,可能会造成GBase 8c 性能瓶颈,尤其是造成MOT
性能瓶颈。
网络
需要使用10Gbps 以上网络。
运行iperf 命令进行验证:
Server side: iperf -s
Client side: iperf -c
rc.local:网卡调优
以下可选设置对性能有显著影响:
1
将https://gist.github.com/SaveTheRbtz/8875474 下的set_irq_privacy.sh 文件拷贝到

GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
442
/var/scripts/目录下。
2
进入/etc/rc.d/rc.local,执行chmod 命令,确保在boot 时执行以下脚本:
'chmod +x /etc/rc.d/rc.local'
var/scripts/set_irq_affinity.sh -x all
ethtool -K gro off
ethtool -C adaptive-rx on adaptive-tx on
Replace with the network card, i.e. ens5f1

逻辑复制槽行为参数
必选参数

--create
创建一个新的逻辑复制槽。内部调用了pg_create_logical_replication_slot 函数,调用该
函数的用户需要具有SYSADMIN 权限或具有REPLICATION 权限或继承了内置角色
gs_role_replication 的权限,且此函数目前只支持在主机调用。参考《开发者指南》
pg_create_logical_replication_slot 函数的说明。

--start
启动该逻辑复制槽的流复制。

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
261

--drop
删除一个逻辑复制槽。
连接参数

-d, --dbname=DBNAME
连接的目标数据库名。

-h, --host=HOSTNAME
连接的目标主机名或socket。

-p, --port=PORT
连接的目标数据库节点的HA 端口号。

-U, --username=NAME
连接目标库所使用的用户名。

-w, --no-password
不使用密码进行连接。

-W, --password
使用指定密码进行连接。
复制参数

-F --fsync-interval=INTERVAL
同步到目标输出文件的间隔时间。
单位为秒,默认值10。

-o, --option=NAME[=VALUE]
指定向逻辑复制槽的输出插件添加参数。
参数的取值为:
include-xids、
skip-empty-xacts、
include-timestamp、
only-local、
force-binary、

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
262
white-table-list、standby-connection、parallel-decode-num、decode-style、sending-batch。
详细请参见
《GBase 8c V5_3.0.0_开发者指南》
中“SQL 参考> 函数和操作符> 系统管
理函数> 逻辑复制函数> pg_logical_slot_peek_changes > options”以及“应用程序开发教
程> 基于JDBC 开发> 示例:逻辑示例”章节。

-P, --plugin=PLUGIN
指定使用的逻辑复制槽输出插件。
默认值为mppdb_decoding。

-s, --status-interval=INTERVAL
发送的心跳包间隔时间。
单位为秒,默认值10。

-S, --slot=SLOT
指定逻辑复制槽的名称。

-I, --startpos=PTR
当使用已有逻辑复制槽时,指定初始复制的LSN 位置。
其它参数

-f, --file=FILE
设置输出到指定文件。
直接使用“-”表示输出到stdout。

-n, --no-loop
指定此参数,连接失败后不重试。

-v, --verbose
输出详细信息。

-V, --version

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
263
输出版本信息,随后立即退出。

-?, --help
输出帮助信息,随后立即退出。

-r, --raw
在并行解码场景下,
设置此参数表示不会将二进制格式或是批量发送的结果转化为文本
格式,该参数仅供测试人员测量并行解码性能时使用。
设置该参数后,二进制格式或批量发
送的解码结果将为不可读的格式。