$percentile (مُراكم المئين)
آخر تحديث: 2026-10-09
$percentile (مُراكم المئين)
$percentile مُراكم يُرجع قيمًا عند مئينات معطاة (من 0 إلى 100) لحقل داخل مجموعة، متاح منذ MongoDB 7.0. يقبل معامل p قيمة واحدة أو مصفوفة. يدعم method الحساب التقريبي (الافتراضي، أسرع) والدقيق. شائع لزمن الاستجابة p95/p99 وكمّيات الرواتب.
| الفئة | التراكميات |
|---|---|
| إصدار MongoDB | 7.0+ |
| لغة المثال | mongosh (الطرفية) |
📝 الصيغة
{ $group: { _id: <key>, pct: { $percentile: { input: "$field", p: [ <percentile> ], method: "approximate" } } } }
القيمة المرجعة:القيم عند المئينات المطلوبة (مصفوفة إدخال، مصفوفة إخراج)
▶ مثال
نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):
// $percentile: مئينات p50 وp95 وp99 لزمن الاستجابة لكل خدمة
db.latency.aggregate([
{ $group: { _id: '$service', pct: { $percentile: { input: '$ms', p: [50, 95, 99], method: 'approximate' } } } }
])
المخرجات:
{ "_id": "api", "pct": [12, 45, 80] }
📌 ملاحظات
- يتطلب MongoDB 7.0 أو أحدث
- يجب أن تكون p بين 0 و100
- تُتجاهل القيم غير الرقمية في الإدخال
🏷️ وسوم ذات صلة
💡 حالات ذات صلة
مزيد من الحالات العملية قريبًا.
📚 دروس ذات صلة
❓ الأسئلة الشائعة
Qكيف أحسب p95؟
Aمرر p: [95] للحصول على ذلك الكمّ، وهو شائع لمراقبة زمن الاستجابة.
Qما مدى دقة approximate؟
Aالأخطاء صغيرة على مجموعات البيانات الكبيرة وهو سريع — مناسب للمراقبة؛ استخدم exact عندما تهم الدقة.
Qما الفرق بين $percentile و $median؟
A$median ثابت عند المئين الخمسين؛ بينما يغطي $percentile أي مئين.