我正在使用spring批处理框架。我正在寻求满足以下要求的解决方案。
假设数据库表中有5000条记录。我想要创建5个块(即每个块正在处理1000条记录)&应该对每个块的处理进行分区(每个分区进程200记录的1000个记录由5个分区组成)。
这与分区配置不同,如下所示。
<batch:step id="partitionRBMRead" next="job1.flow1">
<batch:partition partitioner="rbmPartitioner" step="readDataFromRBM">
<batch:handler grid-size="50" task-executor="taskExecutor"/>
</batch:partition>
</batch:step>
<batch:flow parent="generateCsvFlow" id="job1.flow1" />
</batch:job>
因为根据这种配置,它首先创建分区&amp;并行处理它们。但我想要的是顺序执行5个块(大小为1000)用5个并行线程处理每个块。
块1(记录1到1000)=&gt;分区1(记录1到200)||分区2(记录201到400)||分区3(记录401到600)||分区4(记录601到800)||分区5(记录801到1000)
块2(记录1001至2000)=&gt;分区1(记录1001到1200)||分区2(记录1201至1400)||分区3(记录1401至1600)||分区4(记录1601至1800)||分区5(记录1801至2000)
任何人都可以帮助我吗?感谢。