1
我需要從非常大的集合中讀取數據並對每個文檔執行一些操作。Pymongo parallel_scan
我正在使用pymongo的parallel_scan在多個進程上執行這些操作以提高效率。
cursors = mongo_collection.parallel_scan(6)
if __name__ == '__main__':
processes = [multiprocessing.Process(target=process_cursor, args=(cursor,)) for cursor in cursors]
雖然使用這些遊標的過程如預期並開始運行開始,所有的流程完成自己的本分和退出,最終只有一個進程繼續運行很長一段時間。
看起來像這是因爲parallel_scan不會在光標之間平均分配文檔。如何讓所有遊標具有幾乎相同數量的文檔。