在kettle中的转换或者作业等资源的存储的仓库称为资源库:分为文件资源库、数据库资源库。
一个转换或者作业可以属于某个资源库或者一个单独的文件形态存在。
一、数据库资源库
1.1在mysql中创建一个数据库作为数据库资源库
1.2创建数据库资源库工具--》资源库--》连接资源库--》点击加号--》选择创建数据库资源库
因为我们要使用mysql作为资源库,所以kettle需要连接到mysql,也就是说需要mysql的驱动包,我们要把驱动包拷贝到kettle的lib目录下。
创建数据库连接并且通过测试
选择创建或更新
1.3创建完成后,验证数据库中是否创建了很多的表
看到这些表,就表示创建完成了一个数据库资源库了。
1.4创建一个转换,并且创建一个DB连接,验证这个不共享的DB连接能不能在资源库*享
经过测试是可以的。
二、文件资源库
工具--》资源库--》断开资源库
使用上面的步骤来退出数据库资源库
2.1创建文件资源库
和上面创建数据库资源库的方式一样,但是选择的是创建文件资源库。
2.2在文件资源库下,创建一个DB连接,验证是否能在文件资源库内共享
答案是可以的
三、需求:将mysql中的表导出成txt文件
在ldp_huyu数据库中有如下的一张person表
3.1建立如下图的转换
其中表输入的配置:
其中文本文件输出的配置:
3.2运行这个转换
最后生成文件
四、数据库资源库和文件资源库的比较
使用数据库来管理,更容易跨平台和共享,但是在版本控制方面不如文件资源库好,并且数据库需要走网络,网络连接的异常也会导致job失败
使用文件资源库比较麻烦的是跨平台,一般和svn等版本控制的工具结合使用。
出处:https://www.cnblogs.com/dongdone/p/5729718.html
=======================================================================================
Kettle资源库的创建及密码修改
点击新建图标
选择数据库类型资源库Kettledatabase repository,点击“确定”
在“Database Connection”窗口,选择数据库类型,并填写数据库连接的相关信息,本实例选用oracle数据库。
点击test按钮进行数据库连接测试
数据库连接正确后,点击“确定”,再点击“OK”,回到“资源库信息窗口”,点击“创建或更新”按钮
在弹出的“简单SQL编辑器”窗口中,点击“执行”按钮,执行相应的资源库创建脚本。(用户可以查看这些脚本具体是进行了什么操作:创建了46张表,并插入了一些相关信息数据,如R_USER表里插入了admin和guest两个用户的信息,这两个用户也是该资源库的登录用户,想深入研究资源库的用户可以并一步去了解相关内容)
在“资源库信息”窗口,填写资源库的ID和名称,然后点击“确定”按钮。
温馨提示:建议使用英名,因为使用中文容易出现乱码,而使得退出后,下次登录资源库时无法找到相应的配置,遇到此类情况,可根据下一章节“资源库名称乱码问题解决方法”进行相关修改设置。
在“资源库连接RepositoryConnection”窗口,选择刚才创建的资源库“备付金系统”,填写用户名和密码,新建的资源库的默认用户和密码有两个,admin/admin和guest/guest,然后点击“确定OK”按钮,即可登录资源库。
为了资源库的安全,我们需要修改资源库用户的登录密码,“Tools” -->“资源库”-->“探索资源库”,可以使用快捷键CTRL + E。
在资源库探索“Repository explorer”窗口,选择“Security”选项卡,然后选择需要修改的用户再点击编辑按钮
填写新密码,然后点击“OK”按钮即可完成用户密码的修改
出处:https://blog.csdn.net/romaticjun2011/article/details/40685113
=======================================================================================
kettle常见的资源库有3种:数据库资源库、文件资源库、pentaho资源库。
文件资源库是在一个文件目录下定义一个资源库,因为kettle使用的是虚拟文件系统(Apache VFS),所以这里的文件目录是一个广泛的概念,包括了zip文件、web服务、FTP服务。
pentaho资源库是一个插件(kettle企业版中有),实际是一个内容管理系统(CMS),它具备一个理想的资源库的所有特性,包括版本控制和依赖完整性检查。
数据库资源库是把所有的ETL信息保存在关系型数据库中,包括数据库连接、转换和作业。将已开发的ETL转换、作业和相关配置保存在数据库资源库中便于保存、管理以及远程调度。本篇文章主要介绍数据库资源库创建方法:
1、进入spoon,工具--资源库--连接资源库,点击加号+新建资源库
2、选择数据库资源库,点击确定
3、数据库连接选择新建,配置数据库连接信息,建议新建一个空白数据库
4、配置好数据库连接,选择创建或更新,继续选择是
5、选择执行SQL语句
6、提示执行SQL错误,选择确定,稍后在处理这个错误,对上述sql执行提示的所有错误全部选择确定
7、现在连接刚刚创建的资源库会报错,如下
8、下面进入sql server客户端(因为这里使用的是sql server数据库资源库,根据使用的资源库作调整),连接刚刚创建的资源库,执行下面的SQL语句
DELETE TABLE R_VERSION;
CREATE TABLE R_VERSION
(
ID_VERSION INTEGER,
MAJOR_VERSION INTEGER,
MINOR_VERSION INTEGER,
UPGRADE_DATE DATETIME,
IS_UPGRADE CHARACTER (1)
);
INSERT INTO R_VERSION (ID_VERSION, MAJOR_VERSION, MINOR_VERSION, UPGRADE_DATE, IS_UPGRADE)
VALUES (1, 5, 0, '2017-09-13', 'N');
不同数据库的sql 语句写法可能不同,目标是让上面标红的sql语句成功执行
现在连接刚刚创建的数据库资源库会发现用户名密码错误,执行下面的sql语句,创建一个新的用户,此时的用户名密码都是admin
INSERT INTO R_USER (ID_USER, LOGIN, PASSWORD, NAME, DESCRIPTION, ENABLED)
VALUES (1, 'admin', '2be98afc86aa7f2e4cb79ce71da9fa6d4', 'Administrator', 'User manager', '1')
现在重新连接刚刚创建的资源库,用户名密码都是admin,连接成功!
出处:https://www.cnblogs.com/jszmrx741/articles/6362621.html
=======================================================================================
2.1 资源库的介绍:
资源库是用来保存转换任务的,用户通过图形界面创建的的转换任务可以保存在资源库中。
资源库可以使多用户共享转换任务,转换任务在资源库中是以文件夹形式分组管理的,用户可以自定义文件夹名称。
资源库有两种形式:
一、Kettledatabase repository,即保存在各种常见的数据库资源库类型,用户通过用户名/密码来访问资源库中的资源,默认的用户名/密码是admin/admin和guest/guest。
二、Kettle filerepository,保存在服务器硬盘文件夹内的资源库类型,此类型的资源库无需用户进行登录,直接进行操作。
(当然,资源库并不是必须的,如果没有资源库,用户还可以把转换任务保存在xml文件中。为了方便管理,建议用户建立并使用数据库类型资源库Kettle database repository。)
2.2 创建资源库:
运行spoon之后:
选择 Tools---->资源库----->连接资源库:
在弹出的窗口中,选择加号 进行新建,如下图:(此处由于之前有一个资源库,因此会提示输入用户密码)
在 “Select the repository type” 窗口中,选择第一个 “Kettle database repository :...” ,点击“确定”:
在资源库信息中,选择“新建”来新建数据库连接:
填写数据库信息:(此处使用oracle数据库,jdbc连接方式)
点击“Test”测试连接:
点击“确定”,关闭测试窗口,点击“OK”,完成数据库信息填写,回到资源库信息界面,选择“testdb1”,并填写 ID和名称:
点击“创建或更新”,弹出提示如下:
点击“是”,会弹出设置管理员密码的窗口:
输入,此处使用password,确定,弹出提示窗口如下:
点击“是”,会生成新窗口,内容是SQL脚本:
由于已经建立过一个资源库,因此此处的脚本与第一次的不太一样。
点击“Execute”执行脚本,弹出SQL运行结果的窗口:
点击“确定”,关闭此窗口,然后点击“关闭”,关闭SQL提示的窗口:
关闭SQL窗口之后,回到资源库信息的界面:
点击“确定”,关闭资源库信息窗口,此时就到了连接资源库的界面:
选择要连接的资源库“测试资源库”,输入管理员用户admin,密码password(刚刚设置的密码),点击“OK”进行连接。
此时可以看一下左上角的信息:
说明我们此时连接了资源库“testdb1”。
可以与最开始时没有连接资源库时的状态对比:
创建资源库就完美完成了。是不是很简单~~~~~
之后每次打开Spoon都会提示连接资源库,连接资源库之后,我们做的所有开发包括转换、job等都保存在资源库中。
如果没有连接资源库,我们做的转换、job等开发可以保存为本地文件。
出处:https://blog.csdn.net/ye1142262478/article/details/59106798
=======================================================================================