只是想知道在Spring Batch应用程序中为所有作业保持块大小是否相同是一个好习惯,还是应该针对不同的作业保持不同,具体取决于特定作业的行为。
我可以理解,显然答案取决于很多因素,但只是想知道这是什么标准方法,如果有的话。
由于
答案 0 :(得分:2)
块大小非常特定于手头的工作。它是优化批处理作业性能的关键方法,可能特定于您编写的每个作业。例如,如果您有小记录,则可能在块中有更多可以优化写入次数的块。如果您有大量记录,则在写入之间可能无法满足内存的数量。
答案 1 :(得分:0)
我认为在决定块大小时理解要考虑的因素将有助于回答这个问题。例如,如果这些因素对您的所有工作都相同(尽管这种情况非常罕见),那么为什么不呢。
有些书喜欢" Spring Batch in Action"建议将块大小保持在20到200之间。同一本书的一些想法如下:
所以是的,想法是尝试使用不同类型的样本数据和不同的块大小来运行作业,并自己比较结果,然后选择块大小。