← К оглавлению занятия

🐛 Ошибки

📁 Блок: MongoDB / NoSQL / Документы ⏱️ Время изучения: ~90 мин 🎯 Сложность: Начальная

⚡ Кратко: суть занятия

MongoDB — документоориентированная база данных: данные хранятся не в строках таблиц, а в документах и коллекциях.

Источник противопоставляет MongoDB реляционным СУБД: нет таблиц с фиксированными столбцами, информация организована как документы.

Документ — набор пар ключ-значение, где значениями могут быть строки, числа, логические значения, массивы и вложенные документы.

Коллекция в MongoDB похожа на таблицу по роли контейнера, но может хранить документы разной структуры.

Каждый документ имеет уникальный идентификатор _id; если его не задать, MongoDB создаёт его автоматически.

Для управления и администрирования в курсе используется MongoDB Compass.

Топ-3 ошибки: ждать жёсткой схемы как в SQL, путать коллекцию с документом, удалять или дублировать _id.

Типичные ошибки при первом знакомстве

Искать таблицы и строки

В MongoDB используйте слова «коллекция» и «документ». SQL-аналог помогает понять идею, но модель другая.

Считать документ плоской строкой

В документе могут быть массивы и вложенные документы, поэтому структура может быть глубже строки таблицы.

Игнорировать _id

_id нужен для уникальности документа в коллекции. Не создавайте дубликаты вручную.

Ожидать одинаковые поля во всех документах

Источник подчёркивает отсутствие жёсткой табличной схемы. Документы коллекции могут отличаться по набору полей.

Путать BSON и JSON

Документ похож на JSON при чтении, но MongoDB хранит данные в BSON.

Использовать SQL SELECT в Compass-фильтре

Compass и mongosh используют синтаксис MongoDB, который будет изучаться дальше.