kettle学习笔记(五)——kettle输出步骤
一、概述
数据库表:
• 表输出
• 更新,删除,插入/更新
• 批量加载(mysql,oracle)
• 数据同步
文件:
• SQL 文件输出
• 文本文件输出
• XML 输出
• Excel Output/Excel Writer
其他(报表、应用)
二、数据库输出
1.表输出
使用SQL的方式向数据库插入数据(INSERT)
支持批量提交
支持分区(Date分区)
支持字段映射
支持返回自增列
这里提示一下出现表输出的中文乱码问题的解决方案:
设置连接编码:characterEncoding utf8
设置连接编码一般就可以正常输出不乱吗的字符了。如果还有问题,可以继续设置客户端编码
设置客户端:set names utf8;
一个测试的表输出如下:
如果选择分区,需要选择Date字段进行分区,并且需要手动创建表(例如按月分区,有201804 201805两个月,则需要创建tb_201804 tb_201805两个表)
2.返回自增主键
表输出的配置如下:
预览即可查看返回的主键:
3.数据库字段映射
前面步骤可以后后面表输出进行字段映射匹配:
表输出配置如下:
字段映射:
使用猜一猜可以进行名称匹配,如果需要手动匹配,可以左右分别选择,点击Add即可!
并且映射完成之后也可以删除丢弃某些字段
4.其它操作——删除、更新、插入更新
删除:
根据关键字匹配,删除数据库中已有的数据。
更新:
根据关键字匹配,更新数据库中已有的数据。
插入更新:
有则更新,无则插入。
操作都是类似,上面进行匹配,下面进行处理:
5.数据同步
基于比较的同步方式。根据一个flag字段执行相应的插入/更新/删除操作。
配置图如下:使用合并后的flag字段(可能有new deleteed等flag),后续再根据此flag,同步变化的数据到表1
6.批量加载
使用流方式加载数据
MySQL批量加载需要在Linux环境运行(有命令只能在Linux下运行)
Oracle需要本地有oracle客户端(sqlldr文件,在Oracle安装目录下查找)
三、文件输出
1.SQL文件输出
根据选中的数据库类型,生成相应的 SQL 脚本(DDL,DML)。
2.excel文件输出
注意2007以前的版本有65536的行数限制:
3.文本文件输出
比如txt json等,暂不赘述
四、其它输出
1.报表输出
生成报表(pdf,excel,html等格式),需要事先定义好报表模板。
2.XML输出
同样,暂不赘述
kettle学习笔记(五)——kettle输出步骤的更多相关文章
- Kettle学习笔记(四)— 总结
目录 Kettle学习笔记(一)- 环境部署及运行 Kettle学习笔记(二)- 基本操作 kettle学习笔记(三)- 定时任务的脚本执行 Kettle学习笔记(四)- 总结 Kettle中设置编码 ...
- Kettle学习笔记(二)— 基本操作
目录 Kettle学习笔记(一)- 环境部署及运行 Kettle学习笔记(二)- 基本操作 kettle学习笔记(三)- 定时任务的脚本执行 Kettle学习笔记(四)- 总结 打开Kettle 打开 ...
- Kettle学习笔记(一)— 环境部署及运行
目录 Kettle学习笔记(一)-环境部署及运行 Kettle学习笔记(二)- 基本操作 kettle学习笔记(三)- 定时任务的脚本执行 Kettle学习笔记(四)- 总结 Kettle简介 Ket ...
- java之jvm学习笔记五(实践写自己的类装载器)
java之jvm学习笔记五(实践写自己的类装载器) 课程源码:http://download.csdn.net/detail/yfqnihao/4866501 前面第三和第四节我们一直在强调一句话,类 ...
- ES6学习笔记<五> Module的操作——import、export、as
import export 这两个家伙对应的就是es6自己的 module功能. 我们之前写的Javascript一直都没有模块化的体系,无法将一个庞大的js工程拆分成一个个功能相对独立但相互依赖的小 ...
- muduo网络库学习笔记(五) 链接器Connector与监听器Acceptor
目录 muduo网络库学习笔记(五) 链接器Connector与监听器Acceptor Connector 系统函数connect 处理非阻塞connect的步骤: Connetor时序图 Accep ...
- Linux学习笔记(五) 账号管理
1.用户与组账号 用户账号:包括实际人员和逻辑性对象(例如应用程序执行特定工作的账号) 每一个用户账号包含一个唯一的用户 ID 和组 ID 标准用户是系统安装过程中自动创建的用户账号,其中除 root ...
- go微服务框架kratos学习笔记五(kratos 配置中心 paladin config sdk [断剑重铸之日,骑士归来之时])
目录 go微服务框架kratos学习笔记五(kratos 配置中心 paladin config sdk [断剑重铸之日,骑士归来之时]) 静态配置 flag注入 在线热加载配置 远程配置中心 go微 ...
- C++基础 学习笔记五:重载之运算符重载
C++基础 学习笔记五:重载之运算符重载 什么是运算符重载 用同一个运算符完成不同的功能即同一个运算符可以有不同的功能的方法叫做运算符重载.运算符重载是静态多态性的体现. 运算符重载的规则 重载公式 ...
- openresty 学习笔记五:访问RabbitMQ消息队列
openresty 学习笔记五:访问RabbitMQ消息队列 之前通过比较选择,决定采用RabbitMQ这种消息队列来做中间件,目的舒缓是为了让整个架构的瓶颈环节.这里是做具体实施,用lua访问Rab ...
随机推荐
- JSON.parse()与JSON.stringify()高级用法
JSON.parse()与JSON.stringify是将JSON对象与字符串互相转换的方法,它们还有一些参数可以让我们在实际应用中更加方便,现在介绍一下它们的高级用法 JSON.parse() JS ...
- 配置ArcGIS Server使用Windows AD Windows集成身份认证
1.配置 ArcGIS Server 以使用 Windows Active Directory 用户和角色. 2.填写Windows域账号凭证,对账号的要求如下: 需要能读取域中的用户和组,一般从属于 ...
- 数据库小组第N次小组会议
时间:5.30晚,9:30 ~ 11:30 主题:讨论android app与服务器之间数据同步的技术选型与实现 与会人:陈兆庭,黄志鹏,吴雪晴 讨论内容: 大体分析 关于数据同步,整体上有两部分,用 ...
- Prometheus Node_exporter 之 Network Netstat UDP
Network Netstat UDP /proc/net/snmp 1. UDP In / Out type: GraphUnit: shortLabel: Datagrams out (-) / ...
- 使用Doxygen生成C#帮助文档
一. 什么是Doxygen? Doxygen 是一个程序的文件产生工具,可将程序中的特定批注转换成为说明文件.通常我们在写程序时,或多或少都会写上批注,但是对于其它人而言,要直接探索程序里的批注,与打 ...
- python os模块 遍历目录
#os #os ->tree命令 import os #递归 #目录 ->文件,文件夹 -> 文件文件夹 dirpath = input('请输入你要遍历的目录\n') def ge ...
- mysql 表格操作指令大全(Show、desc、create、insert into、delete、select、drop、update、alter)
使用数据库 use 数据库名 eg: use weiying 2. 查看库里所有的表 Show tables 3.查看所表的结构 desc 表名 desc score 4.建表create tabl ...
- 通过javascript添加一行
<html><head> <title>添加新的行</title></head><body> <div onclick=& ...
- HTTP学习---TCP三次握手和四次挥手
IP协议 首先我们看 IP(Internet Protocol)协议.IP 协议提供了主机和主机间的通信. 为了完成不同主机的通信,我们需要某种方式来唯一标识一台主机,这个标识,就是著名的IP地址.通 ...
- security/pam_appl.h:没有那个文件或目录
在编译开源库时, 提示 pam.h:4:10: 致命错误:security/pam_appl.h:没有那个文件或目录 #include <security/pam_appl.h> 解决方法 ...