sql >> Base de Datos >  >> RDS >> Mysql

Base de datos:diseño de una tabla de eventos

Recomiendo encarecidamente este enfoque. Dado que presumiblemente está utilizando la misma base de datos para OLTP y OLAP, puede obtener importantes beneficios de rendimiento si agrega algunas estrellas y copos de nieve.

Tengo una aplicación de redes sociales que actualmente se encuentra en 65 mesas. Mantengo una sola tabla para rastrear las vistas de objetos (blog/publicación, foro/hilo, galería/álbum/imagen, etc.), otra para recomendaciones de objetos y una tercera tabla para resumir la actividad de inserción/actualización en una docena de otras tablas.

Una cosa que hago de manera ligeramente diferente es mantener una tabla tipo_entidad y usar su ID en la columna tipo_objeto (en su caso, la columna 'TABLA'). Le gustaría hacer lo mismo con una tabla event_type.

Aclaración para Alix - Sí, mantiene una tabla de referencia para objetos y una tabla de referencia para eventos (estas serían sus tablas de dimensiones). Su tabla de hechos tendría los siguientes campos:

id
object_id
event_id
event_time
ip_address