Amazon Athena
Amazon Athena is an interactive, serverless query service from Amazon Web Services that lets you run ad-hoc, standard ANSI SQL queries directly against data stored in Amazon S3 without loading it into a database, making it well suited for swift, one-time queries and summary reports. It pairs with Amazon QuickSight for business-intelligence visualization and can be reached from SQL clients over JDBC or ODBC.
Key points
- Analyzes unstructured, semi-structured, and structured data stored in Amazon S3.
- Runs ad-hoc queries using ANSI SQL without loading the data into Athena itself.
- Integrates with Amazon QuickSight for data visualization and BI reporting.
- Connects SQL clients via a JDBC or an ODBC driver.
- Executes multiple queries in parallel with no compute resources to manage (serverless).
- Supports standard data formats: CSV, JSON, ORC, Avro, and Parquet.
- Well suited for swiftly running one-time queries and generating a summary report for analysis (per AWS Terminology.xlsx).
- Runs on Athena engine version 3, built on the open-source Trino project (with continued heritage from the PrestoDB project); this replaced the earlier Presto-based engine version 2, so Athena is no longer accurately described as “Presto under the hood.”
- For occasional or ad hoc queries against data already sitting in S3, it is the most cost-effective, least-operational-overhead option — distinct from Amazon Redshift, a provisioned (or serverless) data warehouse meant for a standing, frequently queried dataset, and from Amazon EMR, a managed Hadoop/Spark cluster for heavier custom processing.
- Federated Query lets a single SQL query reach beyond S3 into relational, non-relational, object, and custom data sources — including DynamoDB, Redshift, CloudWatch Logs, and JDBC databases — using AWS Glue Data Catalog connectors or Lambda-based Athena data source connectors, without first moving the data into S3.
Pricing
- Charged based on the amount of data scanned by each query, at standard S3 rates for storage, requests, and data transfer.
- Canceled queries are still charged based on the amount of data scanned.
- No charge for Data Definition Language (DDL) statements.
- Costs can be reduced by compressing, partitioning, or converting data into a columnar format.