Una buona architettura per taggare gli elementi [duplicato]
-
03-07-2019 - |
Domanda
Duplicato: Come consigliate di implementare tag o tagging
Che cos'è un'architettura efficiente, veloce ed elegante per un sistema di tagging (come post o foto). Ad esempio, hai un sito come StackOverflow e ogni elemento ha un paio di tag. Qual è il modo migliore per tenere traccia di questi e renderli ricercabili. Anche la scalabilità è importante.
Dispone di una colonna "tag" per ogni elemento. Quindi nel database per la riga di quell'elemento hai una stringa con tutti i tag " tag1 tag2 tag3 parola chiave anothertag etc " ;. Quindi è possibile consentire l'indice di ricerca full-text su quella colonna.
Dispone di una tabella di tag. Dove mappa " tag ": " item_id " ;. Ciò renderebbe la ricerca più veloce ... puoi cercare il tag = keyowrd e ottenere un elenco di tutti gli item_ids.
Entrambi sembrano soluzioni ovvie, ma per insiemi di dati molto grandi, sembra un metodo piuttosto inefficiente. Qualche idea o altri modi per implementare un sistema di tagging?
Soluzione
questo sarebbe utile da leggere http://www.pui.ch/phred/ archivi / 2005/04 / tag-Database-schemas.html