使用Kettle定时生成excel表,然后发送邮件通知副本
- 2026-11-14 03:20:05
使用Kettle定时生成excel表,然后发送邮件通知副本一 安装包下载网址:www.hitachivantara.com 


1.1 pdi-ce-9.4.0.0-343.zip Pentaho 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.zip pentaho-server-ce-9.4.0.0-343.zip 是 Pentaho Business Analytics Server 社区版 (Community Edition, CE) 。这个 ZIP 文件包含了用于部署和运行 Pentaho BI 服务器所需的所有文件。Pentaho BI Server 是一个开源的商业智能平台,它提供了仪表板、报表、分析和数据集成等功能。BI Server 支持用户创建、管理和共享业务分析内容,帮助组织从各种数据源中提取价值。 这个安装包之所以大,是因为它包含了很多组件: 由于 Pentaho BI Server 非常强大,并且可以处理多种类型的数据源和目标,所以它的安装包相对较大。如果只需要使用 PDI 进行数据集成,那么可以单独下载 pdi-ce-9.4.0.0-343.zip,而不需要完整的 BI Server。 二 2.1 软件安装 此软件运行需要JDK环境。 Kettle解压到英文路径的文件夹中就可以了,不需要安装,点击data-integration文件夹中的Spoon.bat就能打开了。 下载mysql驱动mysql-connector-java-8.0.25.jar,并将驱动拷贝到lib目录下。 2.2 目的要求 从数据库中读取数据,然后把获取到的数据保存成 .xlsx 格式,并作为附件发送到邮箱。 三 3.1 新建 [转换] 
3.2 新建 [DB连接] 点击 [主对象树列表],新建 [DB连接]: 
选择连接类型、连接方式,填写主机名称、数据库名称、端口号、用户名、密码: 
测试数据库是否连通: 
3.3 添加输入 进入 [核心对象] 列表,在 [输入] 下拉栏里找到 [表输入],并拖动到右侧页面: 

双击右侧的 [表输入] 进行编辑,选择要连接的数据库,输入SQL查询语句: 
点击 [预览],查看数据是否正确: 
3.4 添加输出 进入 [核心对象] 列表,在 [输出] 下拉栏里找到 [Microsoft Excel 输出],并拖动到右侧页面: 
双击右侧的 [Microsoft Excel 输出] 进行编辑,填写要输出的文件的绝对路径,选择xlsx格式的扩展名(xls格式为老版本的excel),勾选 Stream XSLX data,点击确定保存: 
3.5 建立节点连接 按住Shift键,然后鼠标左键长按 [表输入],拖动鼠标到 [Microsoft Excel 输出] 处: 
3.6 执行转换 先将转换保存为 .ktr 格式的文件,然后点击执行转换: 

3.7 新建 [作业] 
将 [START]、[转换]、[添加文件到结果文件中]、[发送邮件]、[成功] 五个对象拖到右侧,并连接起来: 
双击 [START] 进行编辑:勾选重复,类型设置为天,设置每天8:00执行,确定保存: 
双击 [转化] 进行编辑:填写作业名称,浏览选择要执行的 .ktr 文件,确定保存: 
双击 [添加文件到结果文件中] 进行编辑:选择要作为邮件附件的文件,确定保存: 
双击 [邮件] 进行编辑: 



3.8 定时执行作业 1)使用 [START] 定时执行 使用自带的 start 来定时,须保持客户端窗口一直开启,若关闭,job也会停止。 修改start的定时频率后,需要关闭客户端窗口,然后重新打开spoon,重启job。 2)使用 Win 定时任务计划 新建.bat文件: 创建win定时任务(定时执行.bat文件),找到任务计划程序库,并创建一个新的目录: 
新增触发器: 
新建操作,其中起始于一定要选择Kitchen.bat所在目录,否则会执行失败: 
3)使用 Linux crontab 建立目录存放kettle文件: 将从windows上配置好的.ktr和.kjb程序分别放在transition目录和job目录下(或linux下编写后直接保存到该目录下),注意:job中的转换对应的目录需要做相应修改。 编写执行脚本: 设定crontab 定时执行任务。 
END 
点击上方“IT那活儿”公众号--专注于企业全栈运维技术分享,不管IT什么活儿,干就完了!!!
概述
Spoon 一个图形化界面工具,用于设计和执行数据转换任务。 Pan 一个命令行工具,用于在没有图形用户界面的情况下运行数据转换任务。 Kitchen 一个命令行工具,用于执行包含多个转换的任务作业。
Web 应用程序 包括所有用于构建和展示仪表板、报表和其他 BI 内容的 Web 应用程序。 Tomcat 一个开源的 Java Servlet 容器,用于托管 Pentaho BI Server。 Pentaho Data Integration (Kettle) 用于 ETL(抽取、转换和加载)过程的工具,如前所述。 示例数据和文档 提供给用户学习和测试使用的一些示例数据集以及关于如何使用 Pentaho BI Server 的文档。 插件和扩展 Pentaho 平台支持大量可选的插件和扩展,这些可能也会包含在安装包中。
简单使用
操作步骤
地址页面:添加收件人地址(使用空格分隔)、添加发件人地址;
服务器页面:添加SMTP服务器域名、勾选用户验证、输入发件邮箱的用户名和密码
邮件消息页面:填写邮件主题、主体内容等信息;
附件页面:勾选带附件、文件类型选择一般;
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.logmkdir /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产生的日志文件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
本文作者:段玉贇(上海新炬中北团队)
本文来源:“IT那活儿”公众号

本文来自网友投稿或网络内容,如有侵犯您的权益请联系我们删除,联系邮箱:wyl860211@qq.com 。