Некоторые оптимизации для оптимизации вашего запроса: 1. Постарайтесь уменьшить количество записей, которые должны быть извлечены на первом этапе самой конвейерной линии. 2. Создайте индексы для полей, запрашиваемых в первом конвейере, предпочтительно $ match 3. Индексы будут использоваться только на первом этапе конвейера. 4. Sharding увеличит пропускную способность за счет незначительного снижения производительности запросов (это также зависит). Ps: поиск не будет работать на закрытых соединениях
.Да Вы можете если:
Да, можно выполнить несколько команд в рамках единственной транзакции. Это позволило бы Вам сделать точно, что Вы пытаетесь сделать: все команды или ни один из них.