मैंने इस तरह के वीडियो एग्रीगेटर के लिए Reddit के रैंकिंग एल्गोरिदम का SQL संस्करण लागू किया:
SELECT id, title
FROM videos
ORDER BY
LOG10(ABS(cached_votes_total) + 1) * SIGN(cached_votes_total)
+ (UNIX_TIMESTAMP(created_at) / 300000) DESC
LIMIT 50
cached_votes_total जब भी कोई नया वोट डाला जाता है तो ट्रिगर द्वारा अपडेट किया जाता है। यह हमारी वर्तमान साइट पर काफी तेजी से चलता है, लेकिन मैं एक रैंकिंग मान कॉलम जोड़ने और इसे cached_votes_total के समान ट्रिगर के साथ अपडेट करने की योजना बना रहा हूं। कॉलम। उस अनुकूलन के बाद, यह किसी भी आकार की साइट के लिए पर्याप्त तेज़ होना चाहिए।
संपादित करें:Reddit Hotness Algorithm in SQL पर अधिक जानकारी