Forum Discussion

JohnM1985's avatar
JohnM1985
Regular Visitor
2 years ago

Help with database structure OR relationship schema!

Hi,

I'm attempting to create a repository of all my teams Power Bi reports, showing all of the datasources, and all of the notebooks which are used to populate these data sources.   Part of my challenge is that there are multiple datasources used in PBI reports, and each notebook can output to multiple datasources.

 

On top of that, I don't want to build a complete database (i.e. with a new table illustrating the datasources for Report1, Report2, and the same for tables which make up Datasource 1, 2 etc) and it needs to be simple to update for the user, so I'm currently separating multiple values in the same column, using a comma.

Currently I have 

 

Table1:

ReportNameDataSource
Rep1DS1, DS2, DS3
Rep2DS4
Rep3DS1, DS5

 

Table2:

DataSource NameRelated Tables
DS1T1, T2, T3
DS2T4
DS3T1
DS4T4
DS5T1, T2, T3, T4

 

Table 3:

Notebook NameTablesUpstreamTablesDownstream
Nb1T1, T2T3
Nb2T4, T1T3
Nb3T1, T2, T3T1


I was hoping that I could use Table1 (for example) and then duplicate this table, split values by delimiter and then build a relationship to this table [that works] and then connect this in a similar manner to the notebooks - in the end giving me a nice matrix/table visual where a user could search through the list of reports, and quickly see details about that report, which datasources it connects to, and then which notebooks they might need to look at to adjust any final output.

Perhaps I'm trying to find a simple solution to a complex problem here, but it feels like it should be possible!!! (-:

 



2 Replies

    • JohnM1985's avatar
      JohnM1985
      Regular Visitor

      Thanks amitchandak ,

      The problem that this seems to bring is the relationships between the tables, as table 1 goes from:

      ReportNameDataSource
      Rep1DS1, DS2, DS3
      Rep2DS4
      Rep3DS1, DS5


      To:

      ReportNameDataSource
      Rep1DS1
      Rep1DS2
      Rep1DS3
      Rep2DS4
      Rep3DS1
      Rep3DS5


      But I don't want that to display with multiple names (i.e. Rep1's) to the user - so I can build a relationship from my original table, to the delimited one, but then to connect this to the next tables I end up with a many-many relationship which I'm trying to avoid, or by using bridging tables with 1 to 1 relationships, which doesn't seem to work.... I wondered if there was a more creative way to get to my solution