我如何控制提交大小,同时使用水壶写入文本文件?

问题描述 投票:2回答:1

我有一个Oracle表“命令”,其具有CLOB列“描述”和还主键是VARCHAR2“ID”。我读列和表中的每个记录我写一个txt文件 - order_Id.txt。表大约有4亿的记录,并写入使用文本文件输出的文件是给内存不足错误堆和GC开销超过限制。我怎么可以处理的数据块的数据?

  1. 在spoon.bat调整了-Xmx设置
  2. M / C具有16GB RAM

*其他详细信息* 1。这些都是spoon.bat设置。我使用的水壶PDI 7.0集PENTAHO_DI_JAVA_OPTIONS =“ - Xms5500m”“-Xmx15000m”“-XX:MaxPermSize参数=12384米” 2.我已经设置KETTLE_FILE_OUTPUT_MAX_STREAM_COUNT和KETTLE_FILE_OUTPUT_MAX_STREAM_LIFE也是1000 3.尽管如此,我看到它没有完成\冲洗文件。它继续写空白的文件,终于打破4.我重视与我做enter image description here具体步骤截图

kettle
1个回答
0
投票

有多大是CLOB?数据以块已被处理,但如果你的数据行是非常大的,那么你可能会耗尽内存。

默认情况下步骤之间的每一跳(缓冲器)开10K行。当缓冲区已满上一步中等待,停止向该行,直到有能力。

您可以降低,适合在下面的转换属性啤酒花的行数(在画布的空白区域单击鼠标右键)。这是每改造Ser和较小的缓冲区中的速度较慢的转变。

© www.soinside.com 2019 - 2024. All rights reserved.