S3를 DB처럼 SQL로 조회할 수 있다고? - Amazon Athena로 S3에 저장된 로그 쿼리하기 (S3 & Athena & Glue)
## GLUE - 스키마 생성시 사용
## AWS Glue Crawler 를 사용해 S3버킷에 저장된 로그의 스키마 생성
## S3버킷 생성
- 샘플로그 업로드
## GlueCrawler 를 사용하여 스키마와 테이블 생성
- 크롤러 추가 클릭
- 데이터베이스 추가
- 크롤러 생성 완료 --> 선택하고 실행 클릭
- 55초 후에 테이블 추가됨
- 데이터베이스 -> 테이블 -> rubywave_athena_log_test 테이블 생성 (버킷명과 동일)
## Athena 를 활용하여 쿼리 수행
- 첫 번째 쿼리를 실행하기 전에, Amazon S3에서 쿼리 결과 위치를 설정해야 함.
- 설정 --> 관리 클릭
: 버킷 새로 만들거나 기존 버킷 사용 가능
- 다시 편집기로 이동
: 데이터베이스 선택 (demo-athena-log)
: 테이블 미리보기 선택
- bob 의 최근 실행내용 쿼리문 조회
SELECT * FROM "demo-athena-log"."rubywave_athena_log_test" where user_id='bob' order by time desc
- bob 의 자유게시판 최근 실행내용 쿼리문 조회
SELECT * FROM "demo-athena-log"."rubywave_athena_log_test" where user_id='bob' and board_name='free' order by time desc
- bob 이 insert 를 몇번 했는지 카운트
SELECT count(*) FROM "demo-athena-log"."rubywave_athena_log_test" where user_id='bob' and action='insert'
## 테이블 조인은 불가!!
출처 :
https://www.youtube.com/watch?v=VDqToPfbuok