Advanced Aggregation (Advanced Aggregation)
Advanced Aggregation: Aggregation پیشرفته 🚀
Advanced Aggregation شامل stages پیچیدهتر برای پردازش دادههای پیچیده و تحلیل است.
$facet - چند Pipeline موازی:
// اجرای چند pipeline به صورت موازی
db.products.aggregate([
{{
$facet: {{
"byCategory": [
{{ $group: {{ _id: "$category", count: {{ $sum: 1 }} }} }},
{{ $sort: {{ count: -1 }} }}
],
"byPrice": [
{{ $group: {{ _id: null, avgPrice: {{ $avg: "$price" }}, maxPrice: {{ $max: "$price" }}, minPrice: {{ $min: "$price" }} }} }}
],
"topProducts": [
{{ $sort: {{ price: -1 }} }},
{{ $limit: 5 }}
]
}}
}}
])
$bucket - تقسیم به دستهها:
// تقسیم products بر اساس price
db.products.aggregate([
{{
$bucket: {{
groupBy: "$price",
boundaries: [0, 100, 500, 1000, 5000],
default: "expensive",
output: {{
count: {{ $sum: 1 }},
products: {{ $push: "$name" }}
}}
}}
}}
])
$graphLookup - جستجوی گراف:
// پیدا کردن تمام زیرمجموعهها
db.employees.aggregate([
{{
$graphLookup: {{
from: "employees",
startWith: "$managerId",
connectFromField: "managerId",
connectToField: "_id",
as: "hierarchy"
}}
}}
])
💡 نکته: Advanced Aggregation stages برای تحلیل دادههای پیچیده، گزارشگیری و data science بسیار قدرتمند هستند.
✅ یاد گرفتید: Advanced Aggregation stages برای پردازش پیچیده دادهها، تحلیل و گزارشگیری استفاده میشوند!
آماده رفتن به درس بعدی هستید؟
این درس را به پایان رساندید و میتوانید به درس بعدی بروید.