XML Pentaho Kettle 中的 Join Step 性能非常低
XML Join Step in Pentaho Kettle is very low in Performance
我的要求有点棘手。需要从文本文件输入生成复杂的 XML。我已经成功做到了,但它涉及“11 XML 连接”。因为当数据集很大时,代码的性能很差。
如何为复杂的 XML 生成代码并获得良好的性能?
有什么建议!!
根据一些建议,我删除了所有连接并采用流查找(如水壶示例中所示)和 'modified java script' 进行最终连接。
但它在 'final join step' 时失败了。下面是连接失败并抛出 'out of memory error'
var request = new XML()
request = <newbiz xsi:schemaLocation="http://www.crsoftwareinc.com/xml/ns/titanium/common/v1_0 newbiz.xsd" xmlns="http://www.crsoftwareinc.com/xml/ns/titanium/common/v1_0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<newbiz-header>
<total-consumers>1</total-consumers>
<creditor-name>DefCrdtr</creditor-name>
<total-principal>1</total-principal>
<total-charge>1</total-charge>
<total-interest>1</total-interest>
<total-balance>1</total-balance>
</newbiz-header>
<consumers>{xmlConsumerNewFinal}</consumers>
</newbiz>
var xmlconsumers_final=request.toXMLString();
有什么建议!!
是的,使用 xml 连接步骤它的性能真的很慢,我删除了所有这些步骤并替换为 script 步骤,是 e4x ecmascript(包含在pentaho kettle,是 rhino javascript 引擎,专门设计用于 xml)
例如,您可以使用 var foo = new XML();
不包含在其他 js 引擎中
使用此技术构建您的 xml 一切都会变得更快、更简单。
看看文档:
http://wso2.com/project/mashup/0.2/docs/e4xquickstart.html
我的要求有点棘手。需要从文本文件输入生成复杂的 XML。我已经成功做到了,但它涉及“11 XML 连接”。因为当数据集很大时,代码的性能很差。
如何为复杂的 XML 生成代码并获得良好的性能?
有什么建议!!
根据一些建议,我删除了所有连接并采用流查找(如水壶示例中所示)和 'modified java script' 进行最终连接。
但它在 'final join step' 时失败了。下面是连接失败并抛出 'out of memory error'
var request = new XML()
request = <newbiz xsi:schemaLocation="http://www.crsoftwareinc.com/xml/ns/titanium/common/v1_0 newbiz.xsd" xmlns="http://www.crsoftwareinc.com/xml/ns/titanium/common/v1_0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<newbiz-header>
<total-consumers>1</total-consumers>
<creditor-name>DefCrdtr</creditor-name>
<total-principal>1</total-principal>
<total-charge>1</total-charge>
<total-interest>1</total-interest>
<total-balance>1</total-balance>
</newbiz-header>
<consumers>{xmlConsumerNewFinal}</consumers>
</newbiz>
var xmlconsumers_final=request.toXMLString();
有什么建议!!
是的,使用 xml 连接步骤它的性能真的很慢,我删除了所有这些步骤并替换为 script 步骤,是 e4x ecmascript(包含在pentaho kettle,是 rhino javascript 引擎,专门设计用于 xml)
例如,您可以使用 var foo = new XML();
不包含在其他 js 引擎中
使用此技术构建您的 xml 一切都会变得更快、更简单。 看看文档: http://wso2.com/project/mashup/0.2/docs/e4xquickstart.html