Ver Mensaje Individual
  #2 (permalink)  
Antiguo 13/12/2010, 10:00
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Optimización en tabla de visitas

De entrada sí elimina lo que ya tengas en otras tablas,

Visitas
id
producto_id
fecha
pais
url_referrer
keywords

Productos
producto_id
producto_nombre
producto_url
id_categoria
id_propietario

Categorias
id_categoria
categoria

Propietarios
propietario_id
propietario_nombre

piensa si podrias agrupar visitas, en el sentido siguiente

fecha,pais,url_referrer tambien son datos que se podrian guardar una sola vez para cada usuario que haga una visita, que seguaramente será a mas de un producto.


TablaVisitas
idVisita
fecha
pais <--- si se refiere al usuario
url_referrer<--- si se refiere la url de procedencia del usuario

TablaDetalleVisitas
id
idVisita
producto_id
keywords

En cuanto a los keywords no veo de donde los sacas luego no se donde ponerlos.

Por supuesto necesitas indices sobre fecha, idVisita, producto_id. La idea de particionar la tabla por fechas no va desencaminada, pero depende del tipo de consultas, obvimente mejorara mucho la obtención del top de las visitas recientes pero el top de toda la historia saldrá perjudicado...

La optimizacion es un tema largo y apasionante... y no es una ciencia exácta puesto que una solución optima para una cosa no lo es para otra, luego debes decidir cual prefieres en funcion del tipo de consultas que hagas con más frecuéncia o que necesites que sean más rápidas...

Evitar las repetiones obviamente es eliminar ruido inecesario...

Suerte

Productos
producto_id
producto_nombre
producto_url
id_categoria
id_propietario

Categorias
id_categoria
categoria

Propietarios
propietario_id
propietario_nombre

TablaVisitas
idVisita
fecha
pais <--- si se refiere al usuario
url_referrer<--- si se refiere la url de procedencia del usuario

TablaDetalleVisitas
id
idVisita
producto_id
keywords

Quim