Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Believer
Advocate III
Advocate III

Establishing self-service enterprise data sources

I have already successfully established a top level dataflow in a premium workspace which will return all of the data available for use.  Where I am stuck is how the end user can pull just the subset of data which pertains to them.  For argument’s sake, let’s say the entire data set is for 50 sales regions.  Anyone with access to the data is allowed to see all of it, thought that’s ill-advised due to the size of the data.  There are currently only 3 people using the data (each for a different region), but others could request access at any time.

 

These are the goals I am trying to achieve:

  1. Self-service: The owner of the dataflow should merely have to grant permissions to the end user to see all of the data; the owner should not have to configure anything.
  2. Efficient: The end user should not have to experience downloading the entire dataflow.
  3. Flexible: The end user can make further transformations.

 

I have experimented with a number of scenarios, but I have not been able to achieve all of the above goals with any of them.  The top level data flow is “RegionalData” and its main entity is “AllRegions”.

 

Scenario 1: In PBI Desktop I connected to RegionalData/AllRegions, added a filter to only show data for region 1, removed a couple fields I didn’t want, and could do any other transforms I needed.  This approach would be ideal, except… Power BI downloaded the entire data set in the process of retrieving/returning just the filtered region for my use.  Not efficient.

 

Scenario 2: In the original dataflow RegionalData I added a new entity “Region01” which referenced the main entity AllRegions, added a filter for region 1, removed some unneeded fields.  In PBI Desktop it worked perfectly, quickly pulled only the data I wanted, allowed me to add more transformations and data sources, etc.  However… it requires the dataflow owner to establish a new entity for each new user.  Not self-service.

 

Scenario 3: As the end user, I created a new flow “MyRegionalData” which pointed to the original RegionalData/AllRegions.  This was treated as a linked entity, so adding filters and transformations is not supported.  To get around it, within the new flow I tried the same tricks as in Scenario 2, right-click/reference the original entity AllRegions to create a new (computed) entity “MyRegion01”.  I also turned off loading AllRegions.  So far this worked the best, but it feels rather convoluted.  (I also wonder if it caused the creation of a duplicate set of AllRegions data, but I suspect not since that was linked.)  If I had a goal of simplicity this would violate it. 😊

 

I probably tried a couple other combinations of things not listed here but I can’t quite recall any more.  And have already spent way too many hours on this…

1 ACCEPTED SOLUTION
Believer
Advocate III
Advocate III

Since this thread isn't getting any traction... for the benefit of anyone else who comes along... I have come to the conclusion that Scenario 3 is the best solution.  Although it requires the user to create their own flow on top of the original flow, it's a small tradeoff for all the other benefits it provides.

View solution in original post

3 REPLIES 3
Believer
Advocate III
Advocate III

Since this thread isn't getting any traction... for the benefit of anyone else who comes along... I have come to the conclusion that Scenario 3 is the best solution.  Although it requires the user to create their own flow on top of the original flow, it's a small tradeoff for all the other benefits it provides.

v-yuaj-msft
Community Support
Community Support

Hi @Believer ,

 

Sorry for late reply. If you want to restrict certain users from accessing specific data, you can set rules and roles in Power BI Desktop and then configure roles in Service. Or you can also try to configure dynamic RLS, which restricts access to data based on the user's USERNAME. For details, please refer to the article link below.

1. Row-level security (RLS) with Power BI - Power BI | Microsoft Docs

2. Restrict data access with row-level security (RLS) for Power BI Desktop - Power BI | Microsoft Docs

 

Hope that's what you were looking for.

Best Regards,

Yuna

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Thanks @v-yuaj-msft but this doesn't meet the first goal I am trying to achieve: Self service.  Let me know if I am leaving any details out of my original description, but once I put the entire large set of data out there, I want anyone with permissions to view it to self-service by determine the subset of data which applies to them and efficiently pull just those records.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors
Top Kudoed Authors