Ho iniziato a lavorare in una nuova organizzazione e uno dei modelli che ho visto nel database è la duplicazione dei campi per facilitare la scrittura di query per gli analisti aziendali. Stiamo usando Django e il suo ORM.
In un caso, manteniamo un oggetto MedicalRecordNumber con una stringa univoca che identifica un paziente in un determinato contesto. Abbiamo oggetti di registrazione che tracciano i pazienti e hanno associato MedicalRecordNumbers , ma invece di utilizzare una relazione di chiave esterna, duplicano la stringa in modo da evitare di scrivere un join ( non per motivi di prestazioni). Questo modello è comune in tutto il database.
Per me l'importanza di un modello di dati che è pulito è solo così posso pensarci bene. La complessità inutile è uno spreco del mio limitato tempo di elaborazione cognitiva. È un problema sistematico. Non sentirsi a proprio agio a scrivere join è una questione di abilità rettificabile. Non voglio necessariamente sostenere di tornare indietro e cambiare lo schema, ma mi piacerebbe essere in grado di articolare in modo convincente i problemi con questo tipo di duplicazione.