1. ETL工具Kettle的输出步骤
Kettle输入步骤主要分为以下几类:
- 数据库输出
- 表输出
- 更新、删除、插入和更新
- 文件输出
- 文本文件输出
- XML输出
- Excel文件输出
- 其他
- 报表和应用
2 数据库输出
2.1 表输出的功能
- 使用SQL的方式向数据库提交数据
- 特点:表输出支持批量提交数据,可以对数据进行分区,具有字段映射和返回自增列的弄能。
2.2 表输出各自功能的特点
- 更新:根据关键字匹配规则,更新数据库中已有的数据
- 删除:根据关键字匹配规则,删除数据库已有的数据
- 插入:有则更新,无则插入,使用方便,可以作为误删除数据同步的一种方式,但是效率低。
2.3 数据同步
- 功能:基于比较的同步方式。根据一个flag字段执行相应的插入/删除/删除操作。
- 常用的数据同步方法有:
- 时间戳
- 比较
- 触发器
- 日志
2.4 数据库的批量加载和SQL文件输出
- kettle中可以通过指定脚本使用流的的方式批量加载数据,常见的数据库系统包括MySQL和Orcle数据库的加载。
- SQL文件输出可以根据选中的数据库类型,生成相应的SQL脚本(DDL(数据定义语音),DML(数据操作语音))
3 Kettle的文件输出
3.1 Excel文件输出
Kettle可以直接将数据保存到Excel文件中。
- 注意事项:
- Excel输出65535的限制
- Excel2007输出则没有该限制
3.2 文本文件和JSON文件输出
- Kettle可以将文件直接保存至文本文件,同时也可以按照JSON的格式输出数据,将数据保存至JSON文件中。
- 可选内容包括
- 文件名,内容,字段选择等基本功能
- 文件分割,分批保存文件
- 可以通过Servelt的方式输出JSON文件,Http的调用参数包括“rep”,“User”,“pass”,“trans”,“level”等。
3.3 报表输出
1. 功能:生成报表(pdf、excel、html等格式),需要事先定义好报表的模板
2. 使用报表功能时也可以直接将数据保存至数据库中,然后由数据库和前端进行交互,提供报表的数据内容