Материалы рубрики

Продолжение архива

Как добавить данные в существующий документ MongoDB

Чтобы добавить данные в существующий документ MongoDB, используйте updateOne() или updateMany() с оператором обновления. Для нового поля чаще всего подходит $set, для добавления элемента в массив — $push, для добавления без дублей —…

Как MongoDB хранит модель, вложенную в другую модель

MongoDB может хранить модель, вложенную в другую модель, двумя основными способами: как вложенный документ внутри родительского документа или как отдельный документ со ссылкой через ObjectId. Если вложенные данные почти всегда читаются вместе с…

MongoDB в России: как использовать локально и что проверить

MongoDB в России можно изучать и использовать локально: поставить MongoDB Community Server, запустить базу в Docker, подключиться через mongosh или MongoDB Compass и работать с коллекциями. Если речь идет об облачном MongoDB Atlas,…

Как понять причину поведения выборки в MongoDB

Чтобы понять, почему выборка в MongoDB работает не так, начните с четырех проверок: фильтр, типы данных, сортировка и план выполнения через explain(). В большинстве случаев проблема оказывается не в MongoDB, а в том,…

Как лучше показывать MongoDB ObjectId в адрес

MongoDB ObjectId можно показывать в адрес как строку из 24 hex-символов, например /products/665f1c1a7b8c2e0012a4d111. Это технически нормально: ObjectId не является паролем. Но для публичных страниц и удобства пользователя часто лучше использовать человекочитаемый slug, например…

MongoDB sharding: что это и когда нужен шардинг

MongoDB sharding — это способ распределить данные по нескольким серверам, которые называются шардами. Он нужен не для каждого проекта, а только когда одной машине уже не хватает ресурсов: слишком много данных, слишком тяжелая…

Как настроить Sonata User Bundle с MongoDB

Sonata User Bundle с MongoDB настраивают через MongoDB ODM: сначала подключают Doctrine MongoDB Bundle, затем описывают document-модель пользователя, после этого связывают ее с Sonata. Перед настройкой обязательно проверьте совместимость версий Symfony, Sonata User…

Как организовать базу MongoDB с использованием Mongoose

Лучше всего организовывать MongoDB с использованием Mongoose не от коллекций, а от сценариев приложения: какие данные вы будете хранить, как часто читать, что обновлять вместе, где нужны связи и какие запросы будут самыми…

MongoDB: как оставить в массиве элемент с максимальным значением

Если в документе MongoDB есть массив объектов и нужно оставить только элемент с максимальным значением, удобный путь — использовать update с aggregation pipeline: отсортировать массив по нужному полю и взять первый элемент. Например,…

MongoDB aggregate: как написать первый aggregation-запрос

aggregate в MongoDB нужен, когда обычного find() уже мало. Через aggregation pipeline можно фильтровать документы, группировать их, считать суммы, собирать статистику, менять форму результата и строить отчеты. Pipeline — это цепочка этапов: документ…

Настройки cookie