首页 > 解决方案 > 处理来自多个平面文件的大量数据并根据需要转换为 xml 格式

问题描述

我们需要为数据库中多个表中可用的数据形成 XML 标记。(例如:客户(一行)、地址(1 行)、电话(3 行)到单个 XML 标记中。

因此,由于数十亿条记录存在于不同的表中,因此将其从数据库中导出为平面文件。

有了这些平面文件,需要形成xml标签。我尝试使用 Guava Table 加载这些数据并根据行标识符进行获取。但是在 Guava 表中加载大量数据时,出现以下错误。关于使用正确方法的任何指示?

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
    at java.lang.StringBuilder.toString(Unknown Source)
    at TableExample.substringeliminateDemo(TableExample.java:93)

标签: javaxmloracleguavaguava-table

解决方案


希望您使用默认的 Xmx 参数运行。尝试使用较大的 Xmx 值。使用 java -Xmx4g 运行以获得较大的堆空间(在本例中为 4GB)。但是,正确的方法是以较小的批量加载数据——而不是整个表数据。


推荐阅读