Kettle:批量数据加载

本文主要介绍文本文件、csv、execl和PostgreSQL的批量数据加载。
一、文件文件到PostgreSQL的批量数据加载
COPY在 PostgreSQL表和标准文件系统文件之间 移动数据。COPY TO把一个表的内容复制 到一个文件,而COPY FROM 则从一个文件复制数据到一个表(把数据追加到表中原有数 据)。COPY TO也能复制一个 SELECT查询的结果。windows环境下须要从官方下载安装包进行安装,不然在kettle中会提示找不到psql命令路径错误,从而致使加载失败。
新建“转换”,选择输入组件中的“文本文件输入”和批量加载的“PostgreSQL批量加载”,以下图所示:
Kettle:批量数据加载
文本文件输入配置以下:
Kettle:批量数据加载
Kettle:批量数据加载
Kettle:批量数据加载
PostgreSQL批量加载配置:
Kettle:批量数据加载
注意:客户端路径指的是PostgreSQL的psql命令的路径。
二、CSV文件到PostgreSQL的批量数据加载
新建“转换”,选择“CSV文件输入”以及“PostgreSQL批量加载”组件,总览以下图所示:
Kettle:批量数据加载
CSV文件输入组件:
Kettle:批量数据加载
PostgreSQL批量加载组件:
Kettle:批量数据加载
注意:若是CSV文件里有number字段,则在组件里选择integer类型,不然它会出现带“.0”的值,这样插入过程会报错。可是执行转换还会成功,由于数据没写入表中,而是写入PostgreSQL的日志文件里了。这个日志文件位于postgres用户家目录的data/log文件夹下面。以下图所示:
Kettle:批量数据加载
三、Excel文件到PostgreSQL的批量数据加载
新建转换,选择“execl文件输入”和“PostgreSQL批量数据加载”组件,总览以下图所示:
Kettle:批量数据加载
Excel输入组件配置:
Kettle:批量数据加载
Kettle:批量数据加载
Kettle:批量数据加载
Kettle:批量数据加载
注意:对于源字段为number类型的,必须在这改为integer类型。
PostgreSQL批量加载组件配置:
Kettle:批量数据加载
执行结果以下图:
Kettle:批量数据加载sql