Hola gente, estoy desarrollando una aplicación para una inmobiliaria en Zend Framework y tengo una duda con respecto a la creación de la base de datos.
Resulta que como cada propiedad puede tener muchos ambientes y además los "ambientes extra", patio, terraza, cochera, etc. con sus respectivas medidas, me planteo la creacíón de la base de datos de dos maneras:
1) Para que sean tablas relacionales, tener una tabla "ambientes" con (id, nombre_ambiente) y otra tabla "ambientes_prop" con (id_propiedad, id_ambiente, medidas). De esta manera por cada ambiente que tiene la propiedad ingreso el id con sus medidas y lo vinculo a la propiedad correspondiente.
Para este caso sería necesario tener un checkbox que marque que existe ese ambiente en la propiedad y un campo texto para las medias y relacionarlo con el id del ambiente.
2) Generar una tabla "medidas" que en sus campos tenga el nombre de cada ambiente posible quedando algo como (id_propiedad, nombre_ambiente_1,nombre_ambiente_2,nombre_ambient e_n), la cual sería llenada con el id de la propiedad y medidas de cada ambiente.
En este caso sería necesario un campo texto para cada ambiente de manera que sea llenado con la medida y aparte tener los checkbox con los ambientes extra para que sólo que pueda decir que existen o no.
Lo que quiero es que sea escalable, es decir, que si un día el usuario desea agregar un ambiente nuevo pueda hacerlo y no dependa de mi para crear un nuevo campo como en el segundo caso. Pero lo que más me inquieta de esto es si el caso uno es conveniente en cuanto a rendimiento, ya que por cada propiedad se podrían estar generando 6 o 7 registros por los ambientes que tiene y sus medidas.
Que me recomiendan?... perdón por lo extenso pero es de la mejor manera que me puede explicar, espero haber sido claro.
Gracias por su tiempo!