Test Benchmark : AWS Redsfhift, Athena, EMR(Presto, Hive)
작성자 GS Neotek 작성일 11월 17, 2017 조회수 2612
주의 : 테스트 환경, 방식, 데이터 사이즈 등에 따라 결과가 달라지므로 단순 참고용임을 말씀드립니다.
시작하기
목차
- 테스트 준비
- TPC-DS 데이터 생성
- 클러스터 준비
- 테이블 생성 및 데이터 로드
- Query 수행
- TPC-DS 99 Query 중 52개 Query 순차 수행
- 결론
테스트 준비
-
TPC-DS 데이터 생성
-
클러스터 준비
- 테스트 임의 환경 구축
- Athena의 경우 서버리스 서비스 이므로 별도 구성이 불필요
- EMR 클러스터 구성
- EMR version 5.9.0 : presto 0.166, hive 2.1.1
- presto max memory 사이즈 변경외 기타 설정은 변경하지 않음
-
테이블 생성 및 데이터 로드
- Redshift
- 테이블 생성 : Distribution key – Even(default) , Sort key – 미적용
- S3 데이터 로드 : Copy command
- Athena
- S3를 location으로하는 parquet 형식으로 저장된 External 테이블 생성
- EMR (Presto, Hive)
- S3를 location으로하는 parquet 형식으로 저장된 External 테이블 생성
Query 수행
-
TPC-DS 99 Query 중 52개 Query 순차 수행 (단일 사용자 가정, 총 3회 수행)
- 각 query 별 수행 소요 시간
- 52개 Query 총 수행 소요 시간 (순수 query 수행 소요 시간 합계 – idle time 제외)
- Athena 총 스캔사이즈 : 0.18 TB
결론
- 테스트 사양 대비 Redshift 가 쿼리 수행 소요 시간이 가장 짧았음.
- 테스트 사양 대비 EMR(Presto) 별도 구성보다 Athena의 쿼리 소요 시간이 짧았으며, 비용적으로 비교하기에는 무리가 있으나 Athena의 스캔사이즈가 적었기 때문에 좀 더 비용 효율적이라고 판단됨.
- EMR(Presto) 구성의 경우 소요 시간이 걸리더라도 Spot 으로 저렴하게 구성 한다고 가정하면 비용 효율적으로 접근 가능함.
최신 댓글