Этот вопрос проверяет базовое понимание архитектуры MongoDB и того, чем документная БД отличается от реляционной.
MongoDB — это документная база данных, где данные хранятся в виде документов, а не строк таблиц. Документы объединяются в коллекции, которые примерно соответствуют таблицам в SQL-БД. Схема данных гибкая: разные документы в одной коллекции могут иметь разные поля. MongoDB хорошо подходит для иерархических и слабо структурированных данных.
MongoDB проектировалась как база данных для работы с документами, а не с жёсткими таблицами и схемами.
MongoDB — это NoSQL документная база данных, в которой данные хранятся в виде JSON-подобных документов и объединяются в коллекции.
Документ
Аналог строки в таблице.
Представляет собой набор полей и значений.
Коллекция
Аналог таблицы.
Набор документов одного логического типа.
База данных
Контейнер для коллекций.
Пример документа:
{
"_id": "user_1",
"name": "Ivan",
"age": 30,
"roles": ["admin", "editor"]
}
Гибкая схема
Поля не обязательны.
Документы могут отличаться по структуре.
Вложенные структуры
Документы могут содержать вложенные объекты и массивы.
Часто заменяет сложные JOIN.
Денормализация
Данные часто хранятся “рядом”, а не в разных коллекциях.
Каждый документ имеет уникальный _id.
Поддерживаются индексы по полям и вложенным значениям.
Запросы работают по принципу “найти подходящие документы”.
MongoDB удобна для работы с гибкими и иерархическими данными, но требует продуманной модели, чтобы избежать проблем с ростом данных и