Sql 将数据从表拆分到java进程
我有一个表学生,它有1.000.000条记录 我需要将数据1.000.000输入Solr 因为记录的数量非常大,所以我需要并行处理=>我将创建5个进程,每个进程将处理20000条记录 我的问题是:Sql 将数据从表拆分到java进程,sql,oracle,oracle11g,Sql,Oracle,Oracle11g,我有一个表学生,它有1.000.000条记录 我需要将数据1.000.000输入Solr 因为记录的数量非常大,所以我需要并行处理=>我将创建5个进程,每个进程将处理20000条记录 我的问题是: 如何将1.000.000划分为5个始终相同的部分(我考虑了ntile函数,但不知道每次选择的数据是否会改变) 这个问题在某种意义上与批处理设计模式有关(也就是大规模批处理)这里有一个称为“分区”的概念,它将输入数据分成更小的部分,以便能够并行处理它们。 有几种分区策略,您可以在此处阅读更多有关它们的内
这个问题在某种意义上与批处理设计模式有关(也就是大规模批处理)
这里有一个称为“分区”的概念,它将输入数据分成更小的部分,以便能够并行处理它们。
有几种分区策略,您可以在此处阅读更多有关它们的内容:,简而言之,它们是:
很难说哪一个对你来说是最好的,你需要知道更多的细节。NTILE()这就是我在这些情况下使用的。你能解释一下这句话是关于什么的吗:
2。如果可以的话,我想在案例5中控制更多进程的运行,记录有insert、update或delete到table
,我一点也不理解这句话。据我所知,你们不能用Java并行化检索进程。您可以在数据库端执行此操作。例如,Oracle DB支持它。@krokodilko我有删除问题2。如果可以,我想在案例5中控制更多进程运行,记录对表的插入、更新或删除。因为这在当时是不必要的time@user3076539为什么不多线程?@user3076539我为每个进程创建了多线程。现在我想要多进程