Ho un'applicazione web che usa MongoDB come database primario. Questo è il primo progetto che faccio con un DB NoSQL. Sto provando a creare il modello dell'applicazione ma sono confuso. So che i database NoSQL non sono normalizzati ed è normale replicare i dati evitando i join (che non sono supportati), ma ora sto pensando a questo scenario:
Ho la classe User
che contiene l'indirizzo email e l'utente può cambiarla nella pagina del profilo. Questo indirizzo email viene visualizzato in poche pagine in ambienti diversi e penso che la scelta giusta sia quella di incorporare questa proprietà in alcuni documenti di classe (es .: abbonamento prodotto, fattura, carrello della spesa, ...).
Cosa succede se l'utente cambia il suo indirizzo e-mail? Devo attivare più aggiornamenti per modificare ogni raccolta, ogni documento che incorpora questa proprietà?