이번 테크 블로그는 AI빅데이터 시리즈 3부, AWS 빅데이터 서비스 – 분석입니다.
지난 1부에서는 AWS 빅데이터 서비스의 포트폴리오와 수집에 대해, 2부는 저장에 대해 진행되었습니다.
베스핀글로벌에서는 AWS 빅데이터 서비스 포트폴리오를 수집-저장-분석-시각화로 분류했는데요.
각 서비스 항목에 매칭되는 AWS의 제품과 오퍼링을 구분하여 고객사에서 빅데이터를 효율적으로 구축할 수 있는 방법에 대해 소개했습니다.
AWS 총 서비스 항목 약 124종 중 빅데이터 관련 서비스는 약 34종에 달합니다. 이 중에서도 필수 13종과 선택할 수 있는 부분을 나눠 어렵지 않게 다가가실 수 있도록 했습니다.
빅데이터 서비스를 도입하고자 하시는 분들께 매우 유용한 내용이 될 것입니다.
3부의 분석편이 끝나면 4부 시각화편이 이어집니다.
빅데이터를 제대로 활용 하기 위해서는 분석이 매우 잘 진행되어야 하는데 AWS의 어떤 제품이 적합한지 벌써 기대 되실 것 같습니다.
또한 4부에서는 시각화에 대한 내용이 진행되니 기대해주세요!
뉴스레터 가입
클라우드 관련 최신 소식을 업데이트 받으실 수 있습니다.
영역별 서비스 – 분석
데이터 처리 기술
구분 | Amazon EMR(Spark Streaming) | Amazon Kinesis Analytics | AWS Lambda |
---|---|---|---|
AWS Managed | Yes | Yes | Yes |
Serverless | No | Yes | Yes |
Scale / Throughput | No limits / ~ nodes | Up to 8KPU / automatic | No limits / ~ nodes |
Availability | Single AZ | Multi-AZ | Multi-AZ |
Program Language | Java, Python, Scala | ANSI SQL | Node.js, Java, Python |
Uses | Multi-Processing | Multi-Processing | Simple event-based triggers |
* 모바일에서는 좌 / 우로 스크롤해서 보세요.
데이터 분석 기술
구분 | Amazon Redshift | Amazon Athena | Amazon EMR(Presto) | Amazon EMR(Spark) | Amazon EMR(Hive) |
---|---|---|---|---|---|
AWS Managed | Yes | Yes, Serverless | Yes | ||
Storage | Local Storage | Amazon S3 | Amazon S3, HDFS | ||
Scale / Throughput | ~ Nodes | Automatic / No limit | ~ Nodes | ||
Optimization | – Columnar storage – Compression | CSV, JSON, Weblog | Framework dependent | ||
BI tools Support | Yes (JDBC/ODBC) | Yes (JDBC) | Yes (JDBC/ODBC & Custom) | ||
Access Control | Users, Groups, Access Control | AWS IAM | |||
Use Case | Optimized for Data Warehouse | Ad-hoc Interactive Query | Interactive Query | General purpose | Batch |
* 모바일에서는 좌 / 우로 스크롤해서 보세요.
분석 #1 – Amazon Elasticsearch
- 영역
- 분석
- 지역 (Region)
- 모든 Region에서 서비스 제공
- 서비스 명
- Amazon Elasticsearch
- 가격 정책
- 종량 과금제 클러스터 사이즈에 따른 시간당 요금 발생
설명
▶︎ 손쉽게 Elasticsearch를 배포, 보호, 운영 및 확장하여 로그 분석, 전체 텍스트 검색, 애플리케이션 모니터링 등을 수행
▶︎ Elasticsearch의 간편한 API 및 실시간 분석 기능과 더불어 프로덕션 워크로드에 필요한 가용성, 확장성, 보안성을 제공하는 완전 관리형 서비스
▶︎ Kibana, Logstash 및 AWS 서비스(Amazon Virtual Private Cloud(VPC),Amazon Kinesis Firehose, AWS Lambda, Amazon CloudWatch 등)와의 통합 지원
제공 기능
▶︎ 사용편의성
- Amazon Elasticsearch Service를 사용하면 Elasticsearch 소프트웨어를 설치 및 유지 관리할 필요 없이 몇 분 만에 Elasticsearch 클러스터를 배포할 수 있음
- Amazon Elasticsearch Service는 소프트웨어 패치, 장애 복구, 백업, 모니터링 등과 같은 관리 작업을 간소화하는 관리형 서비스
▶︎ 다른 AWS 서비스와 긴밀하게 통합됨
- 원활한 데이터 수집을 위해 Amazon Kinesis Firehose, AWS IoT 및 Amazon CloudWatch Logs와 통합
- 감사를 위해 AWS CloudTrail과 통합
- 보안을 위해 Amazon VPC 및 AWS Identity and Access Management(IAM)와 통합
- 클라우드 오케스트레이션을 위해 Amazon SES AWS CloudFormation과 통합
▶︎ 오픈 소스 API 및 도구 지원
- Elasticsearch 오픈 소스 API에 직접 액세스가능하여 새로운 프로그래밍 기술을 배울 필요가 없음
- 오픈 소스 데이터 수집, 변환 및 로딩 도구인 Logstash와 오픈 소스 시각화 도구인 Kibana를 지원
서비스 지원 정보
- 데이터 유형
- 정형
- 데이터 크기
- 무관
- 실시간 / 배치
- 실시간
- 비고
- 실시간 검색
입력
S3 / Kinesis Streams / Kinesis Firehose / DynamoDB / CloudWatch
서비스의 특 / 장점
▶︎ 로그 분석
- 웹 사이트, 모바일 디바이스, 서버, 센서뿐만 아니라 디지털 마케팅, 애플리케이션 모니터링, 사기 탐지, 광고 기술, 게임 및 IoT와 같은 다양한 애플리케이션에서 생성된 비정형 로그와 반정형 로그를 분석
- Amazon Kinesis Firehose, Logstash 또는 Amazon CloudWatch Logs를 사용하여 로드 데이터를 캡처하고 사전 처리하여 Amazon Elasticsearch Service로 로드합니다
- Kibana 및 Elasticsearch 쿼리 DSL을 통해 데이터를 검색, 탐색 및 시각화하여 사용자와 애플리케이션에 대한 통찰력 확보
출력
kibana
운영 시 고려사항
▶︎ 실시간 검색을 위해서 Timestamp Field 필수
가격 정책 상세
*2017년 12월 가격 기준
Amazon Elasticsearch 인스턴스 요금
▶︎ 인스턴스 형태에 따라 시간당 과금
▶︎ 범용 : t2.micro.elasticsearch($0.028) ~ m4.10xlarge.elasticsearch($3.699) 8개 인스턴스
▶︎ 컴퓨팅 최적화 : c4.large.elasticsearch($0.168) ~ c4.8xlarge.elasticsearch($2.677) 5개 인스턴스
▶︎ 메모리 최적화 : r3.large.elasticsearch($0.294) ~ r4.16xlarge.elasticsearch($7.555) 11개 인스턴스
▶︎ 스토리지 최적화 : i2.xlarge.elasticsearch($1.401) ~ i2.2xlarge.elasticsearch($2.801) 2개 인스턴스
EBS 볼륨 요금(EBS 볼륨 선택 시에만 해당)
▶︎ EBS 표준 볼륨
- General Purpose (SSD) Storage $0.154 월별 GB당
- Magnetic Storage $0.108 월별 GB당
▶︎ EBS 프로비저닝된 IOPS 볼륨
- 스토리지 요금 $0.173 월별 GB당
- 프로비저닝된 IOPS 요금 $0.091 월별 IOPS당
표준 AWS 데이터 전송 요금
▶︎ Amazon Elasticsearch Service를 통해서 데이터를 전송 또는 수신할 경우 표준 AWS 데이터 전송 요금이 적용
▶︎ Amazon Elasticsearch Service 도메인에 속한 노드 간 데이터 전송에 대해서는 요금이 부과되지 않음
무료 자동 스냅샷 스토리지
▶︎ Amazon Elasticsearch 도메인에 대한 자동 스냅샷을 무료로 저장할 수 있는 스토리지 공간을 제공
▶︎ 자동 스냅샷은 14일 동안 보관
▶︎ 수동 스냅샷에는 Amazon S3 스토리지 요금 부과
▶︎ 스냅샷 사용을 위한 데이터 전송 요금은 무료
분석 #2 – Amazon Machine Learning
- 영역
- 분석
- 지역 (Region)
- US East, EU 지역
- 서비스 명
- Amazon Machine Learning
- 가격 정책
- 종량과금제. 최소 비용 없음 – 예측 모델 구축 및 배치/실시간 예측 수행 시 컴퓨팅 비용
설명
복잡한 기계 학습 알고리즘과 기술을 배우지 않고도 기계 학습(ML) 모델 생성 프로세스를 사용 가능하며, 준비된 모델을 이용하여 배치 및 실시간 예측을 위한 API를 제공하여 쉽게 예측이 가능
제공 기능
▶︎ 기계 학습 알고리즘
- 강력하고 확장 가능하게 구현된 업계 표준 기계 학습 알고리즘을 사용
- Amazon Machine Learning를 통해 개발자는 바이너리 속성(바이너리 분류), 범주별 속성(다중 분류) 또는 수치 속성(회귀) 등의 값을 예측하는 모델을 생성 가능
▶︎ 손쉬운 데이터 액세스를 위해 AWS 서비스와 통합
- 기존 AWS 클라우드에 저장되어 있는 데이터 활용이 용이
- Amazon S3에 이미 CSV 파일로 저장되어 있는 데이터 세트를 사용하거나, Amazon Redshift 또는 Amazon RDS에 있는 MySQL 데이터베이스에 쿼리하여 기계 학습 모델 생성 및 사용 가능
▶︎ 모델 평가 및 해석 도구
- 산업 표준 품질 지표를 계산하고 모델 행동을 시각화함으로써 모델의 성능을 쉽게 이해할 수 있으며, 예측에 대한 해석의 미세 조정이 가능하여, 예측 결과를 시각화하여 스마트 애플리케이션에 최적의 결과를 전달할 수 있음
▶︎ 배치 및 실시간 예측을 위한 API
- 기계 학습 모델이 생성되면, 모델에서 예측을 가져올 수 있는 배치 및 실시간 API를 제공하여 고객이 스마트 애플리케이션을 쉽게 구축할 수 있도록 함
서비스 지원 정보
- 데이터 유형
- 정형
- 데이터 크기
- 소
- 실시간 / 배치
- 실시간/배치
- 비고
- 기계학습을 통한 분석 모델 생성
입력
S3 / RDS / RedShift
분석 모델 및 평가
출력
실시간 예측 API
운영 시 고려사항
▶︎ 실시간 예측의 경우, 프로비저닝 되는 모델 크기(메모리 10MB 단위로 시간당 $ 0.001)에 따라 과금
▶︎ 다수의 예측을 동시에 가져와야 하는 경우에는 배치 예측 사용을 권장
- 배치 예측 – 1,000 건당 $0.10 (1,000 미만은 올림 처리)
- 실시간 예측 – 모델 프로비저닝 비용 + 예측당 $0.0001 (1센트 미만은 올림 처리)
가격 정책 상세
*2017년 12월 가격 기준
데이터 모델 및 모델 구축 비용
▶︎ 과금 기준
- 데이터 분석, 모델 교육, 평가 비용은 해당 작업 수행에 요구되는 컴퓨팅 시간
- 입력 데이터의 크기, 데이터 내 속성의 수, 적용된 변환의 수와 유형에 따라 변경
▶︎ 가격 : 시간당 $0.42 (미국 동부 Region 기준)
배치 예측 비용
▶︎ 과금 기준 : 애플리케이션을 위해 생성한 예측의 수
▶︎ 가격 : 1,000 예측당 $0.10, 1,000미만은 올림 처리 (미국 동부 Region 기준)
실시간 예측 비용
▶︎ 과금 기준 : 애플리케이션을 위해 생성한 예측의 수
▶︎ 가격 : 예측당 $0.0001, 1센트 미만은 올림 처리 (미국 동부 Region 기준)
실시간 예측 모델 예약 비용
▶︎ 과금 기준 : 분석 모델에 프로비저닝된 메모리 10MB 당
▶︎ 가격 : 분석 모델 10MB 당 $0.001 (미국 동부 Region 기준)
비고
※ 본 서비스는 미국 동부(버지니아 북부) 및 EU(아일랜드) 지역에서만 지원되어 이 지역의 요금 기준임
분석 #3 – Amazon Kinesis Analytics
- 영역
- 분석
- 지역 (Region)
- 일부 Region 가능 (3/16) *버지니아, 오레곤, 아일랜드 가능
- 서비스 명
- Amazon Kinesis Analytics
- 가격 정책
- 종량 과금제(KPU: 1vCPU, 4G 메모리 처리량)
설명
표준 SQL을 통해 실시간으로 스트리밍 데이터를 처리 및 분석할 수 있고, 전체 스트리밍 애플리케이션을 구축하는데 사용될 수 있는 분석 서비스
– 로그 분석, 클릭스트림 분석, 사물 인터넷(IoT), 광고, 게임 등을 위한 엔드 투 엔드 스트림 처리 애플리케이션 신속 구축
제공 기능
▶︎ 확장성
- 수신 데이터 볼륨과 처리량 속도에 맞춰 스트리밍을 처리하는데 필요한 리소스를 자동으로 프로비저닝, 배포 및 확장함
▶︎ 종량제 비용
- 쿼리가 사용한 리소스에 대한 비용을 KPU 단위로 지불 (최소 요금이나 설치 비용 없음)
▶︎ 스키마 편집기 제공
- 자동으로 표준 데이터 형식(JSON, CSV)을 인식하고, 데이터를 파싱하여 스키마를 제안
- 이 스키마는 대화식 스키마 편집기를 사용하여 수정할 수 있음
▶︎ 쿼리 지원 (표준 SQL, 대화식 SQL 편집기)
- 직관적인 표준 SQL을 지원하며, 스트리밍 결과나 오류를 보고 대화식으로 스크립트 디버깅 및 추가 조정 가능
▶︎ 사용 패턴
- 시계열 분석, 실시간 대시보드, 실시간 경보 및 알림
서비스 지원 정보
- 데이터 유형
- 정형/비정형
- 데이터 크기
- 무관
- 실시간 / 배치
- 실시간
- 비고
- CEP (Complex Event Processing)
입력
Kinesis streams / Kinesis Firehose
서비스의 특 / 장점
출력
Kinesis Stream / Kinesis / Firehose -> S3 / RedShift / Elastic Search
운영 시 고려사항
▶︎ S3, Redshift 등 직접 연결을 지원하는 출력 대상 외에 결과를 전송하고자 할 경우, AWS Lambda를 사용하여 전송 구성
▶︎ 고급 분석용(이상 탐지 등)으로 사전에 구축된 SQL 함수 사용 가능
가격 정책 상세
*2017년 12월 가격 기준
분석 수행 비용
▶︎ 과금 기준
- 스트림 처리 애플리케이션을 실행하는 데 사용된 Kinesis 처리 단위(KPU: Kinesis Processing Unit)의 평균 개수
- 분석을 위한 리소스 프로비저닝할 필요가 없고, 선 결제 금액이나 최소 비용 없음
▶︎ KPU
- 메모리 4GB, 컴퓨팅 1vCPU 및 해당 네트워킹 기능으로 구성된 스트림 처리 용량 단위
- 쿼리의 복잡도가 다르고 이에 따라 메모리 및 컴퓨팅 요구가 달라지므로, Amazon Kinesis Analytics에서는 분석을 완료하는 데 필요한 KPU 수를 탄력적으로 자동 조정
▶︎ 가격
- 1KPU/시간당 $0.110 (미국 동부 Region 기준)
예시
▶︎ 고객은 Amazon Kinesis Analytics를 사용하여 Kinesis Stream에 캡처되어 있는 온라인 쇼핑 트랜잭션에서 판매된 항목의 1분 슬라이딩 윈도우 합계를 계산합니다. 이 스트림은 보통 초당 레코드 1,000개의 속도로 데이터를 수집하지만, 데이터는 하루에 한 번 프로모션 캠페인 중에 1시간 미만 동안 초당 레코드 6,000개의 속도로 급증합니다. 이 고객의 월별 Kinesis Analytics 요금은?
- 미국 리전의 요금은 KPU별로 시간당 $0.11
- 1KPU는 메모리 4GB, 컴퓨팅 1vCPU 및 해당 네트워킹 기능과 동일한 스트림 처리 용량을 제공
- 수신 Kinesis 스트림은 초당 레코드 1,000개의 속도로 데이터를 전송
- 하루에 한 번 1시간 미만 동안 Stream이 초당 레코드 6,000개로 급증
(1) 하루 24시간 중 23시간 동안 발생하는 ‘안정 상태’의 경우
– 슬라이딩 윈도우 쿼리는 데이터를 처리하는 데 3.2GB의 메모리와 1vCPU의 50%를 사용
– 스트리밍 SQL 쿼리가 메모리를 4GB 미만 그리고 컴퓨팅을 1vCPU 미만으로 사용하므로 1 KPU 필요
– 안정 상태 = 30일 * 23시간 * (1KPU * $0.11/시간) = $75.90
(2) 하루 24시간 중 1시간 동안 발생하는 ‘스파이크 상태’의 경우
– 슬라이딩 윈도우 쿼리는 스트림의 더 큰 데이터 처리량을 처리하는 데 6.4GB의 메모리와 1vCPU의 75%를 사용
– 단일 KPU에서 제공하는 메모리를 초과하여 사용하여 2 KPU 필요
– 스파이크 상태 = 30일 * 1시간 * (2KPU * $0.11/시간) = $6.60
분석 #4 – Amazon EMR
- 영역
- 분석
- 지역 (Region)
- 전지역
- 서비스 명
- Amazon EMR
- 가격 정책
- EMR 서비스 비용 (노드 수 x 실행 시간: 초당, 최소 요금 1분) + 클러스터에서 사용되는 EC2 및 EBS 요금
설명
동적으로 확장 가능한 Amazon EC2 인스턴스 전체에서 대량의 데이터를 쉽고 빠르며 비용 효율적으로 처리할 수 있는 관리형 Hadoop 프레임워크로, Apache Spark, HBase, Presto, Flink와 같이 널리 범용 분산 프레임워크를 실행
제공 기능
▶︎ 탄력적 운영
- 필요한(On-Demand) 시기에 필요한 용량을 손쉽게 프로비저닝이 가능하며, 또한 실행 중인 클러스터에 Scale in/out을 자동으로 확장하거나 수동으로 조정이 가능
▶︎ Hadoop Ecosystem
- Hive, Pig, HBase, Phoenix, Impala, Hue, Spark, Presto, Zeppelin, Oozie, Tez, Flink 등 강력하고 시장에서 입증된 Hadoop 생태계의 도구를 지원
▶︎ 유연한 데이터 스토어
- 로컬 HDFS, Amazon S3, Amazon DynamoDB, Amazon Redshift, Amazon Glacier 등 다양한 데이터 소스를 안정적으로 처리/활용 가능
▶︎ ETL (Extract Transform Load) 기능
- 대규모 데이터 세트에 대해 정렬, 집계, 조인 등과 같은 데이터 변환 워크로드(ETL)를 신속하고 비용 효율적으로 수행
▶︎ 반복적 워크플로우 일정 조정
- AWS Data Pipeline을 활용하면, 온프레미스 데이터 소스뿐 아니라 여러 AWS 컴퓨팅 및 스토리지 서비스 간에 데이터를 안정적으로 처리하고 지정된 주기로 이동할 수 있도록 Amazon EMR 클러스터의 스케줄링 가능
서비스 지원 정보
- 데이터 유형
- 정형/반정형
- 데이터 크기
- 대량
- 실시간 / 배치
- 배치
입력
S3 / DynamoDB / RedShift / …
EMR Ecosystem Version 정보
출력
S3 / DynamoDB / RedShift / …
운영 시 고려사항
▶︎ 클러스터 구성 시, Reserved Instance나 Spot Instance를 사용하여 요금 절감 고려 필요
- Master Node와 최소한의 Core Node는 On-Demand Instance를 활용하고, Task Node는 Spot Instance를 사용
▶︎ 데이터는 HDFS 스토리지 보다는 S3에 저장하고, EMR은 데이터 저장보다는 데이터 처리용으로만 사용을 권장
가격 정책 상세
*2017년 12월 가격 기준
EMR 서비스 비용
▶︎ 과금 기준
- 클러스터가 시작된 시점부터 종료될 때까지 인스턴스 실행 시간(초당)
- 인스턴스 유형(예: 스탠다드, 고성능 CPU, 고용량 메모리, 고용량 스토리지 등)에 따라 상이
▶︎ 과금 적용 최소 단위
- 1분
▶︎ 가격
- 시간당 $0.011 ~ $0.27 (연간 $94 ~$2,367)
인스턴스 유형 | 기준 Type 및 사양 (예) | EC2 가격 | EMR 가격 |
---|---|---|---|
범용 (m4.large~m4.16xlarge) | m4.4xlarge / 16 vCPU, 64GiB | $0.984 | $0.240 |
컴퓨팅 최적화 (c4.large~c4.8xlarge) | c4.4xlarge / 16 vCPU, 30GiB | $0.907 | $0.210 |
GPU 인스턴스 (p2.xlarge~p2.16xlarge) | p2.xlarge / 1 GPU, 4 vCPU, 61 GiB, 2 GiB (GPU 메모리) | $1.465 | $0.225 |
메모리 최적화 (r4.xlarge~r3.8xlarge) | r4.4xlarge / 16 vCPU, 122 GiB | $1.280 | $0.266 |
스토리지 최적화 (i3.xlarge~d2.8xlarge) | i3.4xlarge / 16vCPU, 122 GiB, 2 x 1.9 NVMe SSD | $1.464 | $0.270 |
기타
※ Amazon EMR 요금은 클러스터 인스턴스의 EC2요금과 EMR 서비스 요금의 합으로 이루어짐
※ 기타: Amazon EMR 요금은 클러스터 인스턴스의 EC2요금과 EMR 서비스 요금의 합으로 이루어짐
이어지는 4부에서는 AWS 빅데이터 영역별 서비스 – 시각화편이 이어집니다.
AWS 빅데이터에 대해 더 알아보고 싶다면, 지금 찾아가는 세미나 신청하세요
베스핀글로벌이 직접 찾아가 자세히 알려드립니다.
클라우드에 대해 무엇이든 묻고! 덤으로 버거킹도! 베스핀글로벌의 찾아가는 세미나
사이트를 클릭하시고, 30초도 안걸리는 신청하기 버튼 누르면 끝!
세미나 신청하기: www.bespincloudops.com/guestbook
연관 콘텐츠
- AI/빅데이터 시리즈 [1부] AWS 빅데이터 서비스 포트폴리오, 수집
- AI/빅데이터 시리즈 [2부] AWS 빅데이터 – 저장
- [Step by Step] Amazon RDS 가용성 및 확장성 (Multi AZ 및 Read Replica)
- Amazon Relational Database Service Monitoring
- [Step by Step] Relational Database Service(RDS)
- Amazon Relational Database Service (RDS, Amazon 관계형 데이터베이스)
- [Bespin’s Pick vol.11] AWS RDS vs EC2 차이점, 간단히 파악하기
AWS에 대해 더 알고 싶으세요?
베스핀글로벌의 AWS 전문 엔지니어가 답해드립니다.