Forma correcta de almacenar una gran cantidad de campos de publicación personalizados

4

En uno de los sitios de mi red de sitios múltiples; Estoy creando un tipo de publicación personalizada 'Eventos'. Cada una de las publicaciones de 'Eventos' tendrá alrededor de 30-50 campos personalizados de publicación, ya que requerimos que los creadores de eventos ingresen gran cantidad de datos relacionados con eventos.

Me di cuenta de que WP crea varias filas para almacenar campos de publicación personalizados; y eso significa que cada una de nuestras publicaciones de 'Eventos' tendrá ~ 100 (¿o quizás más?) número de filas insertadas en la base de datos.

Ahora, esperamos crear una gran cantidad de estas publicaciones de 'Eventos'; todo lleno a través de front-end por nuestros usuarios. Estoy hablando de decenas de miles de eventos creados por usuarios, cada uno con gran cantidad de datos de campos personalizados.

Pensé que un mejor plan sería codificar todos los datos de campos personalizados como cadena JSON y almacenarlos en la base de datos como un solo campo personalizado; creando así solo una entrada por evento en la base de datos.

Hasta ahora todo bien.

El problema: me pregunto qué pasaría cuando tuviéramos un gran número de eventos, y tenemos que buscarlos en función de los campos de publicación personalizados. ¿Será eficiente buscar dentro de cadenas jSON (texto) o simplemente ejecutar un gran número de filas?

Esperando sus respuestas, gracias!

    
pregunta TheBigK 04.06.2016 - 18:57

1 respuesta

4

Puede codificarlos como JSON, o como cadenas serializadas (la última de las cuales puede hacer usando funciones ya incorporadas a Wordpress). Ambas opciones te permitirán mantener bajo el número de filas de la base de datos.

Sin embargo, estas dos opciones también obstaculizarán significativamente su capacidad para buscar datos o lidiar con ellos de manera significativa si lo necesita en el futuro.

No importa si tiene una gran cantidad de filas en su base de datos.

Si su sitio alcanza el tamaño en el que sería un problema, entonces su hardware deberá crecer en consecuencia. Colocará mucha más carga en su servidor al procesar los datos codificados (o al hacer consultas esotéricas para obtener los datos) en una fila de lo que lo haría si los campos personalizados estuvieran todos en sus propias filas.

Wordpress puede manejar una gran cantidad de datos, déjalo :)

    
respondido por el Tim Malone 05.06.2016 - 09:29

Lea otras preguntas en las etiquetas