摘要:在南大通用 GBase 8a MPP Cluster 中,控制数据同步的并行度主要通过调整相关系统参数来实现,这些参数决定了数据同步过程中可同时执行的任务数量或并发连接数。以下是常用的控制方式:
在南大通用 GBase 8a MPP Cluster 中,控制数据同步的并行度主要通过调整相关系统参数来实现,这些参数决定了数据同步过程中可同时执行的任务数量或并发连接数。以下是常用的控制方式:
全局同步并行度参数
通过gbase_rsync_parallel参数控制数据同步时的并行进程数,默认值通常为 4,可根据集群规模和负载调整:
sql
-- 查看当前值
SHOW VARIABLES LIKE 'gbase_rsync_parallel';
-- 临时修改(重启后失效)
SET GLOBAL gbase_rsync_parallel = 8;
表级同步并行度
创建表时可指定DISTRIBUTE BY子句结合PARTITION策略,间接控制同步并行粒度:
sql
CREATE TABLE example_table (id INT)
DISTRIBUTE BY HASH(id)
PARTITION BY RANGE(id) (
PARTITION p1 VALUES LESS THAN (10000),
PARTITION p2 VALUES LESS THAN (20000)
);
更多分区会让同步任务更细化,提升并行效率。
ETL 工具并行设置
使用 GBase 提供的 ETL 工具(如 gcluster_loader)时,通过-p参数指定并行加载进程数:
bash
gcluster_loader -d gbase -h node1 -u root -P 5258 -p 4 -f data.csv -t target_table
其中-p 4表示启用 4 个并行加载进程。
配置文件持久化修改
若需永久生效,需修改集群配置文件gbase_8a_gcluster.cnf,添加或调整:
ini
gbase_rsync_parallel = 6
修改后需重启集群服务:gcluster_services all restart
注意:并行度过高可能导致 CPU、内存或网络资源竞争,建议根据实际硬件配置逐步调整(通常设置为 CPU 核心数的 1-2 倍),并通过gclustat监控集群负载变化。
来源:GBASE南大通用