Optimize Athena Query Performance on ALB Logs
An online retail company stores Application Load Balancer (ALB) access logs in an Amazon S3 bucket. The company wants to use Amazon Athena to query the logs to analyze traffic patterns. A data engineer creates an unpartitioned table in Athena. As the amount of the data gradually increases, the response time for queries also increases. The data engineer wants to improve the query performance in Athena. Which solution will meet these requirements with the LEAST operational effort?
Community Votes
100% of anonymous learners picked answer B. Votes are pick records left by other test-takers — they are not the verified answer.
Community Insight
The core concept is using automated cataloging tools like AWS Glue Crawler to handle schema inference and partition updates, avoiding the high overhead of manual transformation or complex orchestration jobs.
This question addresses optimizing Amazon Athena queries for increasing data volumes by leveraging AWS Glue crawlers to automate schema detection and partition metadata management with minimal operational effort.
Candidates often choose option C (Lambda + Parquet) because they associate performance primarily with columnar formats, overlooking that the question specifically asks for the 'LEAST operational effort' and does not mention a need for format conversion.
Community Discussion (3 comments)
Comments & Corrections
No comments yet — spotted an error or have a note? Share it below.
Expert Analysis
Why the Answer Is Correct
Option B is the correct choice because an AWS Glue Crawler can automatically discover the schema of new log files and update the AWS Glue Data Catalog. By scheduling the crawler, the system maintains up-to-date table metadata with minimal intervention. This automation directly addresses the performance issue caused by unpartitioned data by allowing Athena to leverage metadata optimizations without requiring manual engineering work.Why the Other Options Are Wrong
Option A is incorrect because AWS Glue Jobs are for ETL processing, not for discovering schema and updating catalog metadata; crawlers are the specific service for this task. Option C involves significant operational effort: writing Lambda code, managing transformations, converting data to Parquet, and handling partitioning logic manually. Option D introduces Apache Hive bucketing, which is an older technique and requires custom transformation logic via Lambda, resulting in higher complexity and effort than using a Glue Crawler.Community Comment Notes
The community overwhelmingly supports Option B. As PGGuy noted, the crawler approach is "the most straightforward and least operationally intensive." Another commenter, tgv, emphasized that crawlers minimize manual intervention by being schedulable. While andrologin mentioned classifiers, the key takeaway from all comments is the value of automation in maintaining catalog accuracy.Exam Strategy
When asked for 'least operational effort,' prioritize managed services that automate discovery and maintenance (like Crawlers) over custom code or complex pipelines (like Glue Jobs or Lambda transforms). Always check if the question implies a need for data format change; if not, stick to metadata optimization first.
Frequently Asked Questions
Why not convert logs to Parquet with Lambda?
While Parquet improves speed, creating a Lambda function for transformation adds significant operational overhead. The question prioritizes 'least effort' over maximum potential performance gains.
Does a Glue Crawler partition data automatically?
A crawler updates the Data Catalog with metadata. To truly benefit from partition pruning, you should configure the crawler to infer partitions based on S3 path patterns or use partition projection features.
Related Analysis
Practice All DEA-C01 Questions
Access 100 questions with complete answers and detailed explanations.
View Full DEA-C01 Practice Test →