An introduction to Amazon Athena.
- Serverless query service analysing data stored in S3 using SQL.
- Supports CSV, JSON, ORC, Avro, Parquet.
- $5 per TB of data scanned (10MB minimum per query).
- Commonly used with QuickSight for reporting / dashboards.
- Using columnar data can help save on costs.
- Use Apache Parquet or ORC.
- Improves performance and lowers cost.
- Glue to convert data to Parquet or ORC.
- Compressing data using bzip2, gzip, or lz4 can reduce the amount of data that needs to be retrieved.
- Partitioning data (ex. by
year=2026/month=08/) lets Athena skip irrelevant S3 objects – biggest cost/performance lever of all. - Uses AWS Glue Data Catalog to store table/schema definitions – Glue Crawlers can auto-discover schema.
- Federated Query lets Athena query data outside S3 (ex. DynamoDB, RDS, CloudWatch Logs) using Lambda-based connectors.
- Permissions live at the S3/Glue Catalog layer, not inside Athena itself — restricting
athena:*alone doesn’t block direct S3 access. - Workgroups isolate teams, enforce result encryption, and cap data scanned per query/day.
- Commonly paired with CloudTrail/VPC Flow Logs for SQL-based log investigation.
More reading:
Leave a comment