SA Шпаргалка

Все ответы в 2 клика

Продвинутый

Как в MongoDB реализуются связи (Embedding vs Referencing)?

В реляционных БД мы всегда используем внешние ключи (Referencing). В Mongo есть выбор:

1. Embedding (Встраивание):
Связанные данные хранятся прямо внутри родительского документа (например, массив addresses внутри user).
Плюс: Чтение за 1 запрос.
Минус: Документ может разрастись (лимит 16 МБ).

2. Referencing (Ссылки):
Храним только ID связанных документов (как в SQL).
Плюс: Данные не дублируются, документы легкие.
Минус: Придется делать 2 запроса к БД или использовать медленный $lookup.

💡 Правило: Если связь "Один-к-Нескольким" — встраиваем. Если "Один-к-Миллионам" — ссылаемся.

Сложная тема? Разберём на мок-интервьюЗаписаться на менторство →

Другие вопросы темы «Документные БД»

Ещё вопросы раздела «NoSQL»

Все вопросы раздела «NoSQL»