栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Kettle 组件使用

Kettle 组件使用

Kettle 组件使用
  • 表输入
  • 文本文件输出
  • 循环
    • 循环job注意点
  • java代码
  • 压缩文件
  • 邮件
  • 判断表是否存在
  • Switch/case 存在BUG
  • SQL脚本
  • 按字段合并多行数据
  • 关联字段合并(类似SQL join操作)
  • 表输出
      • 报错 “kettle:The tablename is not defined (empty)”
  • kettle调用接口

表输入
  • 如果sql中使用变量,替换变量选项一定要勾。
  • 返回数据类型如果有int,double类型数据,转为字符串类型。默认识别可能会丢失精度
文本文件输出
  • 需求为输出为CSV文件,使用UTF-8编码会造成中文乱码。改为GBK解决中文乱码
  • 字段获取的时候,要点一下最小宽度。不点的情况下,默认识别数据的宽度不确定(如果数据不够宽度以空格填充)这样会造成文件太大。浪费空间。

  • 按数据量分多个文件导出
循环



接下来使用一个JOB循环

循环job注意点
  • 高级设置 要勾选对每个输入行执行一次

    job中接收获取参数
java代码
  • 如果要对值做转换,需要一个新属性来接受,不能在原属性覆盖
  • 此处gd_lat—>使用lat_84接收
压缩文件

压缩文件,如果(高级设置)zip存在的情况下,没有覆盖的功能。所以要在压缩之前加一个删除文件。避免不压缩

邮件

发送邮件,要配合【添加文件到结果文件中】使用



判断表是否存在


Switch/case 存在BUG

直接使用 Switch/case 不好使
需要配合【transformation executor】组件,具体执行放在转换里。

SQL脚本

按字段合并多行数据


关联字段合并(类似SQL join操作)

表输出

报错 “kettle:The tablename is not defined (empty)”

去掉表输出中的“表分区数据”

kettle调用接口

获取接口参数



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/698397.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号