Devo sviluppare un sistema di registrazione per il mio progetto che ha molteplici funzionalità. Sono bloccato a una scelta. Potrei fare un database centralizzato e un front end per tutto. Oppure potrei avere una tabella di registro per ogni funzione e un front-end comune, tuttavia.
Centralizzato sembra la strada da percorrere ma ha i suoi svantaggi.
-
Alcune funzionalità creano più voci di registro mentre altre no. Quindi la tabella finale può avere un milione di voci di registro per la caratteristica xe 23 per la caratteristica y. Quindi ogni funzione paga il costo del tempo di accesso per l'uso avido di una funzione.
-
Anche una tabella può diventare abbastanza grande.
-
E dovrò standardizzare un singolo formato di registro e non potrò modellarlo per le singole funzionalità pur facendo uso delle funzionalità di DBMS come ordinamento, join, gruppo ecc. Dovrò memorizzare tutti i dettagli delle funzioni in un campo dati JSON.
I lati negativi di un sistema distribuito includono
-
Dovrò mantenere più tabelle.
-
Non ci sarà uno schema standardizzato, quindi costruire un front-end comune sarà molto problematico.
Qualcuno ha qualche esperienza con questo genere di cose?