Limit the size of data downloads

Hi it appears this feature does not currently exist, for some reason I thought it did. It’d be useful if there was a way to lower the max download size at a dataset level. Meaning both readers and authors would be restricted by the number of rows / mb of data they download. So instead of 500mb maybe lowering it to 100mb… or even lower.

It’d be even nicer if there was a way to rate limit it for a given period, say monthly and a user could only download a few GB’s worth of data every month. Once they hit that rate limit they have to wait for the next month to download more data.

For me this is important as I’m using Quicksight as a mostly public facing web app where users sign up for a subscription to be a Reader or Author. Readers interact with the data via dashboards I or another Author create through a web app and ideally have download privileges. For readers this isn’t a big deal as they will be limited to mostly filtered dashboards so I’m not worried about them downloading all my data. However for Authors I would like to give them the freedom to build whatever dashboards they want. It’d be possible for an Author to just build simple tables with all fields for a dataset and just download entire datasets within a few days. Which for the most part I’m okay with if it’s my data, but I also use some 3rd party vendors for some data, which they will not be okay with.

Would it be possible currently to track the number of records / GB’s of data an Author or Reader downloads so I can maybe build my own solution around this?

Or could I apply some type of row level security that prohibits users from downloading certain records in a dataset. Unfortunately for the datasets I’m creating to be very useful they are often a mix of my own data and 3rd party data. I could easily flag what is my own data and what is 3rd party, but I don’t believe a feature like this exists either.

I think the simplest / quickest way would be a work around where I can track how many MBs/GBs of data a Quicksight account downloads. Then from there I build a solution that just updates their account into a different user group which restricts downloads. I could also maybe track the analytics on my / other authors dashboards if it includes something that tells me when a user clicks / downloads csv / excel files. That way I can try and at least estimate where a users MBs/GBs are at for a given period.

Like a user downloads / user clicks metric in CloudWatch here would be super useful (Monitoring data in Amazon QuickSight - Amazon QuickSight)

Hi @Sean_B - Thank you so much for the details. Is your data set are SPICE? if yes, you can estimate the size of the data sets. see the blog below - Building a Python App for QuickSight SPICE Capacity - #3 by Ben_Berliner

But for direct query and what is the amount of data users are downloading, those metrics are not present at present ( I believe). It can be a feature request. Tagging some experts for their feedback.

@eperts @Ben_Berliner @Koushik_Muthanna - Any advise on this.

Regards - Sanjeeb

Hey @Sean_B - With Direct Query I’d use the database metrics to determine download size. For example Snowflake allows to track this sort of thing. What you may not have though is the needed granularity at the user level, so I can see why you’d like to track that in QuickSight.

That being said, this is going to be a challenge especially since QuickSight acts as a passthrough in this case and waits for data to be delivered from the database. We can definitely tag it as a feature request and see what the team thinks.