kettle工具 学习

kettle工具 学习背景:项目需要从客户的数据库迁移一批人口数据,大约240w条。所以我们需要一款工具帮助我们实现数据快速搬运,数据过滤,以得到符合我们使用的安全数据。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

    背景:项目需要从客户的数据库迁移一批人口数据,大约240w条。所以我们需要一款工具帮助我们实现数据快速搬运,数据过滤,以得到符合我们使用的安全数据。

      先放一个不错的基础教程博文链接http://f.dataguru.cn/thread-186578-1-1.html

     再放一个存储过程的博文推荐http://www.cnblogs.com/chinafine/archive/2010/07/12/1776102.html

      kettle简介:Kettle是一款国外开源的ETL工具,纯java编写,数据抽取高效稳定的数据迁移工具。Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流程的控制。  

   明确表PAT_MASTER_INDEX(桂林人口数据表)—-》t_patientget(居民信息采集表)

   业务分析 从人口库迁移数据到项目库,中间需要进行数据筛选,拼装。

  1 下载并安装

      这次使用的是4.2 版本 我们以4.2为模板学习

      kettle工具 学习

      1.1   解压后 免安装 可直接使用。解压后点击Spoon.bat 运行 需要JRE环境支持。

kettle工具 学习

      1.2 新建transformation工作台 保存后为.ktr文件

    kettle工具 学习

    1.3 新建数据库连接

         两种方式

         1.3.1 建了以备不时之需

          主对象树–transformation–DB连接–右击新建

kettle工具 学习

       配置数据库参数

kettle工具 学习

       1.3.2 使用时再建

         核心对象–输入–拖拽表输入到工作台

kettle工具 学习

双击“表输入”

kettle工具 学习

            在“数据库连接”点击–”新建“ 与第一种方式相同,配置数据库连接,选择我们所需的连接

kettle工具 学习

点击“获取SQL查询语句”,以获得目标表

kettle工具 学习

正确操作出现上图红框所示SQL语句

kettle工具 学习

勾选“允许延迟转换”–点击“确定”

    同理 我们建立“表输出”

kettle工具 学习

1.4   在左侧“核心对象”中的“转换”文件夹中选择“字段选择”功能,拖动到右侧编辑区。按住键盘shift同时鼠标从“表输入”为起点,“字段选择”为终点画一条连接。如图:

kettle工具 学习

 1.5 双击“字段选择”,打开编辑窗口,选择“元数据”面板,点击右侧“获取改变的字段”,将自动列出之前表输入中所有字段

      kettle工具 学习

1.6 编辑完“字段选择”后点击“确定”关闭窗口。同上,在“输出”文件夹中拖动一个“表输出”到右侧编辑区,并画连接

kettle工具 学习

基本的工作流程就完成了,

   2 下面是一些针对业务上做的一些工作

      2.1 数据过滤,

kettle工具 学习

过滤掉证件类型不是身份证的,死亡人口,非“桂林市”户口人口,以及最后做了个存储过程,校验身份证号码正确性。

这是第一层数据过滤。

kettle工具 学习

2.2  针对过滤后的数据 导入“采集表”中

kettle工具 学习

拼接户籍地址,现居住地址(根据行政区划代码 从字典表中查出 拼接)

所以 我们直接在数据层上 写存储过程解决业务逻辑,可以很大的提高效率。


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183409.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • kafka应用场景包括_rabbitmq使用场景

    kafka应用场景包括_rabbitmq使用场景Kafka核心概念与应用场景

    2022年10月14日
    2
  • Java程序员,你一定需要了解的六款大数据采集平台

    Java程序员,你一定需要了解的六款大数据采集平台随着大数据越来越被重视,数据采集的挑战变的尤为突出。今天为大家介绍几款数据采集平台: ApacheFlume Fluentd Logstash Chukwa Scribe SplunkForwarder 大数据平台与数据采集任何完整的大数据平台,一般包括以下的几个过程: 数据采集 数据存储 数据处理 …

    2022年6月6日
    126
  • 关于Set集合去重[通俗易懂]

    关于Set集合去重[通俗易懂]上次说了List集合的去重,这次来说说Set集合的去重publicstaticvoidmain(String[]args){ HashSeths=newHashSet<>(); hs.add(“a”); hs.add(“b”); hs.add(“c”); hs.add(“a”); hs.add(“a”); for(Objectobj:…

    2022年6月7日
    46
  • Java集合有哪些?「建议收藏」

    Java集合有哪些?「建议收藏」Java集合有哪些?java集合分三种,List、Set、Map,这三种集合适用于不同的场景List:适用于有序,可重复的集合Set:适用于不可重复集合Map:适用于键值对的存储注:通常List与Map最为常用每个集合常用的实现类有哪些?List:ArrayList与LinkedListSet:HashSet与TreeSetMap:HashMap与TreeMap与HashTable每个集合不同的实现类的区别是什么?List:**ArrayList:**数组实现的,常用于

    2022年7月7日
    23
  • 二叉树 二叉搜索树_二叉查找树

    二叉树 二叉搜索树_二叉查找树原题链接一棵二叉搜索树可被递归地定义为具有下列性质的二叉树:对于任一结点,其左子树中所有结点的键值小于该结点的键值;其右子树中所有结点的键值大于等于该结点的键值;其左右子树都是二叉搜索树。所谓二叉搜索树的“镜像”,即将所有结点的左右子树对换位置后所得到的树。给定一个整数键值序列,现请你编写程序,判断这是否是对一棵二叉搜索树或其镜像进行前序遍历的结果。输入格式:输入的第一行给出正整数 N(≤1000)。随后一行给出 N 个整数键值,其间以空格分隔。输出格式:如果输入序列是对一棵二叉搜索树或

    2022年8月8日
    4
  • java解析字符串_java string 转jsonobject

    java解析字符串_java string 转jsonobject#学习Java对象转json字符串的基本代码@ControllerpublicclassUserController{@RequestMapping(“/json1”)@ResponseBodypublicStringjson1()throwsJsonProcessingException{//创建Json对象ObjectMapperm…

    2022年9月21日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号