Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

Reddit और Hacker News रैंकिंग एल्गोरिदम का उपयोग कैसे किया जाता है?

मैंने इस तरह के वीडियो एग्रीगेटर के लिए 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 पर अधिक जानकारी



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mysql के साथ दिनांक अंतराल खोजें

  2. क्या मुझे PHP प्रदर्शन-वार में MySQL के लिए तैयार कथनों का उपयोग करना चाहिए?

  3. MySQL समय बनाएं और समय टाइमस्टैम्प अपडेट करें

  4. सर्वश्रेष्ठ MySQL प्रदर्शन ट्यूनिंग टूल?

  5. फ़ाइल को MySQL ब्लॉब में लोड करने के लिए LOAD_FILE का उपयोग कैसे करें?