美文网首页
数据仓库之kettle连接组件示例

数据仓库之kettle连接组件示例

作者: 朱潘 | 来源:发表于2018-10-25 21:46 被阅读0次

    创建表

    CREATE TABLE `test_a` (
    
    `id` int(11) NOT NULL,
    
    `name` varchar(255) DEFAULT NULL,
    
    PRIMARY KEY (`id`)
    
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    
    CREATE TABLE `test_b` (
    
    `id` int(11) NOT NULL,
    
    `email` varchar(255) DEFAULT NULL,
    
    PRIMARY KEY (`id`)
    
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    

    创建转换,增加数据源

    文件->新建->转换


    新建转换

    右键新建数据源

    配置数据源

    增加两个表输入

    表输入

    填写数据源和sql

    数据查询sql

    添加一个连接,随便选择一种,不同组件略有不同

    连接组件

    选择连接字段和连接方式,类似我们写sql的join

    连接方式

    会提示连接前请先排序,那么假如两个排序组件

    排序组建

    根据连接字段排序

    排序

    创建接收的目标表

    
    CREATE TABLE `test_c` (
    
    `id` int(11) NOT NULL,
    
    `name` varchar(255) DEFAULT NULL,
    
    `email` varchar(255) DEFAULT NULL,
    
    PRIMARY KEY (`id`)
    
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    

    增加表输出

    表输出
    表输出配置

    增加测试数据

    测试数据
    测试数据

    执行脚本看看结果

    执行结果

    完成, 提示,每一步中的填写字段时可以先获取字段再修改,这样输入比较快速,

    获取字段

    到这里就基本完成了,如果要完美一下,比如这个脚本如果重复执行肯定会报错,那么怎么办呢?可以执行之前再加一个删除c表中已有数据的操作,也可以执行表输入的时候先查询c表再对已有数据进行跟新或插入(这种方式效率较前者慢)

    欢迎关注我的公众号“java工会”,与君共勉

    相关文章

      网友评论

          本文标题:数据仓库之kettle连接组件示例

          本文链接:https://www.haomeiwen.com/subject/mxchtqtx.html