kettle

部署Kettle做ETL开发并使用Crontab制作调度系统

做~自己de王妃 提交于 2019-11-28 14:44:45
背景说明: 在数据量较小,且数据源和装载地都是关系型数据库时,使用Kettle做ETL较为简便。 由于调度系统产品因为服务器环境方面的因素,而无法部署,故使用Linux的crontab定时器来制作简易调度系统是一个比较简便的解决方案。 本文旨在记录Kettle的部署及配置文件配置注意事项和如何自制简易调度系统,以便处理类似问题时方案的复用。 一、环境与工具 CentOS 6.7 JDK1.8/JDK1.7 pdi-ce-6.1.0.1-196.zip 二、Linux安装Kettle 2.1 安装JDK并配置环境变量 Kettle的运行需要jdk环境,所以需要先安装jdk。jdk的安装方法此处略去。 2.2 创建kettle用户 # useradd -m kettle 2.3 上传Kettle安装包并解压 创建kettle部署目录 # mkdir /opt/kettle 将安装包pdi-ce-6.1.0.1-196.zip上传至/opt/kettle目录下,并解压: # unzip /opt/kettle/pdi-ce-6.1.0.1-196.zip 2.4 更改属主属组和执行权限 # chown -R kettle:kettle /opt/kettle # chmod 755 /opt/kettle/pdi-ce-6.1.0.1-196/data-integration/*.sh

使用Kettle导入数据到ADB for PostgreSQL

不问归期 提交于 2019-11-28 10:44:56
Kettle简介 Kettle(现也称为Pentaho Data Integration,简称PDI)是一款非常受欢迎的开源ETL工具软件,主要用于数据整合、转换和迁移。Kettle除了支持各种关系型数据库,HBase MongoDB这样的NoSQL数据源外,它还支持Excel、Access这类小型的数据源。并且通过这些插件扩展,kettle可以支持各类数据源。 下图显示了Kettle和ADB for PostgreSQL之间的关系,数据源通过Kettle进行ETL或数据集成操作以后可以和ADB for PostgreSQL进行交互: Kettle支持的数据来源非常丰富,主要包括以下分类:​ 表输入 文本文件输入 生成记录/自定义常量 获取系统信息 各类格式文件输入 Json输入 以及其他输入 更详细的输入可以从界面中的“核心对象”的“输入”分类中查看。 Kettle支持的表输入来源自数据库连接中使用SQL语句获取,其中数据库连接支持非常丰富的连接方式,包括: Native(JDBC)连接 ODBC连接 OCI连接 JNDI连接 通过这些连接方式,可以支持连接大多数主流数据库,如Oracle, SQL Server, MySQL, DB2, PostgreSQL, Sybase, Teradata等等,更详细的连接信息可以参考官方文档: https://help.pentaho

Add a new data type to Pentaho Kettle

陌路散爱 提交于 2019-11-28 01:46:04
问题 I am trying to add a new data type (Geometry) to Kettle. I have added a new Value type to org.pentaho.di.compatibility. I have added a ValueGeometry class and made the necessary modifications to ValueInterface and Value. The code compiles but the new data type does not show up in plugins like Select. What am I missing here? Also I'd appreciate if you could point me towards the source code for these plugins. Thanks. 回答1: As of Kettle 5.0, it is possible to create a plugin to provide new Value

Kettle 使用相关

不打扰是莪最后的温柔 提交于 2019-11-27 20:36:37
1、计算器组件 NVL(A,B): If A is not NULL, return A, else B. Note that sometimes your variable won't be null but an empty string. 2、编辑-》设置环境变量:此时设置的环境变量应用到当前资源库下的所有Job和转换中(当Job和转换中以变量形式传递值时)。 3、Kettle工具界面未关闭时,设置过的环境变量不会被清除,当关闭重启后,环境变量会被清除掉。 4、DBF文件作为输入项时,应用【XBase输入】组件。 5、在Job中增加转换时,需要注意转换的路径设置,已经转换本身所处的位置。 6、同一个Kettle文件,如果从A拷贝到B,那么文件内设置的相对路径值可能会被清除,清除具体发生步骤暂不明确。 7、当打开资源库时,通过拖动的形式打开转换或者Job时,该转换或Job的默认存储位置为当前资源库所在的位置。 来源: https://www.cnblogs.com/daochangone/p/9166728.html

Using Pentaho Kettle, how do I load multiple tables from a single table while keeping referential integrity?

柔情痞子 提交于 2019-11-27 19:46:36
Need to load data from a single file with a 100,000+ records into multiple tables on MySQL maintaining the relationships defined in the file/tables; meaning the relationships already match. The solution should work on the latest version of MySQL, and needs to use the InnoDB engine; MyISAM does not support foreign keys. I am a completely new to using Pentaho Data Integration (aka Kettle) and any pointers would be appreciated. I might add that it is a requirement that the foreign key constraints are NOT disabled. Since it's my understanding that if there is something wrong with the database's

kettle的系列教程

大城市里の小女人 提交于 2019-11-27 17:20:08
kettle的系列教程 kettle--window开发环境和linux运行环境的迁移 kettle的输入输出组件和脚本组件 kettle--变量的使用 kettle的资源库 kettle的job kettle的hello world 出处:http://www.cnblogs.com/dongdone/category/861657.html ================================================================================= KETTLE系列5--新建JOB KETTLE系列4--新建转换 KETTLE系列3--资源库中文乱码异常解决 KETTLE系列2--创建资源库 KETTLE系列1--KETTLE下载与启动 出处:https://blog.csdn.net/ye1142262478/article/category/3152425 ================================================================================= Kettle资源库的创建及密码修改 Kettle Plugin插件开发指导 Kettle Job机制 Kettle 体系架构 出处:https://blog.csdn.net/romaticjun2011

Kettle基本使用

孤街醉人 提交于 2019-11-27 17:16:01
Kettle基本使用 Kettle的几个子程序的功能和启动方式 Spoon.bat     图形界面方式启动作业和转换设计器。 Pan.bat       命令行方式执行转换。 Kitchen.bat     命令行方式执行作业。 Carte.bat       启动web服务,用于Kettle的远程运行或集群运行。 Encr.bat      密码加密。 转换和作业 Kettle 的 Spoon.bat 设计器用来设计转换(Transformation)和作业(job)。 转换主要是针对数据的各种处理,一个转换里可以包含多个步骤(Step)。 作业是比转换更高一级的处理流程,一个作业里包括多个作业项(Job Entry),一个作业项代表了一项工作,转换也是一个工作项。 来源: https://www.cnblogs.com/Diyo/p/11371254.html

Problems connecting Pentaho Kettle/Spoon to Heroku PostgreSQL using SSL

你离开我真会死。 提交于 2019-11-27 16:45:02
问题 I'm trying to connect spoon to a Heroku PostgreSQL instance using the JDBC driver that came with Spoon. Heroku requires SSL for it's stand alone PostgreSQL instances, which I have enabled. I'm able to connect to the database using other client software using SSL so this seems to be specific to Java/JDBC. I don't know enough about Java to troubleshoot this so hoping someone out there has been though this before. I get the following and rather verbose error message which mentions a

kettle学习笔记05—资源库的使用

早过忘川 提交于 2019-11-27 15:42:19
资源库是用来保存转换任务的, 它用以记录我们的操作步骤和相关的日志,转换,JOB 等信息。用户通过图形界面创建的的转换任务可以保存在资源库中。资源库可以是各种常见的数据库,用户通过用户名/ 密码来访问资源库中的资源,默认的用户名/ 密码是admin/admin. 资源库并不是必须的,如果没有资源库,用户还可以把转换任务保存在 xml 文件中。 一.资源库的用处 (1)方便多人开发(和SVN、git作用类似),可以将转换、作业直接保存在数据库中而不是保存在本地 (2)连接资源库不需要每一次都新建数据库连接 二.资源库3种类型 Pentaho Repository Database Repository(使用数据库存储) File Repository(使用文件存储) 三.资源库的创建方式 (1)Pentaho Repository资源库(比较坑,连接不上,启动不了) 右上角connect连接-->点击get start-->进入新建页面, 填写display name并勾选Launch connect on startup (2) Database Repository 点击右上角connect-->选择other repository-->database repository 我们填一个connection的名字,然后配置一个资源库的连接就可以了

kettle学习笔记06—常用基本操作

旧巷老猫 提交于 2019-11-27 15:41:59
1.启动方式 Spoon.bat: 图形界面方式启动作业和转换设计器。 Pan.bat: 命令行方式执行转换。 Kitchen.bat: 命令行方式执行作业。 2.转换和作业 Kettle 的 Spoon 设计器用来设计转换(Transformation)和 作业(Job)。 •转换主要是针对数据的各种处理,一个转换里可以包含多个步骤(Step)。 •作业是比转换更高一级的处理流程,一个作业里包括多个作业项(Job Entry),一个作业项代表了一项工作,转换也是一个作业项。 3.输入步骤简介 输入类步骤用来从外部获取数据,可以获取数据的数据源包括,文本文件(txt,csv,xml,json)数据库、 Excel 文件等桌面文件,自定义的数据等。对特殊数据源和应用需求可以自定义输入插件。 例子:生成随机数步骤 4.转换步骤简介 转换类步骤是对数据进行各种形式转换所用到的步骤。例如:字段选择、计算器、增加常量 5.流程步骤简介 流程步骤是用来控制数据流的步骤。一般不对数据进行操作,只是控制数据流。 例如:过滤步骤 6.连接步骤简介 连接步骤用来将不同数据集连接到一起。 例如:笛卡尔乘积 7.输出步骤简介 输出步骤是输出数据的步骤,常见的输出包括文本文件输出、表输出等,可以根据应用的需求开发插件以其他形式输出。例如:表输出 来源: https://blog.csdn.net