Ho un numero di attributi che mi servono per vari carichi di pagina e altre attività di back-end, e discuto se archiviare queste cose in un database o calcolarle al volo.
Ad esempio, se ci sono file che gli utenti possono caricare e si desidera tracciare le dimensioni, lo spazio occupato, il formato, ecc. sarebbe meglio calcolare queste cose una volta e memorizzarle insieme alla posizione del file in il database, o semplicemente prendi il file ogni volta e ottieni gli attributi del file manualmente?
Un altro caso d'uso sono gli articoli del carrello. È meglio calcolare il prezzo di un articolo e archiviarlo in fila con la tabella del carrello degli acquisti oppure calcolare il prezzo indicato ogni volta che viene caricata una pagina. In questo caso, le modifiche al prezzo in base a vendite, sconti, ricariche, ecc. Del sito non si rifletteranno una volta che l'articolo è stato aggiunto al carrello a meno che i prezzi non vengano aggiornati tramite un altro metodo quando si applicano sconti / sconti / ricariche . Questo non è il miglior esempio, ma spero tu capisca l'idea; forse hai un esempio migliore.
In entrambi gli esempi, il materiale sorgente è disponibile per ottenere le risposte da cui è la chiave per la domanda. Ovviamente, si ha un sacco di spese generali per ogni carico di pagina che potrebbe essere molto dipendente dalla situazione, tuttavia l'altro sembra avere meno dipendenza dall'integrità del database in termini di assicurarsi che sia sempre accurato e aggiornato (che io penso di preferire). Non sto cercando una risposta specifica qui, perché sono sicuro che dipenderà da molte variabili, ma sto cercando una procedura ottimale o un metodo per determinare la soluzione migliore.
NOTA: Questa è una domanda simile ma ha ottenuto pochissime risposte e nessuna risposta.