I'm reviewing old data warehouse & I have encountered unusual 1: 1 relationship between factless fact table (Fact_contact) & Dim_Incident.
In general, Fact_Contact is used for recording cases/tickets/enquiries. Some of the customers are anonymous; therefore, there are uniqueCustRef & CustomerRef "facts" that are used for distinct count.
1:1 relationship between fact & dimension tables does not feel right. Is it a recommended solution? Currently, there is no documentation why it was designed the way it was.
Thank you.
You might be right; this does not look right. The FactContact
should not have the incidentId
I do not know the requirements but logically thinking I would suggest the following;
IncidentType - what is the type of incident that is logged
FirstIncidentId - the first incident corresponding to the customer/IncidentType
FirstIncidentDate - Date of the above incident
LastIncidentId - the last incident corresponding to the customer/incidenttype - when there is only one incident you will have the firstincidentid and lastincidentid the same
LastIncidentDate - the date of the above incident
IncidentCount - the number of incidents for the customer/incidenttype combination
Hope this helps