我正在使用Pool.map
评分程序:
- 来自数据源的数百万个数组的“光标”
- 计算
- 将结果保存在数据接收器中
结果是独立的。
我只是想知道是否可以避免内存需求。起初,似乎每个数组都进入了 python,然后 2 和 3 继续进行。无论如何,我的速度有所提高。
#data src and sink is in mongodb#
def scoring(some_arguments):
### some stuff and finally persist ###
collection.update({uid:_uid},{'$set':res_profile},upsert=True)
cursor = tracking.find(timeout=False)
score_proc_pool = Pool(options.cores)
#finaly I use a wrapper so I have only the document as input for map
score_proc_pool.map(scoring_wrapper,cursor,chunksize=10000)
我是在做错什么,还是有更好的方式使用 python 来实现这个目的?