Amazon Athena 기능

왜 Athena일까요?

Amazon Athena는 표준 SQL을 사용해 Amazon S3에 있는 데이터를 직접 간편하게 분석할 수 있는 대화형 쿼리 서비스입니다. Athena는 서버리스이므로 인프라 설정이나 관리가 불필요하며, 실행하는 쿼리 또는 쿼리에 필요한 컴퓨팅을 기준으로 요금을 지불할 수 있습니다. Athena를 사용하여 로그를 처리하고 데이터 분석을 수행하며 대화형 쿼리를 실행할 수 있습니다. Athena는 자동으로 확장되어 쿼리를 병렬로 실행하므로 데이터 세트가 크고 쿼리가 복잡해도 결과를 빠르게 얻을 수 있습니다.  

Page Topics

주요 장점

주요 장점

Amazon Athena는 서버리스 서비스이므로 관리할 인프라가 없습니다. 사용자 수와 데이터 세트의 증가에 따른 인프라 구성, 소프트웨어 업데이트, 장애 또는 확장에 대해 걱정할 필요가 없습니다. Athena에서 이 모든 작업을 자동으로 처리하므로 사용자는 인프라가 아니라 데이터에 집중할 수 있습니다.

시작하려면 Athena 콘솔에 로그인하고, 콘솔 마법사를 사용하거나 DDL 문을 입력하여 스키마를 정의하고, 기본 쿼리 편집기를 사용하여 즉시 쿼리를 시작하면 됩니다. AWS Glue를 사용하면 데이터 소스를 자동으로 크롤링하여 데이터를 검색하고 데이터 카탈로그를 신규 및 수정된 테이블 정의와 파티션 정의로 채울 수 있습니다. 몇 초 이내에 콘솔에 결과가 표시되며 선택한 S3 위치에 자동으로 작성됩니다. 또한 결과를 데스크톱으로 다운로드할 수도 있습니다. Athena에서는 데이터 분석을 준비하기 위한 복잡한 ETL 작업이 필요 없습니다. SQL을 다룰 수 있는 사람이라면 누구나 빠르고 간편하게 대규모 데이터 세트를 분석할 수 있습니다.

Amazon Athena는 짧은 지연 시간의 대화형 데이터 분석에 최적화된 오픈 소스 분산 SQL 엔진인 Trino와 Presto를 기반으로 합니다. 즉, ANSI SQL을 사용하여 Amazon S3의 대규모 데이터 세트를 대상으로 쿼리를 실행할 수 있으며, 대규모 조인, 윈도우 함수 및 어레이가 모두 지원됩니다. Athena는 CSV, JSON, ORC, Avro 또는 Parquet와 같은 다양한 종류의 데이터 형식을 지원합니다. Athena의 연합 데이터 원본 커넥터를 사용하여 추가 데이터 스토어를 쿼리하고 Amazon S3에 저장된 데이터에 데이터를 조인할 수 있습니다. Athena 콘솔, API, CLI, AWS SDK 및 지원되는 비즈니스 인텔리전스와 SQL 개발 애플리케이션에서 Athena의 JDBC 및 ODBC 드라이버를 통해 Athena에 액세스하고 쿼리를 실행할 수 있습니다.

Amazon Athena는 2가지 유연한 요금 모델을 제공합니다. 기본적으로 쿼리 요금은 쿼리당 스캔한 데이터를 기준으로 테라바이트(TB) 단위로 청구됩니다. 따라서 컴퓨팅을 미리 계획하지 않고도 쿼리를 제출할 수 있습니다. 쿼리에 소비되는 컴퓨팅 용량에 따라 요금을 지불하거나 동시성을 제어하면서 워크로드의 우선순위를 지정하고자 한다면 프로비저닝된 용량에서 사용할 수 있는 용량 기반 요금을 사용하면 됩니다. 유연성을 높이고 싶다면 동일한 계정에서 쿼리별 청구 및 용량 기반 가격 책정을 동시에 사용할 수 있습니다.

Amazon Athena에서는 빠른 성능을 얻기 위해 클러스터를 관리하거나 튜닝하는 데 신경을 쓸 필요가 없습니다. Athena는 Amazon S3에서 빠른 성능을 내도록 최적화되어 있습니다. Athena는 자동으로 쿼리를 병렬로 실행하므로 대규모 데이터 세트에서도 몇 초 만에 쿼리 결과를 얻을 수 있습니다.  

Amazon Athena는 가용성이 뛰어난 데다 여러 시설에서 컴퓨팅 리소스를 사용하여 쿼리를 실행하며, 특정 시설에 도달할 수 없는 경우에는 쿼리를 자동으로 라우팅합니다. Athena는 Amazon S3를 기본 데이터 스토어로 사용하여 데이터 가용성과 내구성을 높입니다. Amazon S3는 중요한 데이터를 저장할 수 있고 99.999999999%의 객체 내구성을 보장하도록 설계된 내구성이 뛰어난 인프라를 제공합니다. 데이터가 여러 시설과 각 시설의 여러 디바이스에 중복 저장됩니다.

Amazon Athena를 사용하면 AWS Identity and Access Management(IAM) 정책, 액세스 통제 목록(ACL) 및 Amazon S3 버킷 정책을 사용하여 데이터에 대한 액세스를 제어할 수 있습니다. IAM 정책을 사용해 IAM 사용자에게 S3 버킷에 대한 세분화된 제어 권한을 부여할 수 있습니다. S3에서 데이터에 대한 액세스를 제어하면 사용자들이 Athena를 사용하여 데이터를 쿼리하지 못하도록 제한할 수 있습니다. Athena를 사용하면 Amazon S3에 저장된 암호화된 데이터를 빠르게 쿼리하고 S3 버킷에 암호화된 결과를 다시 쓸 수 있습니다. 서버 측 암호화 및 클라이언트 측 암호화가 모두 지원됩니다.

Amazon Athena는 즉시 AWS Glue와 통합됩니다. AWS Glue 데이터 카탈로그를 사용하면, 다양한 서비스에 걸쳐 통합된 메타데이터 리포지토리를 생성하고, 데이터 원본을 크롤링하여 스키마를 검색하고 카탈로그를 신규 및 수정된 테이블 정의와 파티션 정의로 채우고, 스키마 버전을 관리할 수 있습니다. 또한, Glue의 완전관리형 ETL 기능을 사용하면 데이터를 변환하거나 데이터를 컬럼 형식으로 변환하여 쿼리 성능을 최적화하고 비용을 절감할 수 있습니다. AWS Glue에 대해 자세히 알아보기.

Athena는 Amazon Redshift, Amazon DynamoDB, Google BigQuery, Google 클라우드 스토리지, Azure Synapse, Azure 데이터 레이크 스토리지, Redis, Snowflake 및 SAP Hana를 포함하여 30개 이상의 인기 있는 AWS, 온프레미스 및 기타 클라우드 데이터 스토어에 기본 제공 커넥터를 제공합니다. Athena 데이터 소스 커넥터를 사용하면 데이터를 이동하거나 변환할 필요 없이 Athena SQL 구문을 사용하여 여러 데이터 소스에서 인사이트를 생성할 수 있습니다. 데이터 커넥터는 AWS Lambda 함수로 실행되며 교차 계정 액세스를 사용하도록 설정할 수 있습니다. 이렇게 하면 SQL 쿼리를 수백 명의 최종 사용자 규모로 확장할 수 있습니다. 지원되는 소스 목록은 사용 가능한 데이터 소스 커넥터를 참조하세요. 사용자 지정 데이터 원본 커넥터를 구축하는 방법을 알아보려면 Athena 커넥터 SDK를 참조하세요.

Athena SQL 쿼리에서 SageMaker 기계 학습 모델을 호출하여 추론을 실행할 수 있습니다. SQL 쿼리에서 ML 모델을 사용하면 SQL 쿼리 작성처럼 간단한 판매 예측 및 이상 탐지, 고객 코호트와 같은 복잡한 작업을 수행할 수 있습니다. Athena를 사용하면 SQL 사용 경험이 있는 사용자가 Amazon SageMaker에 배포된 ML 모델을 간단하게 실행할 수 있습니다.