资源库:保存元数据的地方,元数据(关于数据的数据,描述性数据)
ETL的元数据:etl要进行的任务
kettle中元数据的存储方式
1.资源库
文件资源库,数据库资源库,kettle4后资源库类型可以插件扩展
2.XML文件
.ktr转换文件的XML根节点必须是<transformation>
.kjb作业XML的根节点是<job>
数据库资源库
1.把kettle的元数据串行化到资源库,如R_TRANSFORMATION表保存了kettle转换的名称,描述等属性
2.在spoon里创建和升级数据库资源库
缺点:不适合团队开发,不能锁住自己的作业,别人会覆盖.大规模开发最好一个人发布
文件资源库
在文件的基础上封装,实现了org.pentaho.di.repository.Repository接口,是kettle4以后版本里增加的资源库类型
缺点:没历史版本,难以团队开发
不使用资源库
直接保存为ktr或者kjb文件
解决以上缺点,可以svn对文件进行版本控制
创建数据库资源库
选择database (ps:创建文件资源库就是选第二个了)
Create New Connection
填写,测试连接
确认,然后back
然后选择连接,finished然后会转一下
ps:使用资源库
初始账号密码 admin/admin登陆进去
修改密码,工具->资源库->探索资源库->编辑密码确认,然后右上角断掉连接再登陆admin密码变化
在connection设置绑定的数据库test10中就会有相关的表出现
创建一个新的转换并且保存,在转换表t_transformation中就会保存该转换信息
工具->资源库->探索资源库 也会展现转换信息
开发资源库到测试资源库的移植
1.打开->断开旧的->重连新的>保存
2.导出(探索资源库-浏览)->导入
kettle资源库参数化
意义:资源库之间移植作业时,各阶段环境不一样,在作业里使用的资源库等元数据不能硬编码
几个方法
1.kettle.properties,文件位于java的user.home目录下
2.自定义properties文件,通过属性文件输入步骤读写
3.使用参数表