Search code examples
amazon-web-servicesamazon-athenaamazon-quicksight

Should I use Athena views to do joins for Quicksight or should I do them in Quicksight?


I have a bunch of Athena tables generated from data I pump into S3 on an ongoing basis and I would like to use that data with QuickSight. I have some success but for some data I get timeouts while refreshing QS. Am I better off doing views in Athena to do all the joins etc and then slurping that into QS for reporting or should I be slurping the base tables into QS and doing joining and other data manipulation there?


Solution

  • Athena views aren't materialized views so they aren't so beneficial for you.

    https://docs.aws.amazon.com/athena/latest/ug/when-to-use-views.html

    Instead of that I suggest to transform your data by using AWS Glue job before loading to QS. You can consider also partitioning or compresion of your source data. I use often also parquet format with snappy compression.

    https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/