查看“Kettle资源库、运行方式与日志”的源代码
←
Kettle资源库、运行方式与日志
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
== kettle资源库 == 资源库是用来保存转换任务的,用户通过图形界面创建的的转换任务可以保存在资源库中。 资源库可以使多用户共享转换任务,转换任务在资源库中是以文件夹形式分组管理的,用户可以自定义文件夹名称。 === kettle资源库元数据 === * 资源库 资源库包括文件资源库、数据库资源库 Kettle 4.0 以后资源库类型可以插件扩展 * XML文件 ktr 转换文件的XML的根节点必须是 <transformation> kjb 作业XML的根节点是<job> === kettle资源库类型 === ==== 数据库资源库: ==== * 把 Kettle 的元数据串行化到数据库中,如 R_TRANSFORMATION 表保存了Kettle 转换的名称、描述等属性。 * 在Spoon 里创建和升级数据库资源库 ==== 文件资源库: ==== 在文件的基础上的封装,实现了 org.pentaho.di.repository.Repository 接口。是Kettle 4.0 以后版本里增加的资源库类型。 ==== 不使用资源库: ==== 直接保存为ktr或kjb文件。 === 资源库操作 === ==== 新建资源库: ==== kettle7.0后新建方式略有不同,新建资源库在右上角->connect, [[文件:Ct2-1.png|无框]] 选择资源库的几点参考对比: [[文件:Ct2-2.png|无框|697x697像素]] === 统一参数管理 === 像资源库的一些连接信息应该是不能硬编码写死的,所以kettle也提供了kettle.properties文件来进行全局变量的控制。 kettle.properties,文件位于 java 的 user.home 目录下。 找到user.home下的.kettle/kettle.properties 写入变量后,使用${var.name}进行变量读取即可(类似shell的变量形式) // 使用参数表等情况,暂不赘述 == Kettle运行方式 == 运行方式主要分为:图形化、命令行、API。 图形界面:Spoon 命令行:Pan、Kitchen API:Kettle Java API 嵌入到其他应用 === Spoon === 本地运行:前面的都是采用本地运行,直接点击运行按钮进行运行的,不再赘述。 远程:Carte * Carte 是内嵌 Jetty 的 http server。 * Carte执行命令 carte localhost 8080 需要现在服务器上运行命令,格式为carte ip 端口 (端口可以随意,只要不冲突即可) carte localhost 8080 // 主要命令的位置(未配置PATH需要切到指定目录) 然后在转换的主对象下找到子服务器 [[文件:Ct2-3.png|无框|408x408像素]] [[文件:Ct2-4.png|无框|635x635像素]] // 默认用户名和密码为cluster/cluster 集群方式,暂不介绍 === 命令行 === 主要有Pan和Kitchen,但是由于项目都是以作业为主,所以还是Kitchen使用的更多 两种方式的参数列表如下:(直接敲命令kitchen等不带任何参数,则列出帮助) [[文件:Ct2-5.png|无框|717x717像素]] ==== Pan 参数名列表: ==== * /rep : 资源库名称 * /user : 资源库用户名 * /pass : 资源库密码 * /trans : 要启动的转换名称 * /dir : 目录(不要忘了前缀 /) * /file : 要启动的文件名(转换文件) * /level : 日志级别 (Error, Nothing, Minimal, Basic , Detailed, Debug, Rowlevel) * /logfile : 要写入的日志文件 * /listdir : 列出资源库里的目录 * /listtrans : 列出指定目录下的转换 * /listrep : 列出可用资源库 * /exprep : 将资源库里的所有对象导出到 XML 文件中 * /norep : 不要将日志写到资源库中 * /safemode : 安全模式下运行: 有额外的检查 * /version : 显示转换的版本,校订和创建日期 * /param : 设置参数,参数格式<NAME>=<VALUE>,例如-param:FOO=bar * /listparam : 列出转换里已经设置好的参数。 * /maxloglines : 内存中保存日志的最大日志行数 * /maxlogtimeout : 内存中保存日志的最长时间 ==== Kitchen 参数名列表: ==== * /rep : 资源库名称 * /user : 资源库用户名 * /pass : 资源库密码 * /job : 要启动的作业名称 * /dir : 目录(不要忘了前缀 /) * /file : 要启动的文件名(转换文件) * /level : 日志级别 (Error, Nothing, Minimal, Basic , Detailed, Debug, Rowlevel) * /logfile : 要写入的日志文件 * /listdir : 列出资源库里的目录 * /listjobs : 列出指定目录下的作业 * /listrep : 列出可用资源库 * /exprep : 将资源库里的所有对象导出到 XML 文件中 * /norep : 不要将日志写到资源库中 * /safemode : 安全模式下运行: 有额外的检查 * /version : 显示转换的版本,校订和创建日期 * /param : 设置参数,参数格式<NAME>=<VALUE>,例如-param:FOO=bar * /listparam : 列出转换里已经设置好的参数 * /export : 把作业依赖的所有资源导出到一个zip 文件里 * /maxloglines : 内存中保存日志的最大日志行数 * /maxlogtimeout : 内存中保存日志的最长时间 ==== 日志级别: ==== * Error: 只记录错误信息 * Nothing: 不记录任何信息,执行效率最高 * Minimal: 记录最少的信息 * Basic: 记录基本信息 * Detailed: 记录详细信息 * Debug: 记录调试信息 * Rowlevel: 转换过程中的每一行都记录下来,日志最详细,执行效率最低 命令格式:/参数名:值 或-参数名=值 新建一个测试作业: [[文件:Ct2-6.png|无框]] 执行作业示例: ./kitchen /rep:r1 /user:admin /pass:admin /job:j1 /dir:/ /logfile:F:/log3.txt // 更多示例,待补充 == 日志 == === 文件日志位置 === 通过/logfile在命令行中运行Job时设置 linux中通过管道符进行输出重定向 默认的日志文件保存在 java.io.tmpdir 目录下,文件名类似spoon_xxx.log 图形化界面也有日志输出窗口 === 日志参数设置 === Spoon中通过工具->选项进行部分日志输出窗口设置 kettle.properties中相关参数设置: KETTLE_MAX_LOG_SIZE_IN_LINE 变量 KETTLE_MAX_LOG_TIMEOUT_IN_MINUTES变量 === 数据库日志 === 转换有4个日志表: * 转换日志表 * 步骤日志表 * 性能日志表 * 日志通道日志表 * 作业日志表 * 作业日志表 * 作业项日志表 * 日志通道日志表 转换的日志设置在:编辑->设置;选择日志(作业同理) [[文件:Ct2-7.png|无框|807x807像素]] 选择数据库连接->如果数据库中没有这个表,则可以点击下面的SQL,再通过执行进行新建,转换表配置如下: [[文件:Ct2-8.png|无框|802x802像素]] 其他日志表类似,监控表需要开启监控: [[文件:Ct2-9.png|无框]] 日志简要介绍如下: [[文件:Ct2-10.png|无框|518x518像素]]
返回至“
Kettle资源库、运行方式与日志
”。
导航菜单
个人工具
登录
名字空间
页面
讨论
变体
视图
阅读
查看源代码
查看历史
更多
搜索
导航
-==扬==-
-==帆==-
-==起==-
-==航==-
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息