sql >> Databáze >  >> RDS >> Mysql

Jak se používají hodnotící algoritmy Reddit a Hacker News?

Implementoval jsem SQL verzi hodnotícího algoritmu Reddit pro takovýto agregátor videa:

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 je aktualizován spouštěčem při každém novém hlasování. Na našem aktuálním webu běží dostatečně rychle, ale plánuji přidat sloupec hodnot hodnocení a aktualizovat jej pomocí stejného spouštěče jako cached_votes_total sloupec. Po této optimalizaci by měl být dostatečně rychlý pro většinu stránek jakékoli velikosti.

edit:Více informací na Algoritmus Reddit Hotness v SQL



  1. Předejte Dictionary<string,int> do uložené procedury T-SQL

  2. Zvýšení výkonu databáze o 400 %

  3. Kód chyby mySQL 1235

  4. Vytvořte uživatele MySQL v systému Linux pomocí příkazového řádku