点击上方“IT那活儿”公众号--专注于企业全栈运维技术分享,不管IT什么活儿,干就完了!!!
安装包下载网址:www.hitachivantara.com1.1 pdi-ce-9.4.0.0-343.zipPentaho Data Integration (PDI) 是一个开源的数据集成工具,以前被称为 Kettle。它主要用于处理数据的抽取、转换和加载(ETL)过程,使组织能够轻松地从各种数据源收集数据,对其进行清洗、转换和聚合,然后将结果加载到目标系统中。pdi-ce-9.4.0.0-343.zip 文件是 Pentaho Data Integration 社区版 (Community Edition, CE) 的数据集成版本安装包。这个 ZIP 文件包含了 PDI 的核心组件,包括:- 一个命令行工具,用于在没有图形用户界面的情况下运行数据转换任务。
通过这些工具,可以创建、编辑、测试和调度数据处理工作流。PDI 支持广泛的数据源和目标,包括关系型数据库、平面文件、Excel、Hadoop 等,并提供了丰富的转换步骤来处理数据。1.2 pentaho-server-ce-9.4.0.0-343.zippentaho-server-ce-9.4.0.0-343.zip 是 Pentaho Business Analytics Server 社区版 (Community Edition, CE) 。这个 ZIP 文件包含了用于部署和运行 Pentaho BI 服务器所需的所有文件。Pentaho BI Server 是一个开源的商业智能平台,它提供了仪表板、报表、分析和数据集成等功能。BI Server 支持用户创建、管理和共享业务分析内容,帮助组织从各种数据源中提取价值。- 包括所有用于构建和展示仪表板、报表和其他 BI 内容的 Web 应用程序。
- 一个开源的 Java Servlet 容器,用于托管 Pentaho BI Server。
- Pentaho Data Integration (Kettle)用于 ETL(抽取、转换和加载)过程的工具,如前所述。
- 提供给用户学习和测试使用的一些示例数据集以及关于如何使用 Pentaho BI Server 的文档。
- Pentaho 平台支持大量可选的插件和扩展,这些可能也会包含在安装包中。
由于 Pentaho BI Server 非常强大,并且可以处理多种类型的数据源和目标,所以它的安装包相对较大。如果只需要使用 PDI 进行数据集成,那么可以单独下载 pdi-ce-9.4.0.0-343.zip,而不需要完整的 BI Server。Kettle解压到英文路径的文件夹中就可以了,不需要安装,点击data-integration文件夹中的Spoon.bat就能打开了。下载mysql驱动mysql-connector-java-8.0.25.jar,并将驱动拷贝到lib目录下。从数据库中读取数据,然后把获取到的数据保存成 .xlsx 格式,并作为附件发送到邮箱。选择连接类型、连接方式,填写主机名称、数据库名称、端口号、用户名、密码:进入 [核心对象] 列表,在 [输入] 下拉栏里找到 [表输入],并拖动到右侧页面:双击右侧的 [表输入] 进行编辑,选择要连接的数据库,输入SQL查询语句:进入 [核心对象] 列表,在 [输出] 下拉栏里找到 [Microsoft Excel 输出],并拖动到右侧页面:双击右侧的 [Microsoft Excel 输出] 进行编辑,填写要输出的文件的绝对路径,选择xlsx格式的扩展名(xls格式为老版本的excel),勾选 Stream XSLX data,点击确定保存:按住Shift键,然后鼠标左键长按 [表输入],拖动鼠标到 [Microsoft Excel 输出] 处:先将转换保存为 .ktr 格式的文件,然后点击执行转换:将 [START]、[转换]、[添加文件到结果文件中]、[发送邮件]、[成功] 五个对象拖到右侧,并连接起来:双击 [START] 进行编辑:勾选重复,类型设置为天,设置每天8:00执行,确定保存:双击 [转化] 进行编辑:填写作业名称,浏览选择要执行的 .ktr 文件,确定保存:双击 [添加文件到结果文件中] 进行编辑:选择要作为邮件附件的文件,确定保存:- 地址页面:添加收件人地址(使用空格分隔)、添加发件人地址;
- 服务器页面:添加SMTP服务器域名、勾选用户验证、输入发件邮箱的用户名和密码
使用自带的 start 来定时,须保持客户端窗口一直开启,若关闭,job也会停止。修改start的定时频率后,需要关闭客户端窗口,然后重新打开spoon,重启job。Shellc: cd C:\kettle\kettle7.1\data-integration kitchen /file:C:\kettle\kettle7.1\data-integration\kjb\test.kjb /level:Base>>C:\kettle\kettle7.1\data-integration\logs\test.log
创建win定时任务(定时执行.bat文件),找到任务计划程序库,并创建一个新的目录:新建操作,其中起始于一定要选择Kitchen.bat所在目录,否则会执行失败:mkdir /usr/kettle/pdi-ce-7.1.0.0-12/kettle_job // 存放作业文件mkdir /usr/kettle/pdi-ce-7.1.0.0-12/kettle_transition // 存放转换mkdir /usr/kettle/pdi-ce-7.1.0.0-12/kettle_sh // 存放执行脚本mkdir /usr/kettle/pdi-ce-7.1.0.0-12/kettle_log // 存放执行kettle产生的日志文件
将从windows上配置好的.ktr和.kjb程序分别放在transition目录和job目录下(或linux下编写后直接保存到该目录下),注意:job中的转换对应的目录需要做相应修改。Shell#!/bin/bash#执行job程序cd /usr/kettle/pdi-ce-7.1.0.0-12/data-integrationexport JAVA_HOME=/usr/local/jdk1.8.0_201/export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport PATH=$PATH:$JAVA_HOME/bin./kitchen.sh -file=/usr/kettle/pdi-ce-7.1.0.0-12/kettle_job/testjob.kjb >>/usr/kettle/pdi-ce-7.1.0.0-12/kettle_log/ceshi_$(date +%Y%m%d).log