Spring batch 当流程从单个文件读取时,如何在多台机器之间分割Spring Batch的工作?

Spring batch 当流程从单个文件读取时,如何在多台机器之间分割Spring Batch的工作?,spring-batch,Spring Batch,我的流程是: 从单个文件读取文件大小~1TB 处理每行 将每行写入2个输出文件 如何在多台机器之间分配工作以减少总体运行时间 此用例至少有三种技术: 使用命令或等效命令对文件进行物理分区,以创建多个分区。然后使用分区步骤来处理每个分区。 逻辑分区文件请参阅中所附示例中的FlatFilePartitioner,并使用分区步骤处理每个分区 使用暂存表加载其中的文件,然后使用分区步骤处理表上的分区,例如ids1->1000、1001->2000等 希望这能有所帮助。谢谢马哈茂德,这些选项听起来不错,我

我的流程是:

从单个文件读取文件大小~1TB 处理每行 将每行写入2个输出文件
如何在多台机器之间分配工作以减少总体运行时间

此用例至少有三种技术:

使用命令或等效命令对文件进行物理分区,以创建多个分区。然后使用分区步骤来处理每个分区。 逻辑分区文件请参阅中所附示例中的FlatFilePartitioner,并使用分区步骤处理每个分区 使用暂存表加载其中的文件,然后使用分区步骤处理表上的分区,例如ids1->1000、1001->2000等
希望这能有所帮助。

谢谢马哈茂德,这些选项听起来不错,我会进一步研究,然而,我一直在寻找一种方法来使用多台机器的功能,这些建议是指在一台机器上提高性能,不是吗?分区步骤可以通过多线程的单个JVM本地执行,也可以通过多个工作JVM远程执行。您可以在此处找到更多详细信息:和示例:。