2020. 12. 30. 09:30ㆍAWS
ㅇ Athena란?
> 표준 SQL을 사용해 S3에 저장된 데이터를 간편하게 분석할 수 있는 쿼리 서비스
> 사용한 쿼리에 대해서만 비용 지불
ㅇ Athena 사용
> [Athena 서비스] - [Get Started] 선택
> [Workgroup: test] - [Create workgroup]을 선택해 Workgroup 생성
* Workgroup: 수행할 Athena 결과를 어느 S3에 저장할 지 선택
> Workgroup 이름과 결과가 저장될 S3 위치 설정
> [Query Editor] 탭에서 쿼리문을 실행해 S3 분석이 가능하며, Query 사용을 위해 Table을 우선적으로 생성
* DB에 사용될 Table을 생성, 수정, 검색을 각각 하나의 Query를 사용해서 수행
* Table 생성 Query(CloudTrail에 기입되는 모든 정보를 출력하기 위한 Table)
CREATE EXTERNAL TABLE (Table 이름) (
eventversion STRING,
useridentity STRUCT<
type:STRING,
principalid:STRING,
arn:STRING,
accountid:STRING,
invokedby:STRING,
accesskeyid:STRING,
userName:STRING,
sessioncontext:STRUCT<
attributes:STRUCT<
mfaauthenticated:STRING,
creationdate:STRING>,
sessionissuer:STRUCT<
type:STRING,
principalId:STRING,
arn:STRING,
accountId:STRING,
userName:STRING>>>,
eventtime STRING,
eventsource STRING,
eventname STRING,
awsregion STRING,
sourceipaddress STRING,
useragent STRING,
errorcode STRING,
errormessage STRING,
requestparameters STRING,
responseelements STRING,
additionaleventdata STRING,
requestid STRING,
eventid STRING,
resources ARRAY<STRUCT<
ARN:STRING,
accountId:STRING,
type:STRING>>,
eventtype STRING,
apiversion STRING,
readonly STRING,
recipientaccountid STRING,
serviceeventdetails STRING,
sharedeventid STRING,
vpcendpointid STRING
)
PARTITIONED BY (region string, year string, month string, day string)
ROW FORMAT SERDE 'com.amazon.emr.hive.serde.CloudTrailSerde'
STORED AS INPUTFORMAT 'com.amazon.emr.cloudtrail.CloudTrailInputFormat'
OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION '(분석할 S3 위치)';
> 이후 "Ctrl + Enter"을 통해 쿼리문을 수행할 수 있으며, Table 생성에 성공했을 경우 좌측 "Tables"에 새로운 Table이 생성됨을 확인 가능
> 쿼리문 처리를 위해 스캔하는 데이터 양을 제한하여 성능을 향상시키고, 비용을 절감시키기 위해 데이터 파티셔닝이 가능
* 파티셔닝: 어떤 키를 기준으로 데이터를 분류하는 작업으로, 이번 실습에서는 지역, 연, 월, 일 로 진행
> 해당 Table의 모든 데이터 출력
> Query문 작성란 하단부에 해당 Query의 결과가 출력됨
> 해당 결과문은 .csv 파일로 다운이 가능
'AWS' 카테고리의 다른 글
[AWS Route53] 47. Record 마이그레이션 (0) | 2021.01.01 |
---|---|
[AWS] 46. Apache 서버 인증서 변경 및 적용 (0) | 2020.12.31 |
[AWS] 40. NTP 설정 (0) | 2020.10.05 |
[AWS VPC] 39. VPC EndPoint (0) | 2020.09.25 |
[AWS EC2] 38. AutoScaling 정책 (0) | 2020.09.24 |