专栏首页故久Pentaho的下载与安装及其简单实用

Pentaho的下载与安装及其简单实用

一、首先去官网,因为是纯英文的。所以将其进行了翻译。

https://community.hitachivantara.com/s/article/data-integration-kettle

点击以下画红色框的线,对其进行下载。

下载完毕后,将其进行解压

Kettle是纯JAVA编程的开源软件,本地环境配置JDK1.7以上即可运行,解压后直接使用无需安装。

二、在环境变量中配置pentaho_java_home变量。值就是本地的jdk路径

配置完毕后,点击Spoon.bat

打开后耐心等待一会儿。

三、创建数据库的连接

点击转换,切换主对象树。可以看到DB连接。点击DB连接。

选择mysql的连接。输入相关的连接信息。

然后点击测试,出现以下的错误。

这是由于没有mysql的驱动包所导致的。所以要在pdi-ce-8.3.0.0-371\data-integration\lib下放入mysql的驱动包。找到对应的mysql版本的驱动包,如下载版本过低的驱动包会出现。Unknown system variable 'query_cache_size'这个错误,从而连接不到数据库。

我这下载的是mysql-connector-java-5.1.8.jar这个驱动包。可以看到测试连接成功。

点击确认

四、同步数据

新建一个转换,从输入输出里面各拖出来一个输入和输出。

在表输入里面选择数据连接,或者新建连接

然后点击获取sql查询语句

选择你要输入的表-点击确定

一旦点击是就会报出以下错误。

猜测是mysql数据库版本与mysql连接驱动(mysql-connector-java)版本冲突导致。

当前环境如下: 执行:select version();

mysql-connector-java版本为:5.1.8

尝试了不同版本的连接驱动:

最终发现5.1.47完美解决问题

解释: jdbc在连接数据库时候会发送测试语句SET OPTION SQL_SELECT_LIMIT=DEFAULT,而mysql 5.6及以上版本已经不支持此语句。

执行完sql 会如下图

将A表中的字段插入到B表中

表输出,就是单纯地将数据输出到另一个表。

表输出的设置:

运行结果(user_copy 表数据):将A表数据复制到B表中

我们第二次运行后,kettle 就会报错,说主键已经存在

这就表示表输出只能输出一次,如果目标表中已经存在相应的主键,则不会进行更新,会报错。

如果我们修改下表输出的设置,我们来指定下输出字段:

运行结果(user_copy 表数据):

https://blog.csdn.net/qqfo24/article/details/82190535

https://blog.csdn.net/qqfo24/article/details/82190535

可以参考这个网址对把一个表的数据更新或者新增到新的一个表中。

操作步骤如下:

点击核心对象,新建转化

然后再点击主对象树,选择DB进行连接

点击完后,点击核心对象。选择输入。点击表输入。

然后点击插入/更新

现在我们来看看User表中的数据

然后来看看test表中的数据

然后双击插入/更新

这个图只是一些说明,下图是我自己操作图。

点击确定。然后运行这个转换

点击启动,并进行保存

运行结束后,我们可以在下方看到运行结果,其中有日志,数据预览等,我们可以看到一共读取了多少条数据,插入更新了多少数据等等。

这样就完成了一个最简单的转换,从一个表取数据,插入更新到另一个表。

现在我们来看test表,就可以看到id为4的数据由订单,更新成方法了

如果想要定时运行这个转换,那么就要用到作业。

点击通用

从左侧依次拖动 START 、转换、成功到右侧,并用线连接起来。

双击 START,可以配置作业的运行间隔,这边配置了每小时运行一次。

双击转换,选择之前新建的那个转换

点击运行,就能运行这次作业,点击停止就能停止。在下方执行结果,可以看到运行的日志。

我在user表中新增一条id为1的数据

现在运行这个作业

后来发现一个小时太久了,我又设置成3分钟。运行结果

现在我们来看看数据库中test中是否有问问的那条数据

以上截图说明了定时脚本插入成功。

想要定时任务重复操作,勾选重复这项

想要一致运行这个脚本就不需要停止。如果不想跑这个脚本就点击停止的按钮。

总结

插入更新由于可以更新数据,用的比较多。

表输出,容易插入重复数据,请慎用。

定时作业,开启可以自动的更新数据,减少人工操作的成本。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • CentOS7 yum 安装和启动mysql

    在MySQL官网中下载YUM源rpm安装包:https://dev.mysql.com/downloads/repo/yum/

    故久
  • CentOS7 yum 安装和启动mysql

    在MySQL官网中下载YUM源rpm安装包:https://dev.mysql.com/downloads/repo/yum/

    故久
  • DbWrench建模以及数据正向工程和反向工程的具体操作

    简单通俗的说就是在建模工作中画好的表与表之间关系的数据图(ER图),通过该建模工具让它在数据库中生成最终的数据表

    故久
  • Milvus 在流式数据场景下的性能表现

    Milvus 作为一款开源的特征向量相似度搜索引擎,其开源半年以来,在全球已经有数百家企业或组织用户。这些用户涉及各个领域,包括金融、互联网、电商、生物制药等。...

    ZILLIZ
  • 2019医疗大数据企业排行榜

    近日,互联网周刊发布“2019医疗大数据企业排行榜”,一起来看一下哪些公司上榜了?

    华章科技
  • Git配置SSH Key

    在使用Git拉取或提交文件时,如果走http的方式,文件太大会造成提交报错,这时就必须走SSH的方式,具体错误可以参考 Git常见错误整理

    JouyPub
  • Golang语言Notepad++简易开发环境搭建(windows)

    1.下载安装go语言: https://golang.org/dl/ 选择对应的平台,建议使用msi安装包,这个会帮你配置好环境变量(也许需要重启) 对应的环境...

    李海彬
  • 3月28日数据动态早报

    数据动态早报,让您了解数据新变化、新创造和新价值。 ? ---- 一、通信行业数据动态 1 5G将让军队通讯近乎无阻碍:中国将率先实现商用。关键应用场景主要...

    陆勤_数据人网
  • 电商系统设计之订单

    用户交易将经历一段艰辛的历程,一般用户感觉不到,实际程序是经历了一段生死离别。具体付款流程如下

    CrazyCodes
  • 电商系统设计之商品 (下)

    完成上述流程则是完成了一笔交易,经常网上购物的童鞋都懂这个。今天我们讲下从商品系统到交易系统和订单系统的存储过程及其设计上的应该注意的“坑”。

    CrazyCodes

扫码关注云+社区

领取腾讯云代金券