当我运行包含JDBC源和“排序转换”的管道时,以后的结果存储在其他数据库中。该管道对于较小的数据集可以正确执行,但问题是当考虑5L的7列记录时,它显示 GC-Exception 没有内存可处理和一些相关的异常
我使用Apache Spark作为运行程序,并且在Direct(local-runner)和Spark(Apache Spark Runner)中进行的测试在这2种情况下也得到了相同的响应
我需要建议如何避免与内存相关的异常
我们可以批量处理数据吗?如果是,如何实现,在这种情况下,我们将获得多个输出而不是单个输出如何处理
还是在Runner级别(在工作分配时)需要配置(例如Core,Spark中的Executor)?如果是的话,他们是什么?
或者应该配置Java堆内存,因为我也看到了Java堆内存异常
首先抛出 GC异常,因为没有内存要处理,因为对于排序类型转换,需要大的内存来处理数据