Estoy diseñando una estructura de base de datos con el siguiente ejemplo simplificado:¿Es malo tener "redundancia de clave externa" en una base de datos?
Team has many members
Member has many clients
Client has many projects
Suponiendo mis objetos tienen estos parámetros:
Team: id, type
Member: id, team_id, name
Client: id, member_id, email
Project: id, client_id
Es bastante simple de encontrar el cliente de un proyecto, o miembro de un cliente, o el equipo de un miembro.
Sin embargo, supongamos que quiero encontrar el equipo de un proyecto, por ejemplo, primero tengo que encontrar el cliente de un proyecto, luego un miembro del cliente y luego el equipo del miembro.
que podría añadir un team_id directamente al proyecto, así:
Project: id, client_id, team_id
Me di cuenta, sin embargo, esto se suma un cierto nivel de redundancia, ya que la información es a disposición por "subir el árbol de relaciones " ¿Es una mala idea?
Gracias!
¿No quiere decir "cada miembro del equipo tiene muchos clientes" y "el cliente de cada miembro del equipo tiene muchos proyectos"? –
¿Qué considera "redundancia perjudicial"? ¿Estás hablando del mismo tipo de "redudancia dañina" que trata la teoría de la normalización? ¿O su medida de lo que es "dañino" es una medida diferente? –