Como os algoritmos de classificação do Reddit e do Hacker News são usados?

Estive analisando algoritmos de classificação recentemente, especificamente aqueles usados pelo Reddit e pelo Hacker News. Os algoritmos em si são bastante simples, mas não entendo bem como eles são usado

ma coisa que eu pude fazer é implementar o algoritmo diretamente no SQL, para que toda vez que um usuário vá para uma página exibindo postagens classificadas, algo como isso seja executad

SELECT thing1, thing2 FROM table
ORDER BY ranking_algorithm DESC
LIMIT page*20, 20

Existem várias perguntas semelhantes no SO, mas a única resposta dada é colocar o algoritmo de classificação dentro da consulta SQL. Então o fio morre ...

Colocar bem o algoritmo na consulta SQL em uma escala menor, mas e se o site tiver um grande número de usuários e um número muito grande de postagens? Isso significa que toda vez que um usuário abrir uma página que exibe postagens classificadas, essa consulta será executada. Isso não pode ser muito eficiente.

gora, o Reddit e o Hacker News não executam seus algoritmos de classificação como consultas SQL, mas em python e ark, respectivamente. Então, como e quando exatamente eles são usados?

ma solução possível é pegar todas as informações relevantes de cada postagem e armazená-las em alguma estrutura de dados no servidor da web. Em seguida, classifique e classifique essa estrutura de dados.

empre que alguém abre uma página que mostra as postagens classificadas, basta acessar a estrutura de dados, recuperar o intervalo correto de postagens e exibi-la

Depois, a cada meia hora, você recupera as informações mais atualizadas do servidor, classifica, classifica e atualiza a estrutura de dado

Outras consultas menos caras, como recuperar e exibir todas as informações de uma postagem específica ou exibir as postagens mais recentes (em oposição à melhor pontuada), podem ser feitas no SQL toda vez que a página relevante é abert

A vantagem é que seu banco de dados está sendo atingido (para a consulta de classificação cara) apenas uma vez a cada meia hora. A desvantagem é que você precisa ter uma duplicata de uma grande parte do seu banco de dado

questionAnswers(2)

yourAnswerToTheQuestion