1、启动gpfdist服务
后台启动:nohup ./gpfdist -d /data1/gpfdist/ -p 5439 -t 600 -l /data1/gpfdist/gpfdist.log &
2、创建外表
CREATE EXTERNAL TABLE "external_位置" (
"id" varchar(64),
"type" varchar(64),
"start" varchar(64),
"end" varchar(64),
"纵坐标" varchar(64)
) LOCATION ('gpfdist://10.20.20.85:5439/relation_位置.csv') format 'csv' (DELIMITER ',');
3、插入数据至目标表
insert into rel_就读于(_id,纵坐标,_from_entity_id,_to_entity_id,_create_user,_create_time) select _id,纵坐标,"start","end",'001' as _create_user,'2019-01-04 14:32:01.212' as _create_time from external_就读于;
注:会将整个csv文件加载至缓存中,如果文件过大,即时清理服务器缓存 ,或将大文件拆分至多个小文件串行执行。
4、性能分析
a、 查看正在执行的sql:select datname,usename,procpid,sess_id,current_query from pg_stat_activity where current_query LIKE 'insert%';
b、关闭正在执行的sql进程:select pg_cancel_backend(24562) ;
c、查看服务器内存情况:free -g
d、清理服务器缓存 sudo echo 3 > /proc/sys/vm/drop_caches
5、性能指标
文件大小 数据条数 用时
32G 250000001 17min
76G 650000001 80min