Forum Discussion

GulianiG's avatar
GulianiG
Helper II
2 years ago
Solved

Best Practice for creating Static Dimensions Table?

Hello Experts,

I'm working on Dataflows and have a question about creating dimension tables for a fact table with 3 years of event history.

Context:

  • Fact table with events from the past three years.
  • Around 15 dimension tables to map to this fact table.
  • Plan to use dimensional keys in the fact table to join with the primary keys of dimension tables.

My Question: For dimensions that are static over time, like Employee Type (Permanent, Temporary, Contract) and Employee Status (Active, Terminated, On Leave):

  • Is it better to manually enter this data using the "Enter Data" feature in Power BI, or
  • Should I create and import this data from a CSV file? We will pick these CSV files from SharePoint
  • Should I bring fact table then keep dimensional columns and remove duplicates before adding index to get keys
  • Is there an alternate approach like using DAX (SUMMARIZE, VALUES etc.)

I'm looking for the best approach considering performance and maintainability.

Thank you!

 

  • Hi GulianiG 

    Both approaches are ok in a dataflow, however in a dataflow you can't relate tables together nor you can use DAX.

    I would go with creating dimension tables in Sharepoint hence when someone other than the owner of the Dataflow wants to make changes, he will do it in Sharepoint(only the owner of the dataflow can make changes on it).

    Performance wise, Dataflows are sources of truth for semantic models built on top of them, so they should be ok. Rather watch out the performance of the semantic models.

     

3 Replies

  • aj1973's avatar
    aj1973
    Community Champion

    Hi GulianiG 

    Both approaches are ok in a dataflow, however in a dataflow you can't relate tables together nor you can use DAX.

    I would go with creating dimension tables in Sharepoint hence when someone other than the owner of the Dataflow wants to make changes, he will do it in Sharepoint(only the owner of the dataflow can make changes on it).

    Performance wise, Dataflows are sources of truth for semantic models built on top of them, so they should be ok. Rather watch out the performance of the semantic models.

     

  • aj1973 I really like your logic of allowing someone from teh team the ability to change those static dimension values when needed. Thanks
    Enter Data approach would restrict it to me being the owner of Dataflow which we don't want
    Thanks AJ