/ / Dimensión del tiempo en el almacén de datos - mysql, diseño de base de datos, almacén de datos, modelado dimensional

Dimensión temporal en el almacén de datos: mysql, diseño de base de datos, almacén de datos, modelado dimensional

Tengo una tabla de hechos que almacena varias fechascampos en sus filas. Me gustaría mantener el diseño flexible y vincular todos estos campos con la dimensión temporal. Sin embargo, el problema es que mis informes terminan teniendo demasiadas combinaciones en sus consultas (una para cada campo de fecha) ¿Cómo mitigo este problema?

Tengo una idea de almacenar tanto las referencias de dimensión de tiempo (búsqueda rápida) como los campos de fecha (recuperación eficiente). ¿Cuáles serían los posibles problemas al hacerlo?

Generalizando esta idea, ¿deberíamos hacerlo también para otros campos en la tabla de hechos?

La estructura de la mesa

acc_num | acc_approved_date| acc_rejected_date| file_gen_date

Cambios propuestos al vincular a la dimensión de fecha

acc_num | acc_approved_date_id| acc_rejected_date_id| file_gen_date_id

Sin embargo, esto crea problemas de tener demasiadosse une a la tabla de dimensión de fecha mientras crea los informes que capturan todas estas fechas. Estoy proponiendo un híbrido de los dos donde almaceno tanto las fechas como los ID de estos campos.

Respuestas

0 para la respuesta № 1

Sólo tiene uniones a la tabla de dimensión de fechasi desea averiguar algo sobre la fecha (por ejemplo, un nombre del mes y el año) o si desea filtrar la fecha. Hacerlo mediante múltiples claves de fecha es la forma correcta de hacerlo: para todas las dimensiones que desee filtrar o incluir en los resultados de su consulta, necesita una combinación.