Buenas tardes,
Quisiera saber vuestra opinión sobre la manera de desarrollar el modelo de datos de una herramienta que permite crear aplicaciones dinámicas, es decir, con unos campos determinados a elección del propio usuario.
Actualmente mi herramienta se nutre de una base de datos mysql, que se genera de manera dinámica.
Esta parte esta pendiente de desarrollar, dado que ahora creo las tablas de manera manual.
Antes de meterme en ello, dado que conlleva su grado de complejidad, me pregunto si estare desperdiciando el tiempo, dado que un CMS como Wordpress almacena todos los "custom post types" y sus campos en la misma tabla "wp_posts".
Segun mi opinion estos son los pro's y contra's
Mysql dinamico:
PRO's: Más rapidez en consultas, filtrados, ordenaciones, busquedas...
CONTRA'S: Hay que desarrollar un constructor de tablas muy robusto y capado dado que puede dar lugar a numerosos fallos.
Metodo Wordpress:
PRO's: Sencillo de desarrollar, los datos se introducen en formato json o serializados y no hace falta desarrollar un constructor.
CONTRA'S: Quizas un menor control en los datos introducidos a la hora de filtrar y ordenar.
¿Que os parece? ¿Debería de seguir el ejemplo de Wordpress y no complicarme, introduciendo todos los datos en una misma tabla o crear de manera dinámica una tabla por cada aplicación con sus campos?
Quisiera saber vuestra opinión sobre la manera de desarrollar el modelo de datos de una herramienta que permite crear aplicaciones dinámicas, es decir, con unos campos determinados a elección del propio usuario.
Actualmente mi herramienta se nutre de una base de datos mysql, que se genera de manera dinámica.
- Cuando se crea una aplicación nueva, se crea su correspondiente tabla con unos campos "oficiales": ID, Fecha UltModificacion, IP UltModificacion, UserIdUltModificacion..etc.
- Cuando se añade un campo o se modifica, se genera sus correspondientes "ALTER TABLE's"
- Cuando se elimina la aplicacion se ejecuta un "DROP TABLE"
Esta parte esta pendiente de desarrollar, dado que ahora creo las tablas de manera manual.
Antes de meterme en ello, dado que conlleva su grado de complejidad, me pregunto si estare desperdiciando el tiempo, dado que un CMS como Wordpress almacena todos los "custom post types" y sus campos en la misma tabla "wp_posts".
Segun mi opinion estos son los pro's y contra's
Mysql dinamico:
PRO's: Más rapidez en consultas, filtrados, ordenaciones, busquedas...
CONTRA'S: Hay que desarrollar un constructor de tablas muy robusto y capado dado que puede dar lugar a numerosos fallos.
Metodo Wordpress:
PRO's: Sencillo de desarrollar, los datos se introducen en formato json o serializados y no hace falta desarrollar un constructor.
CONTRA'S: Quizas un menor control en los datos introducidos a la hora de filtrar y ordenar.
¿Que os parece? ¿Debería de seguir el ejemplo de Wordpress y no complicarme, introduciendo todos los datos en una misma tabla o crear de manera dinámica una tabla por cada aplicación con sus campos?