@digoal
德哥,目前我用四台服务器做了个gp集群,1 master,3 segment,3 mirror。其中master独立一台,另外三台分别对应1primary、1mirror。
服务器配置:
DELL C1600主板
CPU:X5650*2(主频:2.66Ghz,十二核二十四线程)
内存:服务器专用RRD3 REG ECC 32G
硬盘:希捷 2T 7200转 64M STAT3机械硬盘。
千兆交换机。
额外安排一台服务器做gpfdist服务器,进行数据入库。
表结构如下:
数据基本是这个样子
数据文件1小时一个,文件大小从100MB至2GB不等,单个文件行数在100万条至2000万条不等。
数据表按天分区,入库前子表不创建索引,入库语句是insert child_table select * from external_table。每次入库创建新的外部表指定唯一外部文件。
目前入库速度基本维持在10MB/s,数据行数10w/s,日表(子表)数据越多,数据文件越大,速度回越慢(怀疑与数据重分布有关)。
观察磁盘io、网络带宽、cpu都有相当大的空闲。内存倒是基本都被占用了,不过top显示的进程内存使用量并不大。
尝试多加一台服务器做gpfdist导入其它数据表数据,入库速度没有明显提升,反而会拖慢老的入库进程。
瓶颈应该在集群这一侧,我尝试修改过一些参数,但是gp得好多参数都不建议修改,不清楚gp的机制是什么样的,我应该从哪方面入手进行优化?
拜谢。
用perf top跟踪一下。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。