SlideShare ist ein Scribd-Unternehmen logo
1 von 35
Downloaden Sie, um offline zu lesen
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Min Sung Kim, Solutions Architect
September 21
AWS Lambda를 통한
실시간 빅데이터 처리하기
Agenda
• 실시간 서버리스 데이터 처리란?
• 서버리스 기반의 실시간 스트리밍 데이터 처리
• 분산 컴퓨터 환경을 바탕으로한 서버리스 데이터 처리
실시간 서버리스 데이터 처리란?
실시간 데이터 처리란?
유입/
수집
시각화/
공유
저장
처리/
분석
Data
1 4
0 9
5
Answers &
Insights
배치형 처리
(retrospective)
실시간 처리
(real-time)
분석/예측
(ML/DL/AI)
AWS Lambda
최선의 관리 효율성: 손쉬운 플리케이션의 작성, 배포, 유지 보수,
보안 & 관리
Bring Your Own Code: Node.js, Java, Python, C# 기반의
Stateless, event-driven 어플리케이션 작성, Bring Your Own
Library 지원
인프라 관리에서 해방: Amazon EC2 및 Auto Scaling과 같은
인프라 관리 요소 없음
비용 효율성: 요청 빈도에 따른 자동화된 용량 조정, 실행 시간
(100ms) 단위의 과금
이벤트 기반의 호출: 동기 및 비동기 API Call, AWS
서비스와의 Integration, 3rd 파티 Trigger 지원
Lambda 이벤트 소스
Amazon
S3
Amazon
DynamoDB
Amazon
Kinesis
Amazon
Cognito
Amazon
SNS
Amazon
SES
Cron
events
데이터 저장소 ENDPOINTS
구성 리포지토리 이벤트 및 메세징 서비스
AWS
CloudFormation
AWS
CloudTrail
Amazon
CloudWatch
AWS
CodeCommit
Amazon
API Gateway
Amazon
Alexa
AWS
IoT
AWS Step
Functions
서버리스 실시간 데이터 처리란…
데이터 흐름(스트림)
을 받아서
IoT Data
금융
로그
설치하거나
관리할
서버 없이
이벤트 원천
Node.js
Python
Java
C#
데이터 흐름
처리
함수/메소드
클릭스트림
결과
데이터베이스
클라우드
서비스
Lambda 실시간 이벤트 소스
Amazon
DynamoDB
Amazon
Kinesis
Amazon
S3
Amazon
SNS
비동기 푸쉬 모델
흐름(스트림) 풀링 모델
Amazon
Alexa
AWS
IoT
동기 푸쉬 모델
이벤트 소스를 바탕으로 Mapping
Lambda를 기반으로 Mapping
이벤트 소스 API를 통해 Lambda 함수 호출
스트림내에 새로운 레코드들이 적제되면
Lambda 함수가 호출
리소스 기반 정책 할당
Lambda 실행 역할 정책
Concurrent Executions
동기 invocation
비동기 Invocation
동기 invocation
Lambda에서 이벤트 스트림을 풀링
동작 방식
서버리스 기반의 실시간 데이터 처리
Amazon Kinesis
Amazon Kinesis Offering: 스트림 데이터의 Ingestion 및
처리를 위한 관리형 서비스.
• Amazon Kinesis Streams: 스트림 데이터 처리 및
분석
• Amazon Kinesis Firehose: 스트림 데이터를
Amazon S3 및 Amazon Redshift로 저장
• Amazon Kinesis Analytics: 스트림 데이터에 대한
SQL 쿼리 기반의 분석
실시간: 실시간 데이터 스트림 수집 및 이에 대한 즉각적인 분석
쉬운 관리: 인프라 관리 없이 데이터 스트리밍 어플리케이션
자체에 집중
Amazon Kinesis로 스트림 데이터 발송 (수신
데이터는 Shard에 저장 됨)
Amazon Kinesis 스트림 처리에 대해 복수의
Lambda 함수 호출 가능
(Fan out)
Lambda 를 활용하여 데이처 처리 및 결과 저장
(DynamoDB, S3)
Lambda 를 활용 스트림 데이터 Aggregation 한 후
Amazon Elasticsearch Service등을 통해 분석
모니터링을 위하여 Amazon CloudWatch로 함수
정보 및 이벤트 데이터 전송
Amazon
Kinesis
AWS
Lambda
Amazon
CloudWatch
Amazn
DynamoDB
Amazon
Elasticsearch Service
Amazon
S3
AWS
Lambda
실시간 스트림 처리: Lambda + Amazon Kinesis
스트림 처리: Amazon Kinesis Stream Set Up
스트림
샤드로 구성
샤드 당 최대 1MB/초, 최대1,000 TPS 데이터 레코드 입력 가능
샤드 당 최대 2 MB/초, 최대 5 TPS 데이터 레코드 출력 가능
샤드 2
샤드 1
샤드 2
샤드 1
샤드 3
샤드 2
샤드 1
샤드 2
샤드 1
샤드 3
샤드 2
샤드 1
지금
1:00-7:00 7:00-13:00 13:00-19:00 19:00-1:00
분할
(split)
분할
(split)
병합
(merge)
스트림 처리: Amazon Kinesis Stream Set Up
데이터
저장된 데이터는 24시간 (기본값)내 Replay 가능
파티션키의 선택
Managed Buffer: 복수의 샤드의 고른 활용을 위하여 고르게 분배 되는 (랜덤 키 등) 파티
션 키 지정
Streaming MapReduce: 특정 컬럼 (디바이스 ID, 고객 ID 등)을 파티션 키로하여 특정
샤드로 적제 되도록 구성
Best Practice
병렬 처리 성능 향상을 위한 Partition Key의 고려 필요
예상되는 최대 워크로드 기준의 위한 초기 사이즈/샤드 디자인
콘솔에서 제공되는 “Help me decide how many shards I need” 옵션 활용
샤드 수량 판별:
max(incoming_write_bandwidth_in_KB/1000, outgoing_read_bandwidth_in_KB / 2000)
스트림 처리: Lambda 함수 생성
메모리
메모리 사이즈에 따라 CPU 파워가 할당됨
높은 CPU 파워 또는 많은 량의 레코드를 처리해야 하는 경우 메모리 증가가 필요
Timeout
최대 5분까지 설정 가능
Permission model
Kinesis Stream에 대한 권한 필요
Retries
Amazon Kinesis의 기본 데이터 저장 기간이 24시간까지 지속적으로 Retry
스트림 처리: Lambda 함수 생성
Best Practice
Lambda 함수는 Stateless (함수내에는 Stateful 데이터 저장 금지)
커넥션 재사용을 위해 외부 인터페이스 (예: DB, AWS)는 Handler Faction 외부에 선언
var AWS = require('aws-sdk');
var doc = new AWS.DynamoDB.DocumentClient();
exports.handler = function(event, context) {
console.log('Received event:', JSON.stringify(event, null, 2));
...
...
}
스트림 처리: 이벤트 소스 설정
Amazon Kinesis는 Lambda의 이벤트 소스로 지정됨
Batch size
Lambda 함수 한번 호출로 처리할 레코드의 수량
Batch size는 레코드의 크기 및 요구되는 Latency에 따라 다를 수 있음
실제 배치 사이즈 – Calculated as:
MIN(records available, batch size, 6MB)
Starting position
“Trim Horizon” 과거 데이터부터 현재까지의 순서로 샤드를 읽어 들일 경우
“Lastest” 최신 데이터부터 과거의 순서로 샤드를 읽어 들일 경우
“At timestemp” 특정 시점를 기준으로 이후의 데이터를 읽어 들일 경우
스트림 처리: Under the hood
• 각 샤드별로 진행, 샤드에 데이터가 없는 경우 250ms 후 Polling
• GetRecords call을 호출하여 최대 데이터 (최대 10K, 10MB)를
읽어옴
Polling
• Lambda 함수 호출을 위한 Function Parameter 준비
• Polling 단계에서 호출된 데이터를 호출될 Lambda의 Payload로
Batch의 수량 만큼 분할하여 로딩
Batching
Lambda
Invocation
• RequestResponse 타입으로 동기적으로 호출됨
• Lambda는 Kinesis에 대하여 at least semantics 기반으로 동작
• 각 샤드의 데이터는 샤드별로 우선 순위가 보장됨
Synchronous
스트림 처리: 처리량 튜닝
… …
Source
Amazon Kinesis
Destination 1
Lambda
Destination 2
FunctionsShards
샤드 수량에 맞춰 Lambda 스케일 자동 조정샤드에 대한 split/merge를 기반으로 스케일 조정
Waits for responsePolls a batch
최대 이론상 처리량 # shards * 2MB / Lambda function duration (s)
실제 이론상 처리량 # shards * batch size (MB) / Lambda function duration (s)
실제 Put/Ingestion 되는 데이터량이 이론적인 처리량보다 높은 경우 데이터 유실
발생 가능
스트림 처리: Retry 및 예외 처리
… …
Source
Amazon Kinesis
Destination 1
Lambda
Destination 2
FunctionsShards
샤드 수량에 맞춰 Lambda 스케일 자동 조정샤드에 대한 split/merge를 기반으로 스케일 조정
Waits for responsePolls a batch
Best Practice try {
//데이터 처리
} catch (ex) {
//예외 조치 및 //필요 시 Retry 로직 수행 (exponential backoff 등)
} finally {
//추후 디버깅을 위한 정보 저장 (offline processing 등)
}
데이터 처리의
중요성과
어플리케이션의
성능사이에서의 선택
데모: 실시간 트윗 크롤링
“Devday”를 넣어서 트윗을 날려주세요.
데모 아키텍처
Applications
Kinesis Stream
S3
• Data Staging
• Data Archiving
• Data Backup
• Ad-hoc Analysis
“S3로 데이터 적제”
실시간 데이터 처리 : Lambda DynamoDB
스트림 처리: 경험 몇 가지…
실제 처리되는 배치의 크기는 부하가 낮을때는 설정 보다 낮아졌습니다.
실제 처리되는 배치의 크기는 부하가 높을때는 설정 보다 높아졌습니다.
너무 많은 Consumer는 단일 샤드의 Read limit에 도달할 가능성이 높아지기 때문에,
ReadProvisionedThroughputExceeded 에러 및 메트릭에 대한 모니터링이
필요합니다.
“모든 어플리케이션이
Kinesis Stream 수준의 스트림 처리 및 분석
요구사항을 갖고 있을까요?”
데모 아키텍처
Applications
Kinesis Stream
S3
• Data Staging
• Data Archiving
• Data Backup
• Ad-hoc Analysis
“S3로 데이터 적제”
실시간 데이터 처리 : Lambda
DynamoDB
스트림 처리: 경험 몇 가지…
• GetRecords: 실제 처리량
• PutRecord : bytes, latency, records 등
• GetRecords.IteratorAgeMilliseconds: 현재 시간과 마지막
GetRecords와의 시간 차이
Amazon Kinesis Streams 모니터링
Lambda 함수 모니터링
• Invocations: 함수 호출 횟수
• Duration: 실행 및 처리 시간
• Error count: 에러 수량
• Throttle: Throttle이 발생한 수량 (Lambda concurrent execution
limit)
• Iterator Age: 처리된 배치의 마지막 레코드 (스트림에 저장된 시간
기준)
서버리스 분산 컴퓨팅
10101101
11001010
서버리스 분산 컴퓨팅: 맵 리듀스 Model
왜? 서버리스 기반의 분산 컴퓨팅인가?
인프라 관리의 어려움에서 해방
- 클러스터 관리, 복잡한 구성 도구 불필요
심플하고 유연하며 사용자 친화적인 데이터 프로세싱
환경 제공
- State 관리 복잡성 완화
- 서버의 Utilization 및 Multi-Threading으로 인한 프로
그램 복잡성으로 부터 해방
- Ad-hoc 형태의 맵리듀스 작업에 대한 비용 절감
서버리스 분산 컴퓨팅: 맵 리듀스 Model
https://github.com/awslabs/lambda-refarch-mapreduce
서버리스 분산 컴퓨팅: 맵 리듀스 Model
성능 측정 (Amplab benchmark)
벤치마크 데이터
벤치마크 쿼리
- Scan query : Rankings 테이블
- Select query : Rankings 테이블
- Aggregation query : UserVisits 테이블
Rankings (rows) Rankings (bytes) UserVisits (rows) UserVisits (bytes) Documents (bytes)
90 Million 6.38 GB 775 Million 126.8 GB 136.9 GB
성능 측정
벤치마크 결과 (seconds)
TECHNOLOGY SCAN 1A SCAN 1B AGGREGATE 2A
Amazon Redshift (HDD) 2.49 2.61 25.46
Serverless MapReduce 39 47 200
Impala - Disk - 1.2.3 12.015 12.015 113.72
Impala - Mem - 1.2.3 2.17 3.01 84.35
Shark - Disk - 0.8.1 6.6 7 151.4
Shark - Mem - 0.8.1 1.7 1.8 83.7
Hive - 0.12 YARN 50.49 59.93 730.62
Tez - 0.2.0 28.22 36.35 377.48
서버리스 분산 컴퓨팅: 맵 리듀스 Model
비용 11 센트
서버리스 분산 컴퓨팅: Fannie Mae 사례
목적
노후화 (7년) 된 HPC Grid의 성능 개선을 목적으로 고려
경과
2016년 Lambda를 활용한 첫 HPC 컴퓨티 플랫폼 작성
금융 모델링 어플리케이션 개발의 경우 한달이내 이를 위한 컴퓨팅 리소스를 수
분내에 프로비저닝
2017년 15,000 병렬 수행이 가능한 최초의 금융 모델링 어플리케이션 배포
서버리스 분산 컴퓨팅: Fannie Mae 사례
Lambda 구성
2,000 concurren로 시작하여 1분 단위로 100개씩 추가 호출
부하에 따라 2,000dptj 15,000까지 자동 증가
어플리케이션 결과
20M (2천만) 모기지에 대한 시뮬레이션에 약 2시간 소요 (기존 대비 3배 향상)
서버리스 분산 컴퓨팅: PyWren
UC, Berkeley에서 첫 프로토타입 개발
http://pywren.io/
파이션 및 Stateless Lambda 함수를 기반으로 대량 데이터에 대한 분석에 활용
S3 저장소에 대하여 코어당 30~40MB/s 수준의 읽기 및 쓰기 성능 달성
2800개의 동시 실행을 통해 60~80GB/s 수준의 성능 확장 가능
요약
• 실시간 서버리스 데이터 처리를 위한 Lambda와
Kinesis에 대한 이해 및 Internal 동작 원리
• 서버 리스 분산 컴퓨팅 및 고객 사례
Resources
AWS Serverless https://aws.amazon.com/serverless
AWS Lambda 참조 아키텍처
- Real-Time Streaming: https://github.com/awslabs/lambda-refarc
h-streamprocessing
- Distributed Computing Reference Architecture (serverless
MapReduce) https://github.com/awslabs/lambda-refarch-mapre
duce
Lambda, Kinesis 개발자 가이드
http://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html
AWS Lambda 포럼
https://forums.aws.amazon.com/forum.jspa?forumID=186

Weitere ähnliche Inhalte

Was ist angesagt?

AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018 AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
Amazon Web Services Korea
 
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
Amazon Web Services Korea
 
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
Amazon Web Services Korea
 

Was ist angesagt? (20)

[Retail & CPG Day 2019] 마켓컬리 서비스 AWS 이관 및 최적화 여정 - 임상석, 마켓컬리 개발 리더
[Retail & CPG Day 2019] 마켓컬리 서비스 AWS 이관 및 최적화 여정 - 임상석, 마켓컬리 개발 리더[Retail & CPG Day 2019] 마켓컬리 서비스 AWS 이관 및 최적화 여정 - 임상석, 마켓컬리 개발 리더
[Retail & CPG Day 2019] 마켓컬리 서비스 AWS 이관 및 최적화 여정 - 임상석, 마켓컬리 개발 리더
 
AWS 클라우드 비용 최적화를 위한 TIP - 임성은 AWS 매니저
AWS 클라우드 비용 최적화를 위한 TIP - 임성은 AWS 매니저AWS 클라우드 비용 최적화를 위한 TIP - 임성은 AWS 매니저
AWS 클라우드 비용 최적화를 위한 TIP - 임성은 AWS 매니저
 
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
Amazon RDS Proxy 집중 탐구 - 윤석찬 :: AWS Unboxing 온라인 세미나
 
Oracle DB를 AWS로 이관하는 방법들 - 서호석 클라우드 사업부/컨설팅팀 이사, 영우디지탈 :: AWS Summit Seoul 2021
Oracle DB를 AWS로 이관하는 방법들 - 서호석 클라우드 사업부/컨설팅팀 이사, 영우디지탈 :: AWS Summit Seoul 2021Oracle DB를 AWS로 이관하는 방법들 - 서호석 클라우드 사업부/컨설팅팀 이사, 영우디지탈 :: AWS Summit Seoul 2021
Oracle DB를 AWS로 이관하는 방법들 - 서호석 클라우드 사업부/컨설팅팀 이사, 영우디지탈 :: AWS Summit Seoul 2021
 
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018 AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
 
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
 
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...
 
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
 
AWS Backup을 이용한 데이터베이스의 백업 자동화와 편리한 복구방법
AWS Backup을 이용한 데이터베이스의 백업 자동화와 편리한 복구방법AWS Backup을 이용한 데이터베이스의 백업 자동화와 편리한 복구방법
AWS Backup을 이용한 데이터베이스의 백업 자동화와 편리한 복구방법
 
AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...
AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...
AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...
 
Real-time Data Processing Using AWS Lambda
Real-time Data Processing Using AWS LambdaReal-time Data Processing Using AWS Lambda
Real-time Data Processing Using AWS Lambda
 
세션 3: IT 담당자를 위한 Cloud 로의 전환
세션 3: IT 담당자를 위한 Cloud 로의 전환세션 3: IT 담당자를 위한 Cloud 로의 전환
세션 3: IT 담당자를 위한 Cloud 로의 전환
 
Deep Dive on AWS Lambda
Deep Dive on AWS LambdaDeep Dive on AWS Lambda
Deep Dive on AWS Lambda
 
AWS RDS
AWS RDSAWS RDS
AWS RDS
 
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
 
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
 
AWS와 함께하는 클라우드 컴퓨팅 (강철 AWS 매니저) :: AWS 기초 교육 온라인 세미나
AWS와 함께하는 클라우드 컴퓨팅 (강철 AWS 매니저) :: AWS 기초 교육 온라인 세미나AWS와 함께하는 클라우드 컴퓨팅 (강철 AWS 매니저) :: AWS 기초 교육 온라인 세미나
AWS와 함께하는 클라우드 컴퓨팅 (강철 AWS 매니저) :: AWS 기초 교육 온라인 세미나
 
[2017 AWS Startup Day] AWS 비용 최대 90% 절감하기: 스팟 인스턴스 Deep-Dive
[2017 AWS Startup Day] AWS 비용 최대 90% 절감하기: 스팟 인스턴스 Deep-Dive [2017 AWS Startup Day] AWS 비용 최대 90% 절감하기: 스팟 인스턴스 Deep-Dive
[2017 AWS Startup Day] AWS 비용 최대 90% 절감하기: 스팟 인스턴스 Deep-Dive
 
금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...
금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...
금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...
 
AWS 기반 클라우드 아키텍처 모범사례 - 삼성전자 개발자 포털/개발자 워크스페이스 - 정영준 솔루션즈 아키텍트, AWS / 유현성 수석,...
AWS 기반 클라우드 아키텍처 모범사례 - 삼성전자 개발자 포털/개발자 워크스페이스 - 정영준 솔루션즈 아키텍트, AWS / 유현성 수석,...AWS 기반 클라우드 아키텍처 모범사례 - 삼성전자 개발자 포털/개발자 워크스페이스 - 정영준 솔루션즈 아키텍트, AWS / 유현성 수석,...
AWS 기반 클라우드 아키텍처 모범사례 - 삼성전자 개발자 포털/개발자 워크스페이스 - 정영준 솔루션즈 아키텍트, AWS / 유현성 수석,...
 

Ähnlich wie AWS Lambda를 기반으로한 실시간 빅테이터 처리하기

AWS Lambda 100% 활용하기 :: 김상필 솔루션즈 아키텍트 :: Gaming on AWS 2016
AWS Lambda 100% 활용하기 :: 김상필 솔루션즈 아키텍트 :: Gaming on AWS 2016AWS Lambda 100% 활용하기 :: 김상필 솔루션즈 아키텍트 :: Gaming on AWS 2016
AWS Lambda 100% 활용하기 :: 김상필 솔루션즈 아키텍트 :: Gaming on AWS 2016
Amazon Web Services Korea
 
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
Amazon Web Services Korea
 
찾아가는 AWS 세미나(구로,가산,판교) - AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
찾아가는 AWS 세미나(구로,가산,판교) -  AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)찾아가는 AWS 세미나(구로,가산,판교) -  AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
찾아가는 AWS 세미나(구로,가산,판교) - AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
Amazon Web Services Korea
 
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
AWS CLOUD 2017 - AWS 신규 서비스를 통해 본 클라우드의 미래 (김봉환 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 신규 서비스를 통해 본 클라우드의 미래 (김봉환 솔루션즈 아키텍트)AWS CLOUD 2017 - AWS 신규 서비스를 통해 본 클라우드의 미래 (김봉환 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 신규 서비스를 통해 본 클라우드의 미래 (김봉환 솔루션즈 아키텍트)
Amazon Web Services Korea
 

Ähnlich wie AWS Lambda를 기반으로한 실시간 빅테이터 처리하기 (20)

AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
 
AWS Lambda 100% 활용하기 :: 김상필 솔루션즈 아키텍트 :: Gaming on AWS 2016
AWS Lambda 100% 활용하기 :: 김상필 솔루션즈 아키텍트 :: Gaming on AWS 2016AWS Lambda 100% 활용하기 :: 김상필 솔루션즈 아키텍트 :: Gaming on AWS 2016
AWS Lambda 100% 활용하기 :: 김상필 솔루션즈 아키텍트 :: Gaming on AWS 2016
 
Ad-Tech on AWS 세미나 | AWS와 데이터 분석
Ad-Tech on AWS 세미나 | AWS와 데이터 분석Ad-Tech on AWS 세미나 | AWS와 데이터 분석
Ad-Tech on AWS 세미나 | AWS와 데이터 분석
 
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
 
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
 
빅데이터를 위한 AWS 모범사례와 아키텍처 구축 패턴 :: 양승도 :: AWS Summit Seoul 2016
빅데이터를 위한 AWS 모범사례와 아키텍처 구축 패턴 :: 양승도 :: AWS Summit Seoul 2016빅데이터를 위한 AWS 모범사례와 아키텍처 구축 패턴 :: 양승도 :: AWS Summit Seoul 2016
빅데이터를 위한 AWS 모범사례와 아키텍처 구축 패턴 :: 양승도 :: AWS Summit Seoul 2016
 
찾아가는 AWS 세미나(구로,가산,판교) - AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
찾아가는 AWS 세미나(구로,가산,판교) -  AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)찾아가는 AWS 세미나(구로,가산,판교) -  AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
찾아가는 AWS 세미나(구로,가산,판교) - AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
 
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
 
판교 개발자 데이 – Aws가 제안하는 서버리스 아키텍처 – 김필중
판교 개발자 데이 – Aws가 제안하는 서버리스 아키텍처 – 김필중판교 개발자 데이 – Aws가 제안하는 서버리스 아키텍처 – 김필중
판교 개발자 데이 – Aws가 제안하는 서버리스 아키텍처 – 김필중
 
Lambda를 활용한 서버없는 아키텍쳐 구현하기 :: 김기완 :: AWS Summit Seoul 2016
Lambda를 활용한 서버없는 아키텍쳐 구현하기 :: 김기완 :: AWS Summit Seoul 2016Lambda를 활용한 서버없는 아키텍쳐 구현하기 :: 김기완 :: AWS Summit Seoul 2016
Lambda를 활용한 서버없는 아키텍쳐 구현하기 :: 김기완 :: AWS Summit Seoul 2016
 
AWS 신규 데이터 분석 서비스 - QuickSight, Kinesis Firehose 등 (양승도) :: re:Invent re:Cap ...
AWS 신규 데이터 분석 서비스 - QuickSight, Kinesis Firehose 등 (양승도) :: re:Invent re:Cap ...AWS 신규 데이터 분석 서비스 - QuickSight, Kinesis Firehose 등 (양승도) :: re:Invent re:Cap ...
AWS 신규 데이터 분석 서비스 - QuickSight, Kinesis Firehose 등 (양승도) :: re:Invent re:Cap ...
 
폴라리스오피스 운영시스템
폴라리스오피스 운영시스템폴라리스오피스 운영시스템
폴라리스오피스 운영시스템
 
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트:: AWS Summit Online Korea 2020
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트::  AWS Summit Online Korea 2020천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트::  AWS Summit Online Korea 2020
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트:: AWS Summit Online Korea 2020
 
Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...
Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...
Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...
 
AWS CLOUD 2017 - AWS 신규 서비스를 통해 본 클라우드의 미래 (김봉환 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 신규 서비스를 통해 본 클라우드의 미래 (김봉환 솔루션즈 아키텍트)AWS CLOUD 2017 - AWS 신규 서비스를 통해 본 클라우드의 미래 (김봉환 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 신규 서비스를 통해 본 클라우드의 미래 (김봉환 솔루션즈 아키텍트)
 
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석
 
게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016
게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016
게임 고객 사례를 통해 살펴보는 AWS 활용 전략 :: 이경안 :: AWS Summit Seoul 2016
 
AWS와 함께하는 스타트업의 성장곡선 (윤석찬)- 클라우드 태권 2015
AWS와 함께하는 스타트업의 성장곡선 (윤석찬)- 클라우드 태권 2015AWS와 함께하는 스타트업의 성장곡선 (윤석찬)- 클라우드 태권 2015
AWS와 함께하는 스타트업의 성장곡선 (윤석찬)- 클라우드 태권 2015
 
AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집
AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집
AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집
 
[IGC 2017] AWS 김필중 솔루션 아키텍트 - AWS 를 활용한 모바일 백엔드 개발
[IGC 2017] AWS 김필중 솔루션 아키텍트 - AWS 를 활용한 모바일 백엔드 개발[IGC 2017] AWS 김필중 솔루션 아키텍트 - AWS 를 활용한 모바일 백엔드 개발
[IGC 2017] AWS 김필중 솔루션 아키텍트 - AWS 를 활용한 모바일 백엔드 개발
 

Mehr von Amazon Web Services Korea

Mehr von Amazon Web Services Korea (20)

AWS Modern Infra with Storage Roadshow 2023 - Day 2
AWS Modern Infra with Storage Roadshow 2023 - Day 2AWS Modern Infra with Storage Roadshow 2023 - Day 2
AWS Modern Infra with Storage Roadshow 2023 - Day 2
 
AWS Modern Infra with Storage Roadshow 2023 - Day 1
AWS Modern Infra with Storage Roadshow 2023 - Day 1AWS Modern Infra with Storage Roadshow 2023 - Day 1
AWS Modern Infra with Storage Roadshow 2023 - Day 1
 
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
 
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
 
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
 
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
 
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
 
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
 
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
 
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
 
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
 
From Insights to Action, How to build and maintain a Data Driven Organization...
From Insights to Action, How to build and maintain a Data Driven Organization...From Insights to Action, How to build and maintain a Data Driven Organization...
From Insights to Action, How to build and maintain a Data Driven Organization...
 
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...
 
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...
 
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...
 
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...
 
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...
 
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...
 
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
 
[Keynote] Data Driven Organizations with AWS Data - 발표자: Agnes Panosian, Head...
[Keynote] Data Driven Organizations with AWS Data - 발표자: Agnes Panosian, Head...[Keynote] Data Driven Organizations with AWS Data - 발표자: Agnes Panosian, Head...
[Keynote] Data Driven Organizations with AWS Data - 발표자: Agnes Panosian, Head...
 

AWS Lambda를 기반으로한 실시간 빅테이터 처리하기

  • 1. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Min Sung Kim, Solutions Architect September 21 AWS Lambda를 통한 실시간 빅데이터 처리하기
  • 2. Agenda • 실시간 서버리스 데이터 처리란? • 서버리스 기반의 실시간 스트리밍 데이터 처리 • 분산 컴퓨터 환경을 바탕으로한 서버리스 데이터 처리
  • 4. 실시간 데이터 처리란? 유입/ 수집 시각화/ 공유 저장 처리/ 분석 Data 1 4 0 9 5 Answers & Insights 배치형 처리 (retrospective) 실시간 처리 (real-time) 분석/예측 (ML/DL/AI)
  • 5. AWS Lambda 최선의 관리 효율성: 손쉬운 플리케이션의 작성, 배포, 유지 보수, 보안 & 관리 Bring Your Own Code: Node.js, Java, Python, C# 기반의 Stateless, event-driven 어플리케이션 작성, Bring Your Own Library 지원 인프라 관리에서 해방: Amazon EC2 및 Auto Scaling과 같은 인프라 관리 요소 없음 비용 효율성: 요청 빈도에 따른 자동화된 용량 조정, 실행 시간 (100ms) 단위의 과금 이벤트 기반의 호출: 동기 및 비동기 API Call, AWS 서비스와의 Integration, 3rd 파티 Trigger 지원
  • 6. Lambda 이벤트 소스 Amazon S3 Amazon DynamoDB Amazon Kinesis Amazon Cognito Amazon SNS Amazon SES Cron events 데이터 저장소 ENDPOINTS 구성 리포지토리 이벤트 및 메세징 서비스 AWS CloudFormation AWS CloudTrail Amazon CloudWatch AWS CodeCommit Amazon API Gateway Amazon Alexa AWS IoT AWS Step Functions
  • 7. 서버리스 실시간 데이터 처리란… 데이터 흐름(스트림) 을 받아서 IoT Data 금융 로그 설치하거나 관리할 서버 없이 이벤트 원천 Node.js Python Java C# 데이터 흐름 처리 함수/메소드 클릭스트림 결과 데이터베이스 클라우드 서비스
  • 8. Lambda 실시간 이벤트 소스 Amazon DynamoDB Amazon Kinesis Amazon S3 Amazon SNS 비동기 푸쉬 모델 흐름(스트림) 풀링 모델 Amazon Alexa AWS IoT 동기 푸쉬 모델 이벤트 소스를 바탕으로 Mapping Lambda를 기반으로 Mapping 이벤트 소스 API를 통해 Lambda 함수 호출 스트림내에 새로운 레코드들이 적제되면 Lambda 함수가 호출 리소스 기반 정책 할당 Lambda 실행 역할 정책 Concurrent Executions 동기 invocation 비동기 Invocation 동기 invocation Lambda에서 이벤트 스트림을 풀링 동작 방식
  • 10. Amazon Kinesis Amazon Kinesis Offering: 스트림 데이터의 Ingestion 및 처리를 위한 관리형 서비스. • Amazon Kinesis Streams: 스트림 데이터 처리 및 분석 • Amazon Kinesis Firehose: 스트림 데이터를 Amazon S3 및 Amazon Redshift로 저장 • Amazon Kinesis Analytics: 스트림 데이터에 대한 SQL 쿼리 기반의 분석 실시간: 실시간 데이터 스트림 수집 및 이에 대한 즉각적인 분석 쉬운 관리: 인프라 관리 없이 데이터 스트리밍 어플리케이션 자체에 집중
  • 11. Amazon Kinesis로 스트림 데이터 발송 (수신 데이터는 Shard에 저장 됨) Amazon Kinesis 스트림 처리에 대해 복수의 Lambda 함수 호출 가능 (Fan out) Lambda 를 활용하여 데이처 처리 및 결과 저장 (DynamoDB, S3) Lambda 를 활용 스트림 데이터 Aggregation 한 후 Amazon Elasticsearch Service등을 통해 분석 모니터링을 위하여 Amazon CloudWatch로 함수 정보 및 이벤트 데이터 전송 Amazon Kinesis AWS Lambda Amazon CloudWatch Amazn DynamoDB Amazon Elasticsearch Service Amazon S3 AWS Lambda 실시간 스트림 처리: Lambda + Amazon Kinesis
  • 12. 스트림 처리: Amazon Kinesis Stream Set Up 스트림 샤드로 구성 샤드 당 최대 1MB/초, 최대1,000 TPS 데이터 레코드 입력 가능 샤드 당 최대 2 MB/초, 최대 5 TPS 데이터 레코드 출력 가능 샤드 2 샤드 1 샤드 2 샤드 1 샤드 3 샤드 2 샤드 1 샤드 2 샤드 1 샤드 3 샤드 2 샤드 1 지금 1:00-7:00 7:00-13:00 13:00-19:00 19:00-1:00 분할 (split) 분할 (split) 병합 (merge)
  • 13. 스트림 처리: Amazon Kinesis Stream Set Up 데이터 저장된 데이터는 24시간 (기본값)내 Replay 가능 파티션키의 선택 Managed Buffer: 복수의 샤드의 고른 활용을 위하여 고르게 분배 되는 (랜덤 키 등) 파티 션 키 지정 Streaming MapReduce: 특정 컬럼 (디바이스 ID, 고객 ID 등)을 파티션 키로하여 특정 샤드로 적제 되도록 구성 Best Practice 병렬 처리 성능 향상을 위한 Partition Key의 고려 필요 예상되는 최대 워크로드 기준의 위한 초기 사이즈/샤드 디자인 콘솔에서 제공되는 “Help me decide how many shards I need” 옵션 활용 샤드 수량 판별: max(incoming_write_bandwidth_in_KB/1000, outgoing_read_bandwidth_in_KB / 2000)
  • 14. 스트림 처리: Lambda 함수 생성 메모리 메모리 사이즈에 따라 CPU 파워가 할당됨 높은 CPU 파워 또는 많은 량의 레코드를 처리해야 하는 경우 메모리 증가가 필요 Timeout 최대 5분까지 설정 가능 Permission model Kinesis Stream에 대한 권한 필요 Retries Amazon Kinesis의 기본 데이터 저장 기간이 24시간까지 지속적으로 Retry
  • 15. 스트림 처리: Lambda 함수 생성 Best Practice Lambda 함수는 Stateless (함수내에는 Stateful 데이터 저장 금지) 커넥션 재사용을 위해 외부 인터페이스 (예: DB, AWS)는 Handler Faction 외부에 선언 var AWS = require('aws-sdk'); var doc = new AWS.DynamoDB.DocumentClient(); exports.handler = function(event, context) { console.log('Received event:', JSON.stringify(event, null, 2)); ... ... }
  • 16. 스트림 처리: 이벤트 소스 설정 Amazon Kinesis는 Lambda의 이벤트 소스로 지정됨 Batch size Lambda 함수 한번 호출로 처리할 레코드의 수량 Batch size는 레코드의 크기 및 요구되는 Latency에 따라 다를 수 있음 실제 배치 사이즈 – Calculated as: MIN(records available, batch size, 6MB) Starting position “Trim Horizon” 과거 데이터부터 현재까지의 순서로 샤드를 읽어 들일 경우 “Lastest” 최신 데이터부터 과거의 순서로 샤드를 읽어 들일 경우 “At timestemp” 특정 시점를 기준으로 이후의 데이터를 읽어 들일 경우
  • 17. 스트림 처리: Under the hood • 각 샤드별로 진행, 샤드에 데이터가 없는 경우 250ms 후 Polling • GetRecords call을 호출하여 최대 데이터 (최대 10K, 10MB)를 읽어옴 Polling • Lambda 함수 호출을 위한 Function Parameter 준비 • Polling 단계에서 호출된 데이터를 호출될 Lambda의 Payload로 Batch의 수량 만큼 분할하여 로딩 Batching Lambda Invocation • RequestResponse 타입으로 동기적으로 호출됨 • Lambda는 Kinesis에 대하여 at least semantics 기반으로 동작 • 각 샤드의 데이터는 샤드별로 우선 순위가 보장됨 Synchronous
  • 18. 스트림 처리: 처리량 튜닝 … … Source Amazon Kinesis Destination 1 Lambda Destination 2 FunctionsShards 샤드 수량에 맞춰 Lambda 스케일 자동 조정샤드에 대한 split/merge를 기반으로 스케일 조정 Waits for responsePolls a batch 최대 이론상 처리량 # shards * 2MB / Lambda function duration (s) 실제 이론상 처리량 # shards * batch size (MB) / Lambda function duration (s) 실제 Put/Ingestion 되는 데이터량이 이론적인 처리량보다 높은 경우 데이터 유실 발생 가능
  • 19. 스트림 처리: Retry 및 예외 처리 … … Source Amazon Kinesis Destination 1 Lambda Destination 2 FunctionsShards 샤드 수량에 맞춰 Lambda 스케일 자동 조정샤드에 대한 split/merge를 기반으로 스케일 조정 Waits for responsePolls a batch Best Practice try { //데이터 처리 } catch (ex) { //예외 조치 및 //필요 시 Retry 로직 수행 (exponential backoff 등) } finally { //추후 디버깅을 위한 정보 저장 (offline processing 등) } 데이터 처리의 중요성과 어플리케이션의 성능사이에서의 선택
  • 22. 데모 아키텍처 Applications Kinesis Stream S3 • Data Staging • Data Archiving • Data Backup • Ad-hoc Analysis “S3로 데이터 적제” 실시간 데이터 처리 : Lambda DynamoDB
  • 23. 스트림 처리: 경험 몇 가지… 실제 처리되는 배치의 크기는 부하가 낮을때는 설정 보다 낮아졌습니다. 실제 처리되는 배치의 크기는 부하가 높을때는 설정 보다 높아졌습니다. 너무 많은 Consumer는 단일 샤드의 Read limit에 도달할 가능성이 높아지기 때문에, ReadProvisionedThroughputExceeded 에러 및 메트릭에 대한 모니터링이 필요합니다. “모든 어플리케이션이 Kinesis Stream 수준의 스트림 처리 및 분석 요구사항을 갖고 있을까요?”
  • 24. 데모 아키텍처 Applications Kinesis Stream S3 • Data Staging • Data Archiving • Data Backup • Ad-hoc Analysis “S3로 데이터 적제” 실시간 데이터 처리 : Lambda DynamoDB
  • 25. 스트림 처리: 경험 몇 가지… • GetRecords: 실제 처리량 • PutRecord : bytes, latency, records 등 • GetRecords.IteratorAgeMilliseconds: 현재 시간과 마지막 GetRecords와의 시간 차이 Amazon Kinesis Streams 모니터링 Lambda 함수 모니터링 • Invocations: 함수 호출 횟수 • Duration: 실행 및 처리 시간 • Error count: 에러 수량 • Throttle: Throttle이 발생한 수량 (Lambda concurrent execution limit) • Iterator Age: 처리된 배치의 마지막 레코드 (스트림에 저장된 시간 기준)
  • 27. 서버리스 분산 컴퓨팅: 맵 리듀스 Model 왜? 서버리스 기반의 분산 컴퓨팅인가? 인프라 관리의 어려움에서 해방 - 클러스터 관리, 복잡한 구성 도구 불필요 심플하고 유연하며 사용자 친화적인 데이터 프로세싱 환경 제공 - State 관리 복잡성 완화 - 서버의 Utilization 및 Multi-Threading으로 인한 프로 그램 복잡성으로 부터 해방 - Ad-hoc 형태의 맵리듀스 작업에 대한 비용 절감
  • 28. 서버리스 분산 컴퓨팅: 맵 리듀스 Model https://github.com/awslabs/lambda-refarch-mapreduce
  • 29. 서버리스 분산 컴퓨팅: 맵 리듀스 Model 성능 측정 (Amplab benchmark) 벤치마크 데이터 벤치마크 쿼리 - Scan query : Rankings 테이블 - Select query : Rankings 테이블 - Aggregation query : UserVisits 테이블 Rankings (rows) Rankings (bytes) UserVisits (rows) UserVisits (bytes) Documents (bytes) 90 Million 6.38 GB 775 Million 126.8 GB 136.9 GB
  • 30. 성능 측정 벤치마크 결과 (seconds) TECHNOLOGY SCAN 1A SCAN 1B AGGREGATE 2A Amazon Redshift (HDD) 2.49 2.61 25.46 Serverless MapReduce 39 47 200 Impala - Disk - 1.2.3 12.015 12.015 113.72 Impala - Mem - 1.2.3 2.17 3.01 84.35 Shark - Disk - 0.8.1 6.6 7 151.4 Shark - Mem - 0.8.1 1.7 1.8 83.7 Hive - 0.12 YARN 50.49 59.93 730.62 Tez - 0.2.0 28.22 36.35 377.48 서버리스 분산 컴퓨팅: 맵 리듀스 Model 비용 11 센트
  • 31. 서버리스 분산 컴퓨팅: Fannie Mae 사례 목적 노후화 (7년) 된 HPC Grid의 성능 개선을 목적으로 고려 경과 2016년 Lambda를 활용한 첫 HPC 컴퓨티 플랫폼 작성 금융 모델링 어플리케이션 개발의 경우 한달이내 이를 위한 컴퓨팅 리소스를 수 분내에 프로비저닝 2017년 15,000 병렬 수행이 가능한 최초의 금융 모델링 어플리케이션 배포
  • 32. 서버리스 분산 컴퓨팅: Fannie Mae 사례 Lambda 구성 2,000 concurren로 시작하여 1분 단위로 100개씩 추가 호출 부하에 따라 2,000dptj 15,000까지 자동 증가 어플리케이션 결과 20M (2천만) 모기지에 대한 시뮬레이션에 약 2시간 소요 (기존 대비 3배 향상)
  • 33. 서버리스 분산 컴퓨팅: PyWren UC, Berkeley에서 첫 프로토타입 개발 http://pywren.io/ 파이션 및 Stateless Lambda 함수를 기반으로 대량 데이터에 대한 분석에 활용 S3 저장소에 대하여 코어당 30~40MB/s 수준의 읽기 및 쓰기 성능 달성 2800개의 동시 실행을 통해 60~80GB/s 수준의 성능 확장 가능
  • 34. 요약 • 실시간 서버리스 데이터 처리를 위한 Lambda와 Kinesis에 대한 이해 및 Internal 동작 원리 • 서버 리스 분산 컴퓨팅 및 고객 사례
  • 35. Resources AWS Serverless https://aws.amazon.com/serverless AWS Lambda 참조 아키텍처 - Real-Time Streaming: https://github.com/awslabs/lambda-refarc h-streamprocessing - Distributed Computing Reference Architecture (serverless MapReduce) https://github.com/awslabs/lambda-refarch-mapre duce Lambda, Kinesis 개발자 가이드 http://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html AWS Lambda 포럼 https://forums.aws.amazon.com/forum.jspa?forumID=186