我目前正在使用Python的Sickle模块来遍历约400万条记录的OAI存储库。我一直在浏览Sickle文档,以了解是否存在一种明显的方式来分隔记录(一旦由镰刀.ListRecords返回),从而可以执行数据并行性任务。简而言之,这就是我想做的:
from sickle import Sickle
sickle = Sickle('https://url/to/oai/repository')
recs = sickle.ListRecords(metadataPrefix='oai_dc')
'''separate recs into 1/12th sections for 16 core machine named rec_1 ... rec_12'''
'''core i runs the following process:'''
abstracts = []
for record in rec_i:
abstracts.append(record['abstract'])
我怀疑Sickle本身无法做到这一点,但是如果我可以将镰刀.ListRecords的返回结果分成不同的部分,那将非常有帮助。如果没有,那么如果有人可以在python中推荐一种允许并行的类似方法,我将非常感激。