kettle学习笔记(三)——kettle资源库、运行方式与日志

一、kettle资源库

  资源库是用来保存转换任务的,用户通过图形界面创建的的转换任务可以保存在资源库中。

        资源库可以使多用户共享转换任务,转换任务在资源库中是以文件夹形式分组管理的,用户可以自定义文件夹名称。

  1.ketle资源库元数据

  • 资源库
    资源库包括文件资源库、数据库资源库
    Kettle 4.0 以后资源库类型可以插件扩展
  • XML 文件
    .ktr 转换文件的XML的根节点必须是 <transformation>
.    kjb 作业XML的根节点是<job>

  2.kettle资源库类型

  数据库资源库
    • 把 Kettle 的元数据串行化到数据库中,如 R_TRANSFORMATION 表保
    存了Kettle 转换的名称、描述等属性。
    • 在Spoon 里创建和升级数据库资源库
  文件资源库:
    在文件的基础上的封装,实现了 org.pentaho.di.repository.Repository 接口。
    是Kettle 4.0 以后版本里增加的资源库类型
  不使用资源库
    直接保存为ktr 或 kjb 文件。

  3.资源库操作

    新建资源库:

    kettle7.0后新建方式略有不同,新建资源库在右上角->connect,

    详细新建图文步骤,参考:https://blog.csdn.net/m0_37979608/article/details/77096201

    使用默认的admin/admin即可登陆到资源库!

    如果使用中文进行了资源库命名,将会出现资源库无法新建的问题。解决方案,参考https://blog.csdn.net/liuwenbiao1203/article/details/77579436

    导入/导出资源库:

    导航栏->工具->导入/导出资源库,或者探索资源库进行指定目录的导出,导出为.xml文件即可!

    资源库管理:

    kettle新版管理也在右上角:

    

    选择资源库的几点参考对比:

    

  4.统一参数管理

    像资源库的一些连接信息应该是不能硬编码写死的,所以kettle也提供了kettle.properties文件来进行全局变量的控制

    kettle.properties,文件位于 java 的 user.home 目录下。(通过java SystemProp运行class文件可以查看到)

cafe babe 0000 0031 0023 0a00 0800 130a
0014 0015 0900 1400 160a 0017 0018 0700
0d0a 0005 0013 0a00 0500 1907 001a 0100
063c 696e 6974 3e01 0003 2829 5601 0004
436f 6465 0100 0f4c 696e 654e 756d 6265
7254 6162 6c65 0100 0a53 7973 7465 6d50
726f 7001 0005 7072 696e 7401 0004 6d61
696e 0100 1628 5b4c 6a61 7661 2f6c 616e
672f 5374 7269 6e67 3b29 5601 000a 536f
7572 6365 4669 6c65 0100 0f53 7973 7465
6d50 726f 702e 6a61 7661 0c00 0900 0a07
001b 0c00 1c00 1d0c 001e 001f 0700 200c
0021 0022 0c00 0e00 0a01 0010 6a61 7661
2f6c 616e 672f 4f62 6a65 6374 0100 106a
6176 612f 6c61 6e67 2f53 7973 7465 6d01
000d 6765 7450 726f 7065 7274 6965 7301
0018 2829 4c6a 6176 612f 7574 696c 2f50
726f 7065 7274 6965 733b 0100 036f 7574
0100 154c 6a61 7661 2f69 6f2f 5072 696e
7453 7472 6561 6d3b 0100 146a 6176 612f
7574 696c 2f50 726f 7065 7274 6965 7301
0004 6c69 7374 0100 1828 4c6a 6176 612f
696f 2f50 7269 6e74 5374 7265 616d 3b29
5600 2100 0500 0800 0000 0000 0400 0100
0900 0a00 0100 0b00 0000 1d00 0100 0100
0000 052a b700 01b1 0000 0001 000c 0000
0006 0001 0000 0005 0001 000d 000a 0001
000b 0000 0019 0000 0001 0000 0001 b100
0000 0100 0c00 0000 0600 0100 0000 0a00
0100 0e00 0a00 0100 0b00 0000 2c00 0200
0200 0000 0cb8 0002 4c2b b200 03b6 0004
b100 0000 0100 0c00 0000 0e00 0300 0000
0f00 0400 1000 0b00 1200 0900 0f00 1000
0100 0b00 0000 2d00 0200 0200 0000 0dbb
0005 59b7 0006 4c2b b600 07b1 0000 0001
000c 0000 000e 0003 0000 0016 0008 0017
000c 0018 0001 0011 0000 0002 0012 
SystemProp.class
// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov  Date: 2014-8-18 15:05:00
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3) 
// Source File Name:   SystemProp.java

import java.util.Properties;

public class SystemProp
{

    public SystemProp()
    {
    }

    public void SystemProp()
    {
    }

    public void print()
    {
        Properties properties = System.getProperties();
        properties.list(System.out);
    }

    public static void main(String args[])
    {
        SystemProp systemprop = new SystemProp();
        systemprop.print();
    }
}
SystemProp.jad

    找到user.home下的.kettle/kettle.properties

    写入变量后,使用${var.name}进行变量读取即可(类似shell的变量形式)

  // 使用参数表等情况,暂不赘述

猜你喜欢

转载自www.cnblogs.com/jiangbei/p/8987403.html