XML 在 IBM Streams 中处理大型 XML 文件时解析运算符抛出错误

XML Parse operator throws error when working with large XML file in IBM Streams

XML 解析运算符在处理大型 XML 文件时抛出此错误: XML 解析期间发生以下错误:内部错误:巨大的输入查找

虽然文档说这已在 Streams 4.2.1.3 中修复,我们可以将此参数添加到 XML Parse 运算符以修复它: xmlParseHuge: true;

低版本Streams不支持上述参数。我如何在 Streams 4.2.1.1 中修复此问题?

如果 XML 数据来自 FileSource,请尝试使用较小的块大小来解析文件的解决方法: 改成10000u*1024u即可成功完成大XML解析

stream<blob dataBlob,rstring fName> FileLoadedFromFS = FileSource(DirFileScanned){

param format : block;
      blockSize : 10000u*1024u;
      compression : gzip;
      parsing : fast;
      output FileLoadedFromFS:
      fName = FileName();
    }

发件人:http://www-01.ibm.com/support/docview.wss?uid=swg1IT22914

在 Streams 4.2.1.1 中没有更好的方法来做到这一点 我最终决定使用拓扑工具包来制作一个 Python 运算符。 XML 元组通过此运算符传递,xml.etree.ElementTree 库用于解析 XML、提取所需数据并 return 返回元组类型。