在KNIME中以批处理模式执行PMML工作流程

时间:2016-02-26 07:26:36

标签: knime

我正在评估KNIME及其PMML支持。最近尝试执行以 PMML格式导出的工作流,导致以下错误:“工作流程被另一个Knime实例锁定”

请注意,我正在批处理模式中使用 KNIME Analytics Platform (不是KNIME服务器)执行工作流程。我已阅读以下相关问题,但它们似乎并非以PMML为重点:

为了在批处理模式中执行工作流程,我正在使用this blog post中描述的方法(我还尝试了-workflowFile=而不是-workflowDir=

P.S。我的一位同事提交了similar question to KNIME forum,但由于缺乏活动,需要尽快解决,我正在征求本网站人员的帮助。

P.P.S。几个澄清:1)在上述场景中没有(用户发起的)并发KNIME会话正在运行; 2)当前(工作流)目录中没有锁文件。

2 个答案:

答案 0 :(得分:2)

您不能在批处理模式下使用KNIME执行,也不能在PMML模型中执行,只能使用工作流程。所以你需要四个节点来完成这项工作:

将它们配置并保存为工作流,您应该执行该工作流而不是PMML模型。它应该是这样的:

|CSV Reader|----|                 |
                |JPMML Classifier |----->|CSV Writer|
|PMML Reader|---|                 |

(如果需要,您可以创建更复杂的工作流程,这只是一个基本示例。)

现在您应该能够按批处理模式执行工作流程,如您提到的博客文章所述。使用流变量,您还可以调整执行运行时。 (使用KNIME Server和QuickForm节点,您可以获得更好的用户界面。)

请确保使用与PMML模型匹配的分类器/预测器/群集分配器。另请注意,这些节点应该与KNIME生成的PMML模型一起使用,当它们不能与其他工具生成的模型一起使用时可能会出现角落(特别是如果这些工具在模型中使用了扩展)。

*:尽管提到这些需要KNIME labs扩展为JPMML,但如果您对模型有更多了解,也可以使用特定于模型的常规KNIME节点

答案 1 :(得分:1)

KNIME论坛上有一个答案:

https://tech.knime.org/forum/knime-general/running-a-pmml-file-in-batch-mode

工作区(不是工作流!)可能已被锁定,因为他在尝试运行批处理模式时仍然打开GUI。

在PMML中导出工作流程时,您的意思是什么?我希望它是一个用PMML导出的模型。

- Rosaria