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

⚠️ Ошибки

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

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

Вторая часть практической отработки продолжает задачи после вычисленного total.

Сначала нужно отсортировать sales по новому полю total и найти самые большие заказы.

Самый активный reviewer в Airbnb ищется через $unwind, $group, $sort и $limit.

Топ-5 популярных кухонь строится группировкой restaurants по cuisine.

$lookup объединяет customers и transactions по accounts/account_id.

Geo-запрос по Brighton Beach использует Polygon из neighborhoods и $geoWithin для restaurants.

Домашка 19 анализирует ich.Spotify_Youtube: Danceability, Energy, Duration_ms, Album, Views и Stream.

Топ-3 ошибки: забыть, что accounts — массив, перепутать порядок координат GeoJSON, не исключить compilation в задаче по длительности.

Типичные ошибки

accounts как скаляр

Симптом: $lookup возвращает пустой массив.

Исправление: localField может быть массивом accounts; не нужно разворачивать его без необходимости.

Координаты в неверном порядке

Симптом: Geo-запрос не находит Brighton Beach.

Исправление: GeoJSON использует порядок longitude, latitude.

Compilation не исключён

Симптом: Задача по длительности возвращает сборник, хотя источник просит не compilation.

Исправление: Добавьте фильтр, исключающий compilation в поле/названии, которое есть в коллекции.

Экспорт без личного суффикса

Симптом: Коллекции top20youtube/top20spotify конфликтуют с работами других студентов.

Исправление: Источник просит добавить свои имена для уникальности.