Digamos que tengo una entidad que tendrá muchos atributos, algunos que conozco ahora y otros serán definidos por el usuario. ¿Cuál es la mejor manera de modelar esto?Diseño de la base de datos: ¿EAV o no a EAV?
1) ¿Tengo una tabla principal y se refieren a una tabla de pares de nombre y valor secundario? Todos los atributos van en la tabla secundaria de EAV.
- O -
2) ¿Pongo los atributos más comunes (no todos los usuarios se les necesita, así que esperar un montón de entradas NULL) en la tabla principal y tener la mesa EAV secundaria para los atributos definidos por el usuario?
- O -
3) Algún otro enfoque que no he pensado?
Estoy usando Doctrine, aunque admito que todavía no entiendo completamente el concepto de ORM. No entiendo cómo lo hace ORM, por lo que no estoy "diseñando relaciones de bases de datos directamente". Actualmente estoy trabajando en este modelo en MySQL Workbench y estoy realizando un montón de análisis de datos solo para comprender las relaciones de mis datos. ¿Cómo me libera ORM de esto? – StackOverflowNewbie