Come graffiare database che interrogano più velocemente per il cloud computing

0

Stiamo progettando di sviluppare un'applicazione web basata su database basata su cloud che vorremmo che il mondo usasse. Fino alla data sul lato del database abbiamo usato il modo completamente normalizzato per archiviare i dati e utilizzare più join per recuperare i dati ed è buono se il sistema locale è interessato. Ma per il Web, abbiamo appreso che al giorno d'oggi i database non sono completamente normalizzati, quindi ci sono meno join e carichi più veloci. Ho appreso che Magento utilizza tabelle piatte per mantenere carichi più veloci e quindi utilizza tecniche di memorizzazione nella cache per mantenere lo stato dei dati. Correggimi se sbaglio.

Vorremmo adottare un tipo di tecnica, ma non chiaro sul bilanciamento tra normalizzazione e denormalizzazione.

Spero che voi abbiate una risposta e suggerimenti per creare un nuovo database che sia più veloce.

Si prega di suggerire.

Saluti Jay

    
posta jaykhatri 18.06.2015 - 06:26
fonte

1 risposta

2

Questo mi sembra un caso di ottimizzazione prematura per me. Il tuo progetto è molto, molto piccolo rispetto a molte applicazioni eseguite su un sistema di database normalizzato. So che le ambizioni possono ottenere il meglio da te, ma preoccupati del ridimensionamento globale se e quando questo diventa un problema.

Fino ad allora, mi terrei con tabelle normalizzate (il terzo modulo normale è il mio go-to). Qualsiasi RDBMS che valga la pena di essere in grado di gestire i join con facilità - questo è ciò per cui è stato progettato. Quando si verificano problemi di prestazioni, non denormalizzare finché non si trova il problema. Di solito un buon indice o suggerimento sul piano aiuterà. Ci sono, tuttavia, alcuni posti perfettamente buoni per denormalizzare. Fai attenzione, però, perché questo porta alla duplicazione dei dati, che è soggetta a errori se non trovi ogni bit di dati e tienilo sincronizzato.

    
risposta data 18.06.2015 - 06:38
fonte

Leggi altre domande sui tag