Python将并行循环的结果保存到一个“文件”或一个SQL库中

时间:2019-05-13 13:53:42

标签: python sql parallel-processing

我正在对75,000个文件运行一些计算量大的操作。为了加快速度,我并行化了过程

import multiprocessing; num_cores = multiprocessing.cpu_count()-6

def ParseOneDocument(row):
   ## loads data
   ## returns a csv with important data for each iteration ("row")
   with open(path+'eachletter_'+str(row)+".csv", 'w+', newline='') as myfile:
            wr = csv.writer(myfile, quoting=csv.QUOTE_ALL)
   # replace the above with an SQL access

results = Parallel(n_jobs=num_cores)(delayed(ParseOneDocument)(row) for row in NumberOfDocuments)

在下一步中,我收集所有创建的csv并将其附加。这可行。但是,如果要重新运行代码并删除所有csv的代码,将很麻烦。

理想情况下,将有一种方法可以将结果存储在SQL(?)数据库中,该数据库可以同时从并行循环的多个线程进行评估。

0 个答案:

没有答案