دعني أتحقق من الخطط لتلك الاستعلامات في Meta.
الاستعلامات سريعة جدًا على Meta، لكنني أستطيع أن أرى كيف يمكن أن تؤدي بشكل سيء على قواعد البيانات ذات الطاقة المحدودة. نحن نستخدم ActiveRecord والكود نظيف إلى حد كبير، لكن SQL المولد غير مرتب إلى حد كبير.
عند كتابة SQL يدويًا، يمكننا جعل الاستعلام يستخدم الفهارس الموجودة وتحسينه بشكل كبير:
قبل
بعد
في الاستعلام المحسّن، نسترجع منشورات المستخدم فقط، مما يحد من حلقة المنشورات قبل أن يحدث الدمج في وقت متأخر جدًا.
لذلك أعتقد أننا يمكننا تحقيق أداء أفضل دون إضافة عبء الفهارس.

