Comecei a trabalhar em uma nova organização e um dos padrões que tenho visto no banco de dados é a duplicação de campos para facilitar a escrita de consultas para os analistas de negócios. Estamos usando o Django e seu ORM.
Em um caso, mantemos um objeto MedicalRecordNumber com uma string exclusiva que identifica um paciente em um determinado contexto. Temos objetos de registro que rastreiam pacientes e associaram MedicalRecordNumbers , mas, em vez de usar um relacionamento de chave estrangeira, eles duplicam a string para evitar a gravação de uma junção ( não por motivos de desempenho). Esse padrão é comum em todo o banco de dados.
Para mim, a importância de um modelo de dados estar limpo é apenas para que eu possa pensar bem. A complexidade desnecessária é um desperdício do meu tempo limitado de processamento cognitivo. É um problema sistemático. Não se sentir à vontade para escrever junções é uma questão de habilidades retificáveis. Eu não quero necessariamente advogar voltar e alterar o esquema, mas adoraria poder articular de forma convincente os problemas com esse tipo de duplicação.