【问题标题】:Table output name from command line in pentaho kettlepentaho水壶中命令行的表输出名称
【发布时间】:2015-05-08 12:47:07
【问题描述】:

在我的 ETL 中有一个案例,我试图从命令行获取“表输出”名称。表名不对应任何流式字段的名称。有没有办法在pentaho水壶中完成它?

【问题讨论】:

  • 您是从 .bat 还是 .sh 构建的?错误是什么?
  • @Abercrombieande: .sh 我想将表输出名称作为命令行参数

标签: pentaho kettle


【解决方案1】:

Pentaho DI 是一个基于元数据的工具。我假设您将尝试从命令行传递输出表名称,如下所示:

.../pan.sh -file:"/home/user/sample.ktr" -param:table_output=SOMETABLE

假设上面的命令是你正在尝试的。

所以首先,改变sample.ktr (只是一个例子)的转换设置,并将参数名称:“table_output”添加到参数部分。

接下来,在表格输出步骤中,使用此参数名称,格式为:${table_output} 代替表格名称。这应该可以解决您的问题。


如果您将参数传递给作业。如上所述,添加参数的第一部分保持不变。

接下来您可以在作业中创建一个单独的转换 (.ktr) 文件,双击 ktr(来自作业文件),您将找到如下图所示的 PARAMETERS 部分。添加参数

第三,在 .ktr 文件中,重复上述步骤(第一部分),并使用 SET VARIABLE 或 TABLE OUTPUT。 SET 变量步骤将确保您在整个作业中都有可用的参数。主要取决于您的要求。

希望对你有帮助:)

【讨论】:

  • 非常感谢..!!这就是我要找的 ("${table_output}")
【解决方案2】:

这应该让你知道如何去做。由于转换只是 xml,因此您可以从中读取元数据。基本上你会找到表格输出步骤并将其设置为在这种情况下为“TABLE”的变量

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多