Я пытаюсь запустить aggregation
в моей базе данных mongo, но я столкнулся с некоторым странным поведением как в оболочке mongo, так и через PyMongo.Это мой минимальный сценарий:
query = [
{
'$lookup': {
'from': 'rightcollection',
'localField': 'query',
'foreignField': 'query',
'as': 'missing_queries'
}
},
{
'$match': {
'missing_queries': {'$eq': []}
}
},
{
'$project': {
'_id': 1,
'query': 1,
}
}
]
db = mongo_client['test']
cursor = db['leftcollection'].aggregate(query, allowDiskUse=True)
for doc in cursor:
print(doc)
Когда я запускаю этот сценарий в блокноте jupyter, печатаются первые 101 документ, а затем некоторое время зависает (например, минута или больше).Тогда это печатает остальное.У моей левой коллекции 20 000 записей, а у правой коллекции более 11 000 документов.Я понятия не имею, что происходит.Любые решения?