Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Serializar campos en MYSQL

Estas en el tema de Serializar campos en MYSQL en el foro de Mysql en Foros del Web. Buenas tardes, Me gustaria conocer su opinion sobre serialzar datos para guardarlos en un solo campo. Actualmente tengo un sitio con unos 600 usuarios activos, ...
  #1 (permalink)  
Antiguo 31/07/2013, 15:09
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 14 años, 7 meses
Puntos: 23
Serializar campos en MYSQL

Buenas tardes,
Me gustaria conocer su opinion sobre serialzar datos para guardarlos en un solo campo. Actualmente tengo un sitio con unos 600 usuarios activos, para los cuales cada semana necesito guardar un "historial".
Por eso, cada semana guardo en una tabla 11 registros (filas) por cada usuario, con lo cual la tabla ya tiene mas de 30.000 filas.

Pensaba en serializar en un array php estos 11 registros y guardarlos en 1 sola fila, para agilizar la busqueda y ahorrar espacio.

No se si es una buena practica o no, vi por ejemplo que Wordpress lo realiza en determinados campos.


Espero su opinion,
Gracias!

Saludos.
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #2 (permalink)  
Antiguo 01/08/2013, 02:41
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 13 años, 3 meses
Puntos: 574
Respuesta: Serializar campos en MYSQL

Depende del uso que vayas a hacer de esos datos historicos....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 01/08/2013, 04:25
 
Fecha de Ingreso: julio-2013
Mensajes: 87
Antigüedad: 7 años, 11 meses
Puntos: 9
Respuesta: Serializar campos en MYSQL

Puedes optar por muchas opciones. Todo depende de qué vayas a hacer con ese "histórico".

Lo primero decirte que 30000 filas son muy pocas para una tabla MySQL bien indexada así que lo puedes dejar como está.

Si optas por reducir espacio en disco lo puedes serializar e incluso comprimir el texto resultante con alguna de las funciones que tiene PHP (gzcompress, gzdeflate, gzencode, ...).

Puedes moverlo también a otra base de datos y hacer lo mismo, dejar 11 registros por usuario, serializar, comprimir, ...

Para tomar la decisión veo fundamental qué tipo de consultas harás posteriormente con dicho "histórico" y si no vas a hacer consultas y simplemente es una copia de seguridad, haz un backup y elimina los datos directamente.

Saludos.
  #4 (permalink)  
Antiguo 01/08/2013, 06:21
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 14 años, 7 meses
Puntos: 23
Respuesta: Serializar campos en MYSQL

Cita:
Iniciado por quimfv Ver Mensaje
Depende del uso que vayas a hacer de esos datos historicos....

Gracias a ambos por responderme,
El uso que le doy a esos registros es solamente de consulta. Busco los 11 registros de X usuario en X semana y los uso para mostrarlos en una pantalla php.

Otro motivo que me llevo a pensar en esta solucion, es justamente eso, que siempre utilizo los 11 registros juntos, no individuales.

Gracias!
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #5 (permalink)  
Antiguo 01/08/2013, 06:40
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 13 años, 3 meses
Puntos: 574
Respuesta: Serializar campos en MYSQL

Parece una buena situación para una solución de ese tipo....siempre que mantengas el usuario y la fecha como campos normales de manera que puedas indexar...
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 01/08/2013 a las 06:48
  #6 (permalink)  
Antiguo 01/08/2013, 06:41
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 14 años, 7 meses
Puntos: 23
Respuesta: Serializar campos en MYSQL

Exactamente, esa es la idea. Muchas Gracias, ahora al menos puedo probar este metodo sabiendo que cuento con el aval de uds.

Saludos.
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com

Etiquetas: campo, campos, php, registros, serializar, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:36.