通过csv文件形式进行数据入仓的流程及脚本

1、将数据抽取插入到csv文件,写入到数据库中
2、将csv文件插入到目标数据库(这里以插入到postgresql为例):
首先在服务器上写连接pg数据脚本,
在普通用户home目录下建立文件:.pgpass,内容为ip:端口号:schema:name:pasdword
在文件目录下建立文件夹例如:Mysql2Gp,并在文件夹下建立cfg目录,用来存放配置脚本,在Mysql2Gp目录下建立文件write_to_gp111.sh ,内容为:
date
psql -d gsdw -h 数据库ip -p 端口号 -U 用户名 -f /home/gens/Mysql2Gp/cfg/$1
date
在cfg建立写入数据库脚本xxxxx.sql:
truncate table table_name;
\COPY table_name(字段名称) from ‘/data/xxxxxxxx.csv’ delimiter ‘|’ csv header;
执行脚本 sh write_to_gp111.sh xxxxx.sql即可写入数据库,注意:如果数据质量不高,可能会报错,具体问题具体分析
3、添加调度任务(azkaban调度器)例如:
type=command
command= su - gens -c “sh /home/gens/Mysql2Gp/write_to_gp111.sh xxxxxx.sql”

猜你喜欢

转载自blog.csdn.net/qq_22994783/article/details/83023817