이번 테크블로그는 AI/빅데이터 시리즈입니다.
AWS 시리즈로 4회 진행되며, Azure, Google Cloud Platform 관련 내용으로도 진행됩니다.
포스트의 시작은 ‘1부-AWS 빅데이터 서비스 포트폴리오, 영역별 서비스 중 수집’으로 문을 엽니다.
빅데이터 서비스를 구현하기 위해 시스템을 구성하는 방법과 인프라에 대해 고민이 많으실 텐데요.
베스핀글로벌에서는 다양한 경험을 바탕으로 AWS를 활용하여 효율적으로 빅데이터 서비스를 구현하는 방법과 포트폴리오를 제안합니다.
빅데이터 서비스를 구현하고자 하시는 분들께 매우 유용한 팁이 될 것입니다.
이후 AI/빅데이터 시리즈 2부에서는 AWS 빅데이터 영역별 서비스 – 저장편이 이어집니다.
베스핀글로벌의 AI/빅데이터 테크블로그 시리즈, 많이 기대 해주세요!
뉴스레터 가입
클라우드 관련 최신 소식을 업데이트 받으실 수 있습니다.
AWS 빅데이터 서비스 포트폴리오
- BigData 관련 서비스를 중요도, 우선 순위 등을 고려하여 하기와 같이 분류하였습니다.
- AWS BigData 관련 서비스 34종(AWS 총 서비스 124종) 중 필수 13종을 선정하였습니다.
구분 | 필수 (중점 전략화 대상) | 선택 | 기타 |
---|---|---|---|
수집 |
|
|
|
저장 |
|
|
|
분석 |
|
|
|
시각화 |
|
|
|
* 모바일에서는 좌 / 우로 스크롤해서 보세요.
- AWS의 다양한 서비스를 활용하여 다양한 Case의 Big Data 솔루션을 민첩하게 제공
전체 서비스 현황(서울)
필수 선택
1) 수집
제품명 | Category | 내용 | 지원 |
---|---|---|---|
Amazon Kinesis Firehose | 분석 | 실시간 스크리밍 데이터 작업 | |
Amazon Kinesis Streams | 분석 | 실시간 스크리밍 데이터 작업 | ◉ |
AWS Database Migration Service | DB, Migration | 최소 다운타임으로 DB 이전 | ◉ |
AWS Direct Connect | NW/콘텐츠전송 | AWS로 전용 네트워크 연결 | ◉ |
AWS Snowball | 스토리지, Migration | 페타바이트 규모 데이터 전송 | |
AWS Snowball Edge | 스토리지, Migration | 온보드 컴퓨팅으로 페타바이트 규모 데이터 전송 | ◉ |
AWS Snowmobile | 스토리지, Migration | 엑사바이트 규모 데이터 전송 | ◉ |
VM Import/Export | 컴퓨팅 | On-Prem VM ↔ AWS EC2 | ◉ |
AWS IoT | IoT | 디바이스를 클라우드에 연결 | |
AWS Greengrass | IoT | 디바이스를 위한 로컬 컴퓨팅, 메시징 및 동기화 | |
AWS Glue | 데이터 이동 | 데이터 준비 및 로드(ETL) |
* 모바일에서는 좌 / 우로 스크롤해서 보세요.
2) 저장
제품명 | Category | 내용 | 지원 |
---|---|---|---|
Amazon Aurora | DB | 고성능 관리형 관계형 데이터베이스 | ◉ |
Amazon Relational Database Service(RDS) | DB | 관리형 관계형 데이터베이스MySQL, PostgreSQL, Oracle, SQL Server | ◉ |
Amazon DynamoDB | DB | 관리형 NoSQL 데이터베이스 | ◉ |
AWS Data Pipeline | 데이터 이동 | 데이터 위주의 주기적인 워크플로 | |
Amazon Simple Storage Service(S3) | 스토리지 | 클라우드상의 확장 가능한 스토리지 | ◉ |
Amazon Glacier | 스토리지 | 클라우드상의 저렴한 아카이브 스토리지 | ◉ |
Amazon Redshift | DB, 분석 | 빠르고 간단하며 비용 효과적인 DW | ◉ |
* 모바일에서는 좌 / 우로 스크롤해서 보세요.
3) 분석
제품명 | Category | 내용 | 지원 |
---|---|---|---|
Amazon Athena | 분석 | SQL을 사용해 S3 데이터 쿼리 | |
Amazon Elastic Compute Cloud(EC2) | 컴퓨팅 | 클라우드상의 가상 서버 | ◉ |
Amazon Elastic MapReduce | 분석 | 호스팅 하둡 프레임워크 | ◉ |
Amazon Kinesis Analytics | 분석 | 실시간 스트리밍 데이터 작업 | |
Amazon Machine Learning | 인공지능 | 개발자용 Machine Learning | |
Amazon Elasticsearch Service | 분석 | Elasticsearch 클러스터 실행 및 확장 | ◉ |
Amazon CloudSearch | 분석 | 관리형 검색 서비스 | ◉ |
AWS Lambda | 컴퓨팅 | 이벤트에 대한 응답으로 코드 실행 | ◉ |
* 모바일에서는 좌 / 우로 스크롤해서 보세요.
4) 시각화
제품명 | Category | 내용 | 지원 |
---|---|---|---|
Amazon QuickSight | BI | 빠른 비즈니스 분석 서비스 |
* 모바일에서는 좌 / 우로 스크롤해서 보세요.
5) 관리 / 보안
제품명 | Category | 내용 | 지원 |
---|---|---|---|
Amazon CloudWatch | 관리도구 | 리소스 및 애플리케이션 모니터링 | ◉ |
AWS CloudFormation | 관리도구 | 탬플릿을 사용하여 리소스 생성/관리 | ◉ |
AWS Key Management Service | 보안/자격증명/규정준수 | 암호화 키의 제어 및 생성 관리 | ◉ |
AWS OpsWorks Stacks | 관리도구 | 운영 자동화 | ◉ |
AWS Identity & Access Management | 보안/자격증명/규정준수 | 사용자 엑세스 및 암호화 키 관리 | |
Amazon Simple Notification Service(SNS) | 메세징 | Pub/Sub, Mobile Push 및 SMS | ◉ |
Amazon Simple Queue Service(SQS) | 메세징 | 관리형 메시지 대기열 | ◉ |
* 모바일에서는 좌 / 우로 스크롤해서 보세요.
영역별 서비스 – 수집
수집 #1 – Amazon Kinesis Streams
- 영역
- 수집
- 지역 (Region)
- 전체 Region 가능 (16/16)
- 서비스 명
- Amazon Kinesis Streams
- 가격 정책
- 종량 과금제. 최소 요금 없음 (샤드시간, Put페이로드, 보관기간)
https://aws.amazon.com/ko/kinesis/streams/pricing/
설명
데이터가 생성되는 대로 실시간으로 데이터를 수집하고 병렬로 처리하여 비즈니스 및 운영에 관한 중요 정보에 즉시 대응토록 지원하는 서비스
제공 기능
▶︎ 탄력성
처리량을 시간당 메가바이트 규모에서 테라바이트 규모로 확장 가능
초당 PUT 레코드를 수천 개에서 수백만 개로 확장 가능
▶︎ 안정성: AWS 리전의 3개 가용 Zone에 스트리밍 데이터를 동기식으로 복제, 데이터 최대 7시간 보존
(애플리케이션, 개별 시스템 또는 시설 장애 발생 시 데이터 손실 최소화)
▶︎ 보안: VPC 엔드포인트 생성시 VPC에서 Kinesis Streams API에 비공개로 액세스 가능
Kinesis Streams 내 민감한 데이터 암호화 (서버 측 암호화와 AWS KMS 마스터 키를 사용)
▶︎ 사용 편의성: Kinesis 생산자 라이브러리(KPL)를 사용하여 손쉽게 스트림에 데이터를 추가
Kinesis 클라이언트 라이브러리(KCL)를 사용하여 데이터 처리용 Kinesis 애플리케이션을 구축
서비스 지원 정보
- 데이터 유형
- 정형 / 비정형
- 데이터 크기
- 무관
- 실시간 / 배치
- 실시간
입력
WebSite 클릭 / IT 로그 / IoT
서비스의 특 / 장점
출력
S3 / Redshift / EMR / Lambda
운영 시 고려사항
▶︎ 스트림 보존 기간은 기본적으로 생성 후 24시간으로 설정 (최대 7일까지 연장 가능)
가격 정책 상세
*2017년 12월 가격 기준
샤드 시간
▶︎ 샤드 시간(초당 1MB 수신, 초당 2MB 송신) : $0.0185
- 샤드 : Amazon Kinesis 스트림의 기본 처리량 단위
- 샤드 1개는 초당 최대 1,000개의 레코드 지원, 스트림 내에서 필요한 샤드 수를 필요한 처리량을 토대로 지정
PUT 페이로드 단위(25KB)
▶︎ PUT 페이로드 1백만개 : $0.0204
- 레코드는 데이터 생산자가 Amazon Kinesis 스트림에 추가하는 데이터
- PUT 페이로드 단위는 레코드를 구성하는 25KB 페이로드 “청크”로 계산
-> EX. 5KB 레코드는 1개의 PUT 페이로드, 45KB 레코드는 2개의 PUT 페이로드, 1MB 레코드는 40개의 PUT 페이로드
데이터 보관 기간
▶︎ 데이터 보존 기간 연장(최대 7일), 샤드 시간 : $0.0247
- Amazon Kinesis는 Default 24시간 데이터 저장 (최대 7일까지 연장)
- 데이터 보존 기간 연장을 활성화하면 스트림에서 발생한 샤드 시간당 추가 비용이 부과
비고
▶︎ 데이터 전송 무료 (데이터 재생기 → Kinesis Streams, Kinesis Streams → S3 등)
예시
▶︎ 초당 100개의 35KB 레코드 발생(데이터 입력 속도 : 3.5MB/초)하고 월간 처리량/데이터 크기 일정 시 월별 요금?
샤드 월비용 : $53
- 샤드 4개는 초당 4MB의 데이터 입력 용량 및 4,000개의 레코드를 지원, 초당 100개 레코드에 초당 3.4MB 충족
- 1샤드 시간당 $0.0185, 1일당 $0.444 (0.0185*24), 샤드가 4개 있으므로 1일 $1.776, 월별(30일) 비용은 $53
PUT 페이로드 월비용 : $10.6
- 해당 레코드는 35KB, 각 레코드는 2개의 PUT 페이로드, 초당 100개의 레코드이므로 초당 200 PUT 페이로드 단위 추가
- 월별(30) 총 518,400,000개의 PUT 페이로드 단위, 월별 PUT 페이로드 단위 비용 $10.6 (0.0204*518.4)
데이터 보존 기간 연장 월비용 : $71 (한달 내내 보존기간 연장 활성화 가정)
- 데이터 보존 기간 연장 비용은 샤드 시간당 $0.0247. 스트림에서 매월 2,880 샤드 시간 발생(샤드 4개*24시간/일*30일)
- 월별 데이터 보존 기간 연장 비용은 $71 (0.0247*2,880)
수집 #2 – Amazon Kinesis Firehose
- 영역
- 수집
- 지역 (Region)
- 일부 Region 가능 (6/16) *현재 서울 리전 없음
- 서비스 명
- AWS Kinesis Firehose
- 가격 정책
- 종량 과금제. 최소 요금 없음 (수집데이터 용량)
https://aws.amazon.com/ko/kinesis/firehose/pricing/
설명
스트리밍 데이터를 캡처하고 변환하여 Kinesis Analytics, S3, Redshift 등으로 로드하여, 실시간 분석을 가능케 함
제공 기능
▶︎ 사용 편이성: 간단하게 Firehose 전송 스트림을 생성, 대상 선택 후, 수십만 개의 데이터 원본에서 동시에 실시간 데이터 전송 시작
스트리밍 데이터 로드 시 필요한 컴퓨팅, 메모리, 네트워크 리소스를 자동 프로비저닝, 관리, 확장 (완전 관리형 서비스)
▶︎ 통합성: Amazon S3, Amazon Redshift 및 Amazon Elasticsearch Service와 유기적으로 통합되어 실시간 분석 제공
▶︎ 보안: 데이터가 대상에 업로드된 후에 자동으로 암호화되도록 하는 옵션 제공
전송 스트림 구성의 일부로서 AWS Key Management System(KMS) 암호화 키를 지정
▶︎ 서버 없는 데이터 변환: 데이터 원본의 원시 스트리밍 데이터를 대상 데이터 스토어에서 요구하는 형식으로 손쉽게 변환 가능
(자체 데이터 처리 파이프라인 구축 불필요)
서비스 지원 정보
- 데이터 유형
- 정형 / 비정형
- 데이터 크기
- 무관
- 실시간 / 배치
- 실시간
입력
IoT / IT 로그 등
서비스의 특 / 장점
출력
Kinesis Analytics / S3 / Redshift / Elasticsearch
운영 시 고려사항
▶︎ 업로드된 데이터 볼륨, 소스에서 대상까지 걸린 시간, 업로드 성공률 등 지표 확인 (CloudWatch)
가격 정책 상세
*2017년 12월 가격 기준
데이터 수집 용량
- 처음 500TB
- 월 $0.029/GB (미 동부 기준)
- 다음 1.5PB
- 월 $0.025/GB (미 동부 기준)
- 다음 3PB
- 월 $0.020/GB (미 동부 기준)
- 데이터 볼륨 : 데이터 레코드의 수 X 레코드의 크기
- 레코드는 5KB 단위로 올림(데이터 레코드가 각각 42KB이면 45KB로 계산)
예시
▶︎ Amazon S3로 로드하기 위해, 미국 동부 리전의 Kinesis Firehose로 스트리밍 데이터 레코드를 초당 1,000개 전송, 각 레코드 크기는 3KB인 경우, 월별 요금?
수집 데이터 용량 비용 : $358.5
- 3KB의 레코드 → 5KB 단위로 올림
- 수집 데이터(초당 GB) = (레코드 1,000개/초 * 5KB/레코드) / 1,048,576KB/GB = 0.004768GB/초
- 수집 데이터(월별 GB) = 30일/월 * 86,400초/일 * 0.004768GB/초 = 12,359.62GB/월
- 월별 요금 = 12,359.62GB * $0.029/GB = $358.43
※ 미국 동부의 요금은 처음 500TB/월에 대해 수집 데이터의 $0.029/GB
수집 #3 – AWS Database Migration Service
- 영역
- 수집
- 지역 (Region)
- 전 지역
- 서비스 명
- AWS Database Migration Service
- 가격 정책
- 마이그레이션(인스턴스) 및 추가 스토리지 사용 비용
설명
가장 널리 사용되는 상용 및 오픈 소스 데이터베이스로(부터) 데이터를 빠르고 안전하게 마이그레이션할 수 있는 서비스로 동종 마이그레이션 뿐 아니라 이기종 간의 마이그레이션도 지원
제공 기능
▶︎ 동종 데이터베이스 마이그레이션
소스와 대상의 데이터베이스 엔진이 같거나 호환 가능한 경우 (예: Oracle에서 Oracle용 Amazon RDS로, MySQL에서 Amazon Aurora로, MySQL에서 MySQL용 Amazon RDS로, Microsoft SQL Server에서 SQL Server용 Amazon RDS로 등)
스키마 구조, 데이터 유형 및 데이터베이스 코드가 소스 데이터베이스와 대상 데이터베이스 간에 호환 가능하므로, 이러한 종류의 마이그레이션은 단일 단계 프로세스로 수행
▶︎ 이기종 데이터베이스 마이그레이션
소스와 대상 데이터베이스의 스키마 구조, 데이터 유형 및 데이터베이스 코드가 상당히 다르므로, 데이터 마이그레이션을 시작하기 전에 스키마와 코드 변환이 필요하여 2단계 프로세스로 수행
▶︎ 데이터베이스 통합
여러 개의 소스 데이터베이스를 하나의 대상 데이터베이스로 통합
▶︎ 연속 데이터 복제
DR 인스턴스 동기화, 지리적 데이터베이스 배포, 그리고 Dev/Test 환경 동기화
▶︎ AWS Schema Conversion Tool
소스 데이터베이스 스키마와 대부분 데이터베이스 코드 객체(보기, 저장된 프로시저, 함수 등)를 대상 데이터베이스와 호환되는 형식으로 자동으로 변환
서비스 지원 정보
- 데이터 유형
- 정형
- 데이터 크기
- 대
- 실시간 / 배치
- 실시간
입력
Aurora DB / Maria DB / MS SQL Server / MySQL / Oracle DBMS / PostgreSQL / Sybase / MongoDB / S3 / Azure DB
서비스의 특 / 장점
AWS Schema Conversion Tool에서 지원되는 변환
소스 데이터베이스 | Amazon RDS의 대상 데이터베이스 |
---|---|
Oracle Database | Amazon Aurora, MySQL, PostgreSQL, MariaDB |
Oracle Data Warehouse | Amazon Redshift |
Microsoft SQL Server | Amazon Aurora, Amazon Redshift, MySQL, PostgreSQL, MariaDB |
Teradata | Amazon Redshift |
IBM Netezza | Amazon Redshift |
Greenplum | Amazon Redshift |
HPE Vertica | Amazon Redshift |
MySQL and MariaDB | PostgreSQL |
PostgreSQL | Amazon Aurora, MySQL, MariaDB |
Amazon Aurora | PostgreSQL |
출력
Aurora (MySQL, PostgreSQL) / Maria DB / MS SQL Server / MySQL / Oracle DBMS / PostgreSQL / Redshift / Sybase / DynamoDB / S3
운영 시 고려사항
▶︎ 데이터베이스를 Aurora로 마이그레이션하는 경우 6개월간 DMS를 무료로 사용
가격 정책 상세
*2017년 12월 가격 기준
온디멘드 인스턴스
▶︎ 데이터베이스 마이그레이션 용량(인스턴스)에 대해서만 시간 단위로 요금을 지불
▶︎ T2 및 C4 인스턴스 클래스를 지원
인스턴스 유형 | 시간당 요금(단일 AZ) | 시간당 요금 (다중 AZ) |
---|---|---|
t2.micro ~ t2.large | $0.028 ~ $0.224 | $0.056 ~ $0.448 |
c4.large ~ c4.4xlarge | $0.168 ~ $1.337 | $0.336 ~ $2.674 |
스토리지
▶︎ 각 C4 인스턴스 유형에는 스왑 공간, 복제 로그 및 데이터 캐시를 위한 100GB의 GP2 네트워크 연결 스토리지 포함
▶︎ 각 T2 인스턴스 유형에는 50GB의 GP2 네트워크 연결 스토리지 포함
▶︎ 로그를 장기간 보관하려는 경우, 확장되는 스토리지 비용 부과
범용(SSD) 스토리지 월별 GB당 $0.131 (단일 AZ: Availability Zone) / 월별 GB당 $0.262 (다중 AZ)
데이터 전송
▶︎ AWS Database Migration Service로 전송되는 모든 데이터 및 같은 가용 영역 내에서 AWS Database Migration Service와 Amazon RDS 및 Amazon EC2 인스턴스의 데이터베이스 간에 전송되는 데이터는 무료
▶︎ 다른 가용 영역, 리전 또는 AWS 외부에 있는 대상 데이터베이스로 마이그레이션의 경우 전송 요금 부과
수집 #4 – AWS Glue
- 영역
- 수집
- 지역 (Region)
- 미국(버지니아, 오하이오, 오레곤),유럽(아일랜드), 아시아(동경)
- 서비스 명
- AWS Glue
- 가격 정책
- 종량 과금제. 최소 요금 10분 이후 초당 과금
설명
사용자가 분석을 위해 손쉽게 데이터를 준비하고 로드할 수 있게 지원하는 완전관리형 ETL(추출, 변환 및 로드) 서비스
제공 기능
▶︎ 통합된 데이터 카탈로그
데이터의 위치와 관계없이 테이블 정의, 작업 정의 및 기타 제어 정보가 담겨있는 영구 메타데이터 스토어
종합적인 스키마 버전 내역을 유지 관리
▶︎ 자동 스키마 검색
Glue 크롤러는 소스 또는 대상 데이터 스토어에 연결,, 우선순위가 지정된 분류기 목록을 거치며 데이터의 스키마 결정
스키마 결정 후 AWS Glue 데이터 카탈로그에 메타데이터를 생성합니다.
크롤러는 일정에 따라 또는 온디맨드로 실행하거나 이벤트를 기반으로 트리거 가능
▶︎ 코드 생성
AWS Glue는 코드를 자동 생성하여 데이터를 추출, 변환 및 로드
Glue에서 데이터 소스 및 대상을 지정하면 ETL 스크립트를 생성하여 데이터를 변환, 평면화 및 보강
▶︎ 유연한 작업 스케줄러
Glue 작업은 일정에 따라, 온디맨드로 또는 이벤트를 기반으로 호출
여러 개의 작업을 병렬로 시작하거나 작업 간에 종속성을 지정하여 복잡한 ETL 파이프라인을 구축
서비스 지원 정보
- 데이터 유형
- 정형 / 비정형
- 데이터 크기
- 소 ~ 대
- 실시간 / 배치
- 배치
입력
S3 / RedShift / RDS
서비스의 특 / 장점
출력
S3 / RedShift / RDS / EMR / Athena
운영 시 고려사항
▶︎ 국내 Region에 서비스 지원이 되지 않음
▶︎ Glue와 동일한 Region의 입력, 출력 서비스 사용 가능
가격 정책 상세
*2017년 12월 가격 기준
ETL jobs
▶︎ ETL job : $0.44 DPU 시간당 비용으로 최소 10분 이후 초당 과금
▶︎ 개발 endpoint : $0.44 DPU 시간당 비용으로 최소 10분 이후 초당 과금
* ETL 데이터가 Amazon S3, Amazon RDS, or Amazon Redshift에 있다면 추가 요금발생
* DPU(Data Processing Unit) : 4 vCPU and 16 GB of memory / 최소 2DPU 필요하고 기본은 10DPU
Data Catalog storage and requests
▶︎ Storage : 처음 1백만 오브젝트 저장은 무료, 이휴 10만 오브젝트 저장분 마다 $1 월단위 과금
▶︎ Requests : 처음 1백만 오브젝트 요청은 무료, 이휴 10만 오브젝트 요청분 마다 $1 월단위 과금
Crawlers
▶︎ Crawler : $0.44 DPU 시간당 비용으로 최소 10분 이후 초당 과금
* DPU(Data Processing Unit) : 4 vCPU and 16 GB of memory
이어지는 2부에서는 AWS 빅데이터 영역별 서비스 – 저장편이 이어집니다.
AWS 빅데이터에 대해 더 알아보고 싶다면, 지금 찾아가는 세미나 신청하세요
베스핀글로벌이 직접 찾아가 자세히 알려드립니다.
클라우드에 대해 무엇이든 묻고! 덤으로 버거킹도! 베스핀글로벌의 찾아가는 세미나
사이트를 클릭하시고, 30초도 안걸리는 신청하기 버튼 누르면 끝!
세미나 신청하기: www.bespincloudops.com/guestbook
AWS에 대해 더 알고 싶으세요?
베스핀글로벌의 AWS 전문 엔지니어가 답해드립니다.