sql server - tablas - ¿Qué aspecto tendría un Diagrama de la base de datos(Diagrama ER/Diseño de tabla) para medir la distribución de algo?
diagrama tablas sql (4)
Si yo fuera, por ejemplo, a contar "actividades" en muchas computadoras y mostrar un resumen de esa actividad, ¿cómo se vería la base de datos para almacenar los datos?
Simplemente esto? Parece muy simple. Estoy pensando demasiado en esto.
ACTIVITYID COUNT
---------- -----
Creo que la actividad real crearía algún tipo de registro con al menos un ActivityId y ActivityDate en una tabla de registro. Otra columna podría ser el identificador de la computadora que crea la entrada de registro.
A continuación, crearía el conteo al agregar los registros de actividad durante un período de tiempo específico.
Metro.
Creo que podría agregar un campo DateTime para que pueda hacer informes de los eventos entre un cierto intervalo de tiempo, o al menos saber cuándo se realizó el último recuento de actividad.
Sí, me temo que es así de simple, suponiendo que solo esté interesado en la cantidad de veces que ocurre cada actividad. Una vez que haya rellenado esa tabla, puede crear fácilmente, por ejemplo, un histograma de los resultados ordenando el recuento y el trazado.
Si el volumen no va a ser ridículamente grande, probablemente crearía una tabla que registrará cada evento individualmente, con un DateTime como sugiere @Turnkey, y posiblemente la máquina que lo registró, etc.
LOGID (PK) ACTIVITYID SOURCE DATELOGGED
---------- ---------- ------ ----------
Eso le daría la capacidad de ejecutar una consulta para obtener el recuento actual, y también para usar los datos para determinar los eventos en un período de tiempo, y / o procedentes de una máquina específica. Un índice agrupado en ActivityID debería proporcionarle un buen rendimiento de consulta, y la tabla es estrecha, por lo que las inserciones no deberían ser demasiado costosas.