خطوات الاستخدام
1. فهم المدخلات: أولاً، تحتاج إلى معرفة عدد الصفوف الميتة (dead tuples) وعدد الصفوف الحية (live tuples) في جدول PostgreSQL. الصفوف الميتة هي تلك التي تم تحديثها أو حذفها ولكنها لا تزال تشغل مساحة، بينما الصفوف الحية هي البيانات النشطة الحالية. يمكنك الحصول على هذه القيم باستخدام الاستعلام `SELECT n_dead_tup, n_live_tup FROM pg_stat_user_tables WHERE relname = 'اسم_الجدول';`. فهم هذه القيم ضروري لحساب فائدة عملية VACUUM.
2. حساب درجة الفائدة: يتم حساب درجة الفائدة (Benefit Score) كنسبة الصفوف الميتة إلى إجمالي الصفوف (الحية + الميتة)، معبرًا عنها كنسبة مئوية. الصيغة هي: `Benefit Score = (dead_tuples / (dead_tuples + live_tuples)) * 100`. هذه النسبة تعطي فكرة عن مدى تضخم الجدول بسبب الصفوف الميتة. كلما ارتفعت النسبة، زادت فائدة تشغيل VACUUM.
3. تفسير النتيجة: النتيجة هي قيمة من 0 إلى 100. النسبة العالية (مثل >30%) تشير إلى أن الجدول يحتوي على كمية كبيرة من الصفوف الميتة، مما يبرر تشغيل VACUUM لتحرير المساحة وتحسين أداء الاستعلامات. النسبة المنخفضة (مثل <10%) قد لا تستدعي تشغيل VACUUM فورًا، ولكن يمكنك جدولته لاحقًا. من المهم أيضًا مراعاة عوامل أخرى مثل حجم الجدول وتكرار التحديثات.