728x90

Athena

Athena는 데이터 자체를 S3에 쌓아두다가 그걸 쿼리가 들어올 때 로딩해서 처리해주는 일종의 온디맨드 DW 기술. 인터페이스는 SQL

* 온디맨드  기술

온디맨드 S/W 스트리밍(On-demand software streaming) 기술은 스트리밍 기법을 통하여 서버에 존재하는 응용 프로그램 이미지 중 일부를 클라이언트에서 실행하는 기술로서클라이언트는 응용 프로그램을 자신의 저장 장치에 전체 다운로드 및 직접 설치하지 않고도 실행에 필요한 부분만 네트워크를 통하여 서버로부터 전송받아 실행시킬 수 있다

사용한 만큼 돈을 내는 형태의 pricing model

정말로 큰 데이터를 가지고 실험적인 데이터 분석을 해야한다면 Athena가 Redshift보다는 훨씬 더 좋은 옵션.

이런 데이터를 Redshift에서 분석하려면 일단 더 큰 용량을 사야해서 고정비용이 늘어나고 데이터를 로딩하는 것도 일

 

Glue (AWS Glue-Athena)

athena를 사용하기 전에 glue data catalog를 만들어놓으면 좋다. (대부분 이렇게 사용하긴 함)

s3에 쿼리를 날리면 스키마 파악을 위해서 전체 파일을 읽는다. glue data catalog는 메타데이터를 미리 명시해놓는데, athena를 사용할때 이 catalog를 통하게 되면 미리 정의되어 있는 메타데이터를 가지고 데이터를 읽는다.

s3 내에서 컬럼이 있는 파일을 읽는 경우(ex. parquet) 데이터 타입이 이상한 파일이 있으면 glue data catalog단에서 HIVE METASTORE 에러를 발생시킴 (내부 엔진은 하이브가 도는 듯.)
데이터 정합성을 보증하기에도 좋고, 파티션을 나눠 범위를 지정할수도 있어 효율적인 데이터 스캔이 가능하다.

파티션 없이 join 몇개 걸다보면 요금이 꽤 많이 나올수도 있기 때문에 쿼리 날릴때는 항상 신중하게..^^

만약 athena를 사용하시려면 aws glue data catalog / crawler 도 보시면 유용할 것

 

Redshift

별도의 스토리지가 있는 DW이라서 명시적으로 데이터를 로딩

고정된 용량을 사고 매달 일정 비용

728x90

'TIL(Today I Learned)' 카테고리의 다른 글

TIL_0819_spark VS 맵리듀스 hadoop  (0) 2021.08.19
TIL_210811_AWS IAM MFA 권한 허용  (0) 2021.08.11
TIL_210320_멀티프로세스  (0) 2021.03.20
TIL_210211  (0) 2021.02.11
TIL_210209_MQ  (0) 2021.02.09

+ Recent posts