✅ AWS Athena란?
Amazon Athena는 AWS에서 제공하는 서버리스(Serverless) SQL 쿼리 서비스이다.
즉, 서버를 직접 구축하거나 관리하지 않아도, S3에 저장된 데이터에 SQL로 직접 접근하여 분석할 수 있는 서비스이다.
Athena는 필요시에만 SQL 쿼리를 날려 데이터를 분석하는 서비스로, 분석 환경을 빠르게 구성하고 비용을 절감할 수 있는 장점이 있다.
1. S3 버킷에 CSV 데이터 저장 (이전 포스팅 참고) https://z00h.tistory.com/136
↓
2. Athena에서 데이터베이스 및 테이블 생성
↓
3. SQL 쿼리를 작성하여 데이터 조회 및 분석
↓
4. 결과 확인 및 저장 (CSV 다운로드 등)
Athena를 왜 써야 하는가?
로그 분석 | EC2 인스턴스 없이도 S3 로그파일(SQL 분석 가능) |
빅데이터 처리 | 대용량 데이터도 빠르게 분석 가능 (병렬 처리) |
비용 절감 | 분석에 필요한 시간만큼만 과금됨 |
실습/학습 | SQL만 알면 누구나 사용 가능, 프리티어 실습도 가능 |
BI 연계 | QuickSight 등 시각화 도구와 연동 가능 |
이전 포스팅에서 S3에 CSV 파일을 업로드까지 완료한 상황에서 해당 실습을 진행한다.
Athena 설정
✅ 쿼리 결과 저장 위치 지정
- Athena 콘솔 접속: https://console.aws.amazon.com/athena
- 쿼리편집기 상단 탭에서 '설정'탭 클릭 → 첫 사용 시 쿼리 결과 저장 위치를 설정해야 함
Browse S3 클릭
생성한 S3 저장소 경로 설정
결과 위치 → S3 경로 지정
✅ 테이블 생성
CSV 기준 테이블 생성 쿼리를 작성하여 '실행' 버튼을 누르면 좌측에 'member' 테이블이 생성된 것을 확인 할 수 있다.
✅ 테이블 생성 후 확인
area 필드 값이 Seoul인 데이터를 SELECT문으로 조회해보았다.
SELECT * FROM member where area = 'Seoul';
정상적으로 CSV 파일 내 데이터가 잘 조회된 것을 확인 할 수 있다!
💥 [참고]AWS Athena에서 SELECT가 안 될 때,
_로 시작하는 파일명 문제
처음 쿼리를 날렸을때 아무런 데이터가 조회 되지 않았는데 DBeaver에서 생성한 CSV 파일명이 '_'로 시작하는 파일명으로 등록되어있어 아무린 결과가 나오지 않았다.
기존 파일명은 '_member__202504081609.csv' 이였는데 파일명을 'member.csv'로 수정해주니 정상적으로 CSV 파일을 읽어와 쿼리가 잘 실행 되었다.
Athena에서 _나 .으로 시작하는 파일을 시스템 파일 또는 숨김 파일로 간주하여 쿼리 대상에서 제외하였기 때문에 인식을 하지 못한 듯 하다. CSV 파일이 조회되지 않는다면 참고하길 바란다.
'AWS' 카테고리의 다른 글
[AWS] QuickSight로 S3 데이터 시각화하기 (0) | 2025.04.09 |
---|---|
[AWS] S3 파일 업로드시 CSV 파일 한글 깨짐 현상 (해결) (1) | 2025.04.09 |
[AWS] S3 버킷 생성 CSV파일 업로드 (0) | 2025.04.08 |
[AWS] SpringBoot 프로젝트 (EC2) 배포 Mariadb,Maven, git(2) (0) | 2025.04.04 |
[AWS] SpringBoot 프로젝트 배포 Mariadb,Maven (0) | 2025.04.04 |