Що означає "aggregation pipeline"?
Aggregation pipeline - це конвеєр обробки даних у MongoDB, де документи проходять через послідовність стадій, і кожна стадія крок за кроком перетворює дані: фільтрує, сортує, групує, проєктує тощо.
Ключові ідеї
- Pipeline = ланцюжок стадій Дані йдуть згори вниз, як по трубах. Результат однієї стадії - вхід для наступної.
- Кожна стадія виконує одну зрозумілу дію Наприклад:
$match- фільтр$group- групування й агрегати$sort- сортування$project- вибір і зміна полів
- Усе відбувається на стороні MongoDB Тобто ти не витягуєш багато даних у код, а обробляєш їх прямо в БД - швидше й ефективніше.
Приклад
js
db.orders.aggregate([
{ $match: { status: "paid" } },
{ $group: { _id: "$user_id", total: { $sum: "$amount" } } },
{ $sort: { total: -1 } }
]);- спершу фільтр за
status - потім підрахунок суми за користувачем
- потім сортування за сумою
Підсумок
Aggregation pipeline - це механізм, де дані проходять через ланцюжок стадій, послідовно трансформуються й дають готовий аналітичний результат в одному запиті.
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.