Quale sarebbe l'approccio migliore per effettuare revisioni dei contenuti degli utenti?

2

Ho cercato e non ho trovato alcuna informazione a riguardo. Qual è l'approccio migliore per archiviare le revisioni?

Ho un sito web in cui l'utente può scrivere un documento che può essere abbastanza lungo (200-300 righe). Come si determina quando effettuare una revisione?

Non è una soluzione scalabile per crearne una nuova ogni volta che il salvataggio, perché sarebbe inutile per l'utente quando si vuole guardare indietro, e richiederebbe molto spazio.

Potresti usare il tempo e dire che ogni 15 minuti che ci stanno lavorando ci sarebbe una revisione, ma a volte non sarebbe nulla o l'intero documento è completamente cambiato.

Potrei fare una diff dalla revisione precedente e confrontare per riga e vedere quanti percento delle linee sono state cambiate.

Quali sono le altre revisioni?

    
posta Kevin Simper 20.06.2013 - 12:50
fonte

3 risposte

1

I wiki e simili in genere creano una nuova revisione ogni volta che l'utente salva e molti di essi (incluso lo scambio di stack) uniscono le revisioni se il precedente era meno di 5 minuti fa.

Qualsiasi backend decente memorizzerà solo le modifiche e la loro diffusione su più revisioni di solito non aggiunge molti dati reali. Inoltre, gli utenti possono scrivere così velocemente e il testo non occupa molto spazio (vedi la risposta di Michael). Quindi la scalabilità è improbabile un problema.

Un sistema di controllo di revisione ampiamente utilizzato è probabilmente il miglior back-end. Tutti eseguono la compressione delta.

    
risposta data 26.07.2013 - 16:47
fonte
0

Quando l'utente salva controlla se ha effettivamente cambiato qualcosa prima di memorizzare una revisione.

Inoltre potresti eventualmente unire salvataggi molto vicini tra loro, a seconda del tuo datamodel. Eventuali salvataggi più di dieci minuti, ad esempio, otterrebbero una revisione, qualsiasi cosa più piccola verrebbe unificata con la revisione precedente.

A volte vedi che gli utenti ottengono un'opzione per indicare se un salvataggio è maggiore o minore. Potresti usare anche questo come input per la revisione.

    
risposta data 26.06.2013 - 14:43
fonte
0

Suggerisco che i dispositivi moderni possano effettivamente avere lo spazio per memorizzare le versioni complete. Lo spazio potrebbe essere stato un problema con 5MB Drives ma con unità da 256GB che potrebbero non essere più applicabili.

Quindi vorrei fare i conti, ad es. 5000 utenti * 100 modifiche al giorno * 300 caratteri = 150000000 .... meno di un quinto di 1 GB.

    
risposta data 26.07.2013 - 16:35
fonte

Leggi altre domande sui tag