2009-02-15 17 views
4

Comment les sites Web comme Digg, Del.icio.us et StackOverflow implémentent-ils le balisage?Mise à l'échelle des applications Web et balisage - Digg, Del.icio.us, StackOverflow

Je sais que cette autre question a un accepted answer d'une relation plusieurs-à-plusieurs avec une table de référence croisée. Mais comment les "grands garçons" le font-ils? De la même façon? Comment évolue-t-il?

+1

Je pense que votre référence répond assez bien. La réponse acceptée dit aussi que cela va évoluer. Pourquoi n'élaborez-vous pas pourquoi vous pensez que cela ne va pas évoluer, ou mieux encore tester vous-même. – flodin

+0

@flodin - la réponse acceptée indique qu'elle "devrait" évoluer, sans fournir de preuves ni de mesures. –

Répondre

12

Voici l'article souvent cité qui décompose les schémas de marquage par de vrais indicateurs de performance: http://tagging.pui.ch/post/37027746608/tagsystems-performance-tests

L'auteur fait remarquer que le fondateur de délicieux explique à l'aide d'un SGBDR pour le marquage simplement ne pas l'échelle à plusieurs millions d'articles sous charge. Une alternative comme Lucene peut s'adapter mieux dans un tel cas.

+0

+1. Merci. J'allais inclure un lien vers cet article dans ma question, mais je ne pouvais pas me rappeler comment le trouver. Donc, à partir de ces différentes stratégies - Une idée de ce que StackOverflow ou Digg utilisent? – BuddyJoe

+0

@Tyndall SO utilise SQL, mais SO n'a pas plusieurs millions (dizaines ou centaines) d'éléments à marquer dans plusieurs dimensions comme Digg ou Delicious. –

+0

Pouvez-vous s'il vous plaît me suggérer des outils open source pour tester les performances de la base de données et le temps de réécrire les requêtes, si les requêtes sont en cours d'exécution. Merci d'avance – gmhk

0

Je suis sûr que les requêtes JOIN supplémentaires seraient trop chères dans un très grand système.

Les étiquettes sont stockées non normalisées dans la table principale, ou il peut y avoir une table de marques distincte qui a une ligne pour chaque article étiqueté.