SlideShare a Scribd company logo
서버 없는 컴퓨팅 아키텍처 구축
- AWS Lambda / Amazon Kinesis
김필중 솔루션즈 아키텍트, 아마존 웹서비스 코리아
•  서버 없는 컴퓨팅 - 인게임 이벤트 시스템 설계
•  AWS Lambda 의 새로운 기능
•  Amazon Kinesis 의 새로운 기능
이번 세션에서는
TYCOON
Hotpot
AWS Mobile SDK
Authenticate users
Authorize access
Analyze User Behavior
Synchronize data
Amazon Mobile
Analytics
Amazon Cognito
(Sync)
AWS Identity and
Access Management
Amazon Cognito
(Identity Broker)
Store and share content
Deliver media
Amazon S3
Transfer Manager
Amazon CloudFront
(Device Detection)
Store shared data
Amazon DynamoDB
(Object Mapper)
Send push notifications
Amazon SNS
Mobile Push
Amazon Lambda
Stream real-time dataRun Business Logic
Amazon Kinesis
(Recorder)
서버 없는 AWS 모바일 게임
인게임 이벤트 시스템 설계
Revenue
DAU
새해 기념 할인
한글날 기념 할인
광복절 이벤트
미디어 광고
추석 맞이 신규 유닛 추가
크리스마스 업데이트
할로윈 이벤트
왜 인게임 이벤트가 중요한가?
장기적인 리텐션의 중요성
•  거의 대부분의 수입은 적어도 100번 이상 플레이를 한 유저로부터 발생
•  게임 매출 향상을 위해 할 수 있는 최선의 방법은 장기적인 리텐션에 집중하는 것일 것
Source: kongregate
푸시 메시지 효과
Source: Urban Airship
푸시 메시지 효과: 고객 경험
180,000
190,000
200,000
210,000
220,000
230,000
9 11 13 15 17 19 21 23 25 27
Game #2P
DAU
Push Notification
서버 장애
DAU 복구 실패
인게임 이벤트 시스템 특징 및 요구사항
여기서는 스테이지 방식의 캐주얼 게임이라 가정하며,
이벤트는 특정 스테이지에서 아이템 획득률 상승 및 스테이지 아이템 할인, 난이도 상승으로 가정.
•  매일 혹은 일정 주기로 반복 또는 특정일에 이벤트 진행
•  사용자에게 시작시간과 얻을 수 있는 혜택 등의 정보를 알려주어야 함
•  사용자의 순간적인 접속 증가로 인해 인프라에 높은 부하를 야기할 수 있음
•  주기적으로 반복적인 개발 혹은 운영 업무를 진행하여야 함
•  게임 진행 상황 및 사용자의 행동을 분석하여 다음 이벤트에 반영하여야 함
인게임 이벤트 시스템 아키텍처
Kinesis
Firehose
Amazon SNS
Amazon S3Amazon
Elasticsearch
Lambda
Lambda
Scheduling
매일 13시/18시
푸시 메시지 발송 및 이벤트 개시/종료
매일 12시 30분
게임 서버 확장
Lambda
Scheduling
12시 30분 13시 ~ 18시
근 실시간 분석
이벤트에 대한 응답으로 작성한 코드를 실행하는 컴퓨팅 서비스
•  이벤트 트리거들:
•  비동기적 혹은 동기적인 직접 호출을 통해
•  Amazon S3 버킷으로의 오브젝트 업로드를 통해
•  API Gateway 엔드포인트 호출을 통해
•  Amazon SNS 메시지를 통해
•  그 이외에도 다양한 방법으로
•  사용처:
•  데이터 기반의 감사, 분석 및 알림 등을 수행할 때
•  자동으로 확장하는 백엔드 서비스를 만들 때
AWS Lambda
AWS Lambda 의 이점
지속적으로 확장관리할 서버 없이
코드가 각 트리거의 응답에
따라 실행되어 자동으로 확장.
코드는 병렬로 실행하고
개별적으로 트리거를 처리,
워크로드의 볼륨에 정확하게
맞춰 확장
1초 이하의 미터링
매 100ms의 코드 실행
시간과 코드가 실행된
횟수에 따라 비용이 발생,
코드가 실행되지 않을 땐
그 어떤 과금도 발생 안함
서버를 준비하거나 관리할 필요
없이 코드를 자동으로 실행.
코드를 작성하여 업로드만
하면 작동함
1 2 3
AWS Lambda 업데이트
1.  Python 함수 지원
2.  함수 실행시간 증가
3.  함수 버전 및 별칭 지원
4.  함수 스케줄링 지원
5.  VPC 내 리소스 접근 가능 (아직 출시 되지 않음)
AWS Lambda 업데이트
Python 함수 지원
Python 2.7 지원
Python 함수를 작성하여 Lambda 에 업로드하여 사용 가능함
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
AWS Lambda 업데이트
Python 함수 지원
Python 함수 예제
- Amazon S3 버킷이 이벤트를 트리거하고 Lambda 에서는 객체의 메타데이터를 확인
AWS Lambda 업데이트
함수 실행시간 증가
60초의 실행시간 제한이 300초로 증가
비디오 트랜스코딩이나 ETL 애플리케이션과 같은 더 복잡한 코드 실행 가능
다음의 코드로 함수가 종료되기까지 남은 시간을 확인 가능
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
AWS Lambda 업데이트
함수 버전 및 별칭 지원
동일한 Lambda 함수의 다양한 버전들을 업로드하고 관리
각 함수 버전은 자체 설정 정보를 포함(언어, 런타임, 메모리 크기 및 타임
아웃 등)
각 버전은 자체적인 CloudWatch 측정값을 생성
CloudWatch 로그는 스트림 이름에 함수 버전을 포함
Lambda 에서는 각 함수마다 다중 버전을 저장, 1.5GB 까지 코드를 저장
한 뒤 이전 버전은 삭제
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
AWS Lambda 업데이트
함수 스케줄링 지원
스케줄에 따라 Lambda 함수를 실행
Cleanup, Aggregation, 모니터링 작업 같은 배치성 작업 처리 가능
이벤트 소스 선택시 Scheduled event를 선택할 수 있고 드롭다운 리스트에서
rate 와 cron 을 선택하여 설정할 수 있음
AWS Lambda 업데이트 (미리보기)
VPC 내 리소스 접근
Lambda 함수 내에서 VPC 내의 리소스들에 접근
EC2, ELB, RDS, ElastiCache, Redshift 등 VPC 내의 private 리소스에 접근 가능
사용할 서브넷과 시큐리티 그룹을 선택할 수 있음
인게임 이벤트 시스템 아키텍처
Kinesis
Firehose
Amazon SNS
Amazon S3Amazon
Elasticsearch
Lambda
Lambda
Scheduling
매일 13시/18시
푸시 메시지 발송 및 이벤트 개시/종료
매일 12시 30분
게임 서버 확장
Lambda
Scheduling
12시 30분 13시 ~ 18시
근 실시간 분석
게임 서버 확장 Lambda 함수
게임 서버 확장 Lambda 함수
Lambda 함수 스케줄링
•  스케줄에 맞춰 Lambda 함수를 실행
•  두가지 표현 형식 지원
•  rate(Value Unit)
-  Value: 양수, Unit: minute(s) / hour(s) / day(s)
-  Ex, rate(1 minute), rate(5 minutes), rate(1 hour), rate(7 hours), rate(1 day), rate(10 days)
•  cron(Minutes Hours Day-of-month Month Day-of-week Year)
-  cron(0 10 * * ? *) => 매일 10시에
-  cron(15 12 * * ? *) => 매일 12시 15분에
-  cron(0 18 ? * MON-FRI *) => 주중 18시에
-  cron(0/10 8-17* ? * MON-FRI *) => 주중 8시부터 17시 사이 매 10분마다
인게임 이벤트 시스템 아키텍처
Kinesis
Firehose
Amazon SNS
Amazon S3Amazon
Elasticsearch
Lambda
Lambda
Scheduling
매일 13시/18시
푸시 메시지 발송 및 이벤트 개시/종료
매일 12시 30분
게임 서버 확장
Lambda
Scheduling
12시 30분 13시 ~ 18시
근 실시간 분석
Amazon Kinesis
Streams
스트리밍 데이터를 처리하
거나 분석하는 커스텀 애플
리케이션을 개발
Amazon Kinesis
Firehose
방대한 볼륨의 스트리밍
데이터를 Amazon S3나
Redshift 로 쉽게 로드
Amazon Kinesis
Analytics
표준 SQL 쿼리를 이용하여
데이터 스트림을 쉽게 분석
Amazon Kinesis: 스트리밍 데이터를 쉽게 이용
AWS 에서 실시간 데이터 스트림 관련 작업을 쉽게하는 서비스
Kinesis 사용 고객 사례
Ad Tech Gaming IoT
•  Zero administration: 애플리케이션 개발 및 관리 인프라 없이 S3 또는 Redshift로 스트리밍 데이터를
캡처하여 전송
•  Direct-to-data store integration: 간단한 설정만으로 스트리밍 데이터를 일괄처리, 압축, 암호화
하여 거의 60초 이내에 목적지에 전송
•  Seamless elasticity: 특별한 개입없이 데이터 처리량에 맞는 원활한 확장
Firehose 로 스트리밍 데이터를
캡처하고 전송
Firehose는 지속적으로 S3 또는 Redshift로
스트리밍 데이터를 로드
선호하는 BI 툴들을 사용하여 스트리밍 데이터를 분석
Amazon Kinesis Firehose
방대한 양의 스트리밍 데이터를 Amazon S3 나 Amazon Redshift 로 쉽게 로드
Amazon Kinesis Firehose
3가지 간단한 컨셉
1.  Delivery Stream(전송 스트림): Firehose 의 기본 엔터티. 전송 스트림을 생성 후
대상을 지정하고 데이터를 보낼 수 있음.
•  스트림 또는 샤드를 생성할 필요 없음
•  파티션 키를 지정할 필요 없음
2.  Records(레코드): 데이터 생선자가 전송 스트림에 전송하는 대상 데이터. 최대 크기
는 Base64 인코딩 전 1,000KB.
3.  Data Producers(데이터 생산자): 전송 스트림에 데이터를 전송하는 역활을 수행.
예를들어, 웹 서버는 로그 데이터를 전송 스트림에 전달하는 데이터 생산자임.
Amazon Kinesis 콘솔
Amazon Kinesis Firehose 콘솔
Amazon Kinesis Firehose 콘솔 (S3)
앱 개발 없이 전송을 위한 완전히 관리되는 리소스 생성
Amazon Kinesis Firehose 콘솔
콘솔을 사용하여 간단히 데이터 전송 옵션들을 설정
Amazon Kinesis Firehose 콘솔
콘솔을 사용하여 간단히 데이터 전송 옵션들을 설정
-  Buffer Size : 1 MB – 128 MB
-  Buffer Interval : 60 – 900 Seconds
-  GZIP, ZIP, SNAPPY (Redshift 는 GZIP 만!)
Amazon Kinesis Firehose - Redshift
Amazon Kinesis Firehose – Redshift
두단계 절차
•  중간 저장소로 직접 제공한 S3 버킷을 사용
•  Redshift 에 대규모의 데이터를 로드하는 가장 효율적인 방법
•  데이터 손실 없음, 언제나 안전함, S3 버킷에서 확인 가능1
Amazon Kinesis Firehose – Redshift
두단계 절차
•  중간 저장소로 직접 제공한 S3 버킷을 사용
•  Redshift 에 대규모의 데이터를 로드하는 가장 효율적인 방법
•  데이터 손실 없음, 언제나 안전함, S3 버킷에서 확인 가능
•  직접 제공한 Redshift에 COPY 명령을 동기적으로 수행함. 이전 COPY
명령이 끝나고 Redshift 로 부터 확인이 되면 COPY 명령을 지속적으로
수행.
1
2
Amazon Kinesis Firehose 콘솔
콘솔을 사용하여 간단히 Redshift 로 데이터 전달을 설정
Amazon Kinesis Agent
•  파일을 모니터링하여 새로운 데이터를 전송 스트림에 보냄
•  파일 로테이션, 체크포인트, 실패시 재시도를 처리
•  신뢰성을 가지고 적시에 간단한 방식으로 모든 데이터를 전달
•  스트리밍 프로세스의 문제해결과 더 나은 모니터링을 위해 CloudWatch
메트릭을 보냄
•  Amazon Linux AMI 버전 2015.09 또는 그 이후 버전이나 Red Hat Enterprise Linux 버전 7 또는
그 이후 버전에서 지원. 웹 서버나, 프론트 엔드, 로그 서버 등의 Linux 기반의 서버 환경에서 설치.
•  Kinesis Streams 에도 사용 가능
Amazon Kinesis Firehose? Amazon Kinesis Streams?
뭘 써야 하지?
Amazon Kinesis Streams 와 Firehose
Amazon Kinesis Streams 는 1초 이하의 처리 지연으로 스트리밍되는 각 레코드마다
커스텀 처리를 수행하고 선택적으로 스트림 처리 프레임워크들을 사용할 수 있는
워크로드에 맞는 서비스
Amazon Kinesis Firehose 는 관리 운영 없이 S3 또는 Redshift 를 기반으로하는
기존 분석 툴들을 그대로 사용할 수 있고 60초 또는 그 이상의 데이터 지연을 요구하는
워크로드에 맞는 서비스
인게임 이벤트 시스템 아키텍처
Kinesis
Firehose
Amazon SNS
Amazon S3Amazon
Elasticsearch
Lambda
Lambda
Scheduling
매일 13시/18시
푸시 메시지 발송 및 이벤트 개시/종료
매일 12시 30분
게임 서버 확장
Lambda
Scheduling
12시 30분 13시 ~ 18시
근 실시간 분석
푸시 메시지 Lambda 함수
인게임 이벤트 시스템 아키텍처
Kinesis
Firehose
Amazon SNS
Amazon S3Amazon
Elasticsearch
Lambda
Lambda
Scheduling
매일 13시/18시
푸시 메시지 발송 및 이벤트 개시/종료
매일 12시 30분
게임 서버 확장
Lambda
Scheduling
12시 30분 13시 ~ 18시
근 실시간 분석
Amazon Elasticsearch Service
Amazon Elasticsearch Service 는 클라우드에서 Elasticsearch 클러스터를
쉽게 구성하고, 운영하며 확장할 수 있는 관리형 서비스
쉽게 클러스터를 구성하고
설정을 관리
IAM 를 통한 보안
Amazon CloudWatch를
통한 모니터링
CloudTrail 을 통한 감사
AWS 서비스들과 통합 가능
(CloudWatch Logs,
Amazon DynamoDB,
Amazon S3, Amazon Kinesis)
ELK 를 지원
AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍
인게임 이벤트 시스템 데이터 분석
이벤트 기간내 Top 10 결제 유저
이벤트 스테이지에서 결제 발생 횟수 및 금액
스테이지별 결제 발생 횟수 (녹색: 이벤트 스테이지)
이벤트 대상 아이템 획득 횟수
전체 아이템 획득 횟수(3: 이벤트 아이템)
스테이지별 클리어 성공 및 실패 횟수
Amazon Kinesis Analytics
•  스트림에 SQL 적용: 데이터 스트림에 쉽게 연결하고 기존 SQL 기술을 적용
•  실시간 애플리케이션 개발: 서브-초 처리 지연의 스트리밍 빅데이터에 대한 연속적인 처리
•  탄력적인 확장: 운영자의 개입없이 데이터 처리 속도에 맞게 탄력적으로 확장
Amazon Kinesis Analytics
표준 SQL 쿼리를 이용하여 데이터 스트림을 쉽게 분석
Kinesis Streams 또는 Firehose
전송 스트림에 연결
데이터 스트림에 표준 SQL
쿼리문을 수행
Kinesis Analytics 는 처리된 데이터를
분석 툴로 보낼 수 있어 실시간 응답이나
알림을 만들 수 있음
인게임 이벤트 시스템 아키텍처
Kinesis
Firehose
Amazon SNS
Amazon S3Amazon
Elasticsearch
Lambda
Lambda
Scheduling
매일 13시/18시
푸시 메시지 발송 및 이벤트 개시/종료
매일 12시 30분
게임 서버 확장
Lambda
Scheduling
12시 30분 13시 ~ 18시
근 실시간 분석
User Application
Application Service
Middleware Service
Language Interpreter
Operating System
Host
개발에만 집중하세요!!
매니지드 서비스의 이점을 얻어
•  http://bit.ly/1Ll3wc9 : Build a Serverless Mobile Game w/ Cognito, Lam
bda & DynamoDB
•  http://bit.ly/1X6KNb5 : New! Streaming Data Flows with Amazon Kinesi
s Firehose
•  http://bit.ly/1Ll3ilr : Amazon Kinesis Capture, Deliver, and Process Real
-time Data Streams on AWS
•  http://bit.ly/1kDTBJG : AWS Lambda and the Serverless Cloud
참고자료
감사합니다!

More Related Content

What's hot (20)

PDF
AWS Lambda와 API Gateway를 통한 Serverless Architecture 특집 (윤석찬)
Amazon Web Services Korea
 
PDF
AWS 기반 5천만 모바일 앱서비스 확장하기 - 이영진 (강남SE 모임) :: AWS Community Day 2017
AWSKRUG - AWS한국사용자모임
 
PDF
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
PDF
AWS CLOUD 2017 - AWS 신규 서비스를 통해 본 클라우드의 미래 (김봉환 솔루션즈 아키텍트)
Amazon Web Services Korea
 
PDF
Ad-Tech on AWS 세미나 | AWS와 실시간 입찰
Amazon Web Services Korea
 
PDF
Lambda를 활용한 서버없는 아키텍쳐 구현하기 :: 김기완 :: AWS Summit Seoul 2016
Amazon Web Services Korea
 
PDF
인프라 자동 배포를 위한 AWS CloudFormation 고급 활용법 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
PDF
AWS와 Open Source - 윤석찬 (OSS개발자 그룹)
Amazon Web Services Korea
 
PDF
효율적 모바일 서비스를 위한 AWS 빌딩블럭 - API Gateway 및 Device Farm을 중심으로 (윤석찬, AWS 테크에반젤리스트)
Amazon Web Services Korea
 
PDF
AWS 서울 리전(Region) 서비스 소개- 김용우 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
Amazon Web Services Korea
 
PDF
미디어 저장의 새로운 패러다임 - 김기완 :: 미디어 커스토머 데이
Amazon Web Services Korea
 
PDF
AWS Innovate: Infrastructure Automation on AWS - Seungdo Yang
Amazon Web Services Korea
 
PDF
AWS CLOUD 2017 - AWS 가상 컴퓨팅 분야 혁신 서비스 (박철수 솔루션즈 아키텍트)
Amazon Web Services Korea
 
PPTX
AWS Partner Techshift - Well Architected Framework (이경수 솔루션즈 아키텍트)
Amazon Web Services Korea
 
PPTX
Aws lambda 와 함께 서버리스 서비스 만들기
Junyoung Sung
 
PDF
아마존웹서비스와 함께하는 클라우드 비용 최적화 전략 - 윤석찬 (AWS 코리아 테크에반젤리스트)
Amazon Web Services Korea
 
PDF
20분안에 스타트업이 알아야하는 AWS의 모든것 - 윤석찬 :: 스타트업얼라이언스 런치클럽
Amazon Web Services Korea
 
PDF
DjangoGirls를 위한 Django on AWS - 윤석찬 (DjangoGirls Seoul 모임)
Amazon Web Services Korea
 
PDF
AWS IoT 서비스 활용하기- 윤석찬, AWS 테크에반젤리스트 :: IoT Convergence Conference 2015
Amazon Web Services Korea
 
PDF
빠른 모바일 인증 구현을 위한 Amazon Cognito 서비스 소개 :: 윤석찬 - AWS Monthly Webinar
Amazon Web Services Korea
 
AWS Lambda와 API Gateway를 통한 Serverless Architecture 특집 (윤석찬)
Amazon Web Services Korea
 
AWS 기반 5천만 모바일 앱서비스 확장하기 - 이영진 (강남SE 모임) :: AWS Community Day 2017
AWSKRUG - AWS한국사용자모임
 
서버리스 애플리케이션 구축 패턴 및 구축 사례 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
AWS CLOUD 2017 - AWS 신규 서비스를 통해 본 클라우드의 미래 (김봉환 솔루션즈 아키텍트)
Amazon Web Services Korea
 
Ad-Tech on AWS 세미나 | AWS와 실시간 입찰
Amazon Web Services Korea
 
Lambda를 활용한 서버없는 아키텍쳐 구현하기 :: 김기완 :: AWS Summit Seoul 2016
Amazon Web Services Korea
 
인프라 자동 배포를 위한 AWS CloudFormation 고급 활용법 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
AWS와 Open Source - 윤석찬 (OSS개발자 그룹)
Amazon Web Services Korea
 
효율적 모바일 서비스를 위한 AWS 빌딩블럭 - API Gateway 및 Device Farm을 중심으로 (윤석찬, AWS 테크에반젤리스트)
Amazon Web Services Korea
 
AWS 서울 리전(Region) 서비스 소개- 김용우 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
Amazon Web Services Korea
 
미디어 저장의 새로운 패러다임 - 김기완 :: 미디어 커스토머 데이
Amazon Web Services Korea
 
AWS Innovate: Infrastructure Automation on AWS - Seungdo Yang
Amazon Web Services Korea
 
AWS CLOUD 2017 - AWS 가상 컴퓨팅 분야 혁신 서비스 (박철수 솔루션즈 아키텍트)
Amazon Web Services Korea
 
AWS Partner Techshift - Well Architected Framework (이경수 솔루션즈 아키텍트)
Amazon Web Services Korea
 
Aws lambda 와 함께 서버리스 서비스 만들기
Junyoung Sung
 
아마존웹서비스와 함께하는 클라우드 비용 최적화 전략 - 윤석찬 (AWS 코리아 테크에반젤리스트)
Amazon Web Services Korea
 
20분안에 스타트업이 알아야하는 AWS의 모든것 - 윤석찬 :: 스타트업얼라이언스 런치클럽
Amazon Web Services Korea
 
DjangoGirls를 위한 Django on AWS - 윤석찬 (DjangoGirls Seoul 모임)
Amazon Web Services Korea
 
AWS IoT 서비스 활용하기- 윤석찬, AWS 테크에반젤리스트 :: IoT Convergence Conference 2015
Amazon Web Services Korea
 
빠른 모바일 인증 구현을 위한 Amazon Cognito 서비스 소개 :: 윤석찬 - AWS Monthly Webinar
Amazon Web Services Korea
 

Viewers also liked (20)

PPTX
Microservices kept simple
Vitor Pellegrino
 
PDF
데이터분석을통한게임유저모델링
Eun-Jo Lee
 
PPTX
AWS Lambda를 이용한 CI/CD 기법
Jesang Yoon
 
PDF
AWS Innovate: Best Practices for Migrating to Amazon DynamoDB - Sangpil Kim
Amazon Web Services Korea
 
PDF
Kinesis / Lambda / EMR / Redshift 를 이용한 Big Data 분석 - 이상현 (빙글)
AWSKRUG - AWS한국사용자모임
 
PDF
DynamoDB의 안과밖 - 정민영 (비트패킹 컴퍼니)
AWSKRUG - AWS한국사용자모임
 
PDF
찾아가는 AWS 세미나(구로,가산,판교) - AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
Amazon Web Services Korea
 
PDF
AWS 신규 데이터 분석 서비스 - QuickSight, Kinesis Firehose 등 (양승도) :: re:Invent re:Cap ...
Amazon Web Services Korea
 
PDF
추천서비스고군분투기 On Aws - 박진우 (레코벨)
AWSKRUG - AWS한국사용자모임
 
PDF
AWS IoT 핸즈온 워크샵 - 실습 6. 긴급 데이터를 Kinesis Streams으로 보내기 (김무현 솔루션즈 아키텍트)
Amazon Web Services Korea
 
PDF
NoSQL 간단한 소개
Wonchang Song
 
PPTX
Kinesis and Spark Streaming - Advanced AWS Meetup - August 2014
Chris Fregly
 
PDF
Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...
Amazon Web Services Korea
 
PDF
SK플래닛_README_마이크로서비스 아키텍처로 개발하기
Lee Ji Eun
 
PPTX
기술적 변화를 이끌어가기
Jaewoo Ahn
 
PDF
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
Amazon Web Services Korea
 
PDF
AWS re:Invent 특집(4) – 개발자를 위한 신규 서비스 총정리(윤석찬)
Amazon Web Services Korea
 
PDF
Amazon Echo 기반 IoT 서비스 개발을 위한 Alexa Skills Kit 및 AWS Lambda 활용 (윤석찬)
Amazon Web Services Korea
 
PPTX
마이크로서비스 아키텍처로 개발하기
Jaewoo Ahn
 
PDF
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
pyrasis
 
Microservices kept simple
Vitor Pellegrino
 
데이터분석을통한게임유저모델링
Eun-Jo Lee
 
AWS Lambda를 이용한 CI/CD 기법
Jesang Yoon
 
AWS Innovate: Best Practices for Migrating to Amazon DynamoDB - Sangpil Kim
Amazon Web Services Korea
 
Kinesis / Lambda / EMR / Redshift 를 이용한 Big Data 분석 - 이상현 (빙글)
AWSKRUG - AWS한국사용자모임
 
DynamoDB의 안과밖 - 정민영 (비트패킹 컴퍼니)
AWSKRUG - AWS한국사용자모임
 
찾아가는 AWS 세미나(구로,가산,판교) - AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
Amazon Web Services Korea
 
AWS 신규 데이터 분석 서비스 - QuickSight, Kinesis Firehose 등 (양승도) :: re:Invent re:Cap ...
Amazon Web Services Korea
 
추천서비스고군분투기 On Aws - 박진우 (레코벨)
AWSKRUG - AWS한국사용자모임
 
AWS IoT 핸즈온 워크샵 - 실습 6. 긴급 데이터를 Kinesis Streams으로 보내기 (김무현 솔루션즈 아키텍트)
Amazon Web Services Korea
 
NoSQL 간단한 소개
Wonchang Song
 
Kinesis and Spark Streaming - Advanced AWS Meetup - August 2014
Chris Fregly
 
Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...
Amazon Web Services Korea
 
SK플래닛_README_마이크로서비스 아키텍처로 개발하기
Lee Ji Eun
 
기술적 변화를 이끌어가기
Jaewoo Ahn
 
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
Amazon Web Services Korea
 
AWS re:Invent 특집(4) – 개발자를 위한 신규 서비스 총정리(윤석찬)
Amazon Web Services Korea
 
Amazon Echo 기반 IoT 서비스 개발을 위한 Alexa Skills Kit 및 AWS Lambda 활용 (윤석찬)
Amazon Web Services Korea
 
마이크로서비스 아키텍처로 개발하기
Jaewoo Ahn
 
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
pyrasis
 
Ad

Similar to AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍 (20)

PDF
AWS Lambda를 기반으로한 실시간 빅테이터 처리하기
Amazon Web Services Korea
 
PDF
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
Amazon Web Services Korea
 
PDF
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
Amazon Web Services Korea
 
PDF
AWS 기반의 대용량 실시간 스트리밍 데이터 분석 아키텍처 패턴::김필중::AWS Summit Seoul 2018
Amazon Web Services Korea
 
PPTX
Kinesis를 이용한 데이터 수집
Joona Yoon
 
PDF
서버리스 아키텍처 패턴 및 로그 처리를 위한 파이프라인 구축기 - 황윤상 솔루션즈 아키텍트, AWS / Matthew Han, SendBi...
Amazon Web Services Korea
 
PDF
성공적인 게임 런칭을 위한 비밀의 레시피 #3
Amazon Web Services Korea
 
PDF
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트:: AWS Summit Online Korea 2020
Amazon Web Services Korea
 
PDF
[AWSome Day온라인 컨퍼런스] 강의 3: 클라우드 구축하기 - 정도현, AWS 테크니컬 트레이너
Amazon Web Services Korea
 
PDF
아키텍처 현대화 분야 신규 서비스 - 주성식, AWS 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 2021
Amazon Web Services Korea
 
PDF
AWSKRUG 콘퍼런스 - re:Invent 신규 서비스 (윤석찬) - 빅데이터 분석, 모바일 및 IoT를 중심으로
AWSKRUG - AWS한국사용자모임
 
PPTX
[Games on AWS 2019] 오전 강연 | 새로운 게임을 준비하며 아쉬웠던 2% 를 채워줄 AWS 의 서비스와 기능 업데이트 - 안...
Amazon Web Services Korea
 
PDF
개발자를 위한 클라우드 기술 트렌드- 윤석찬, AWS 테크에반젤리스트 :: Hello T 개발자 컨퍼런스
Amazon Web Services Korea
 
PDF
AWS Builders 2 : 데이터 기반으로 스마트한 생산 현장 환경 만들기
Amazon Web Services Korea
 
PDF
클라우드 기반 실시간 데이터 분석 및 예측 - 윤석찬 테크 에반젤리스트:: AWS Cloud Track 2 Advanced
Amazon Web Services Korea
 
PDF
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
Jinwoong Kim
 
PDF
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWSKRUG - AWS한국사용자모임
 
PDF
천만 사용자를 위한 AWS 클라우드 아키텍쳐 진화하기- AWS Summit Seoul 2017
Amazon Web Services Korea
 
PDF
찾아가는 AWS 세미나(구로,가산,판교) - AWS 클라우드로 서비스 무한대로 확장하기 (박철수 솔루션즈 아키텍트)
Amazon Web Services Korea
 
PDF
AWS를 활용한 미디어 서비스 혁신 방법 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
AWS Lambda를 기반으로한 실시간 빅테이터 처리하기
Amazon Web Services Korea
 
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
Amazon Web Services Korea
 
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
Amazon Web Services Korea
 
AWS 기반의 대용량 실시간 스트리밍 데이터 분석 아키텍처 패턴::김필중::AWS Summit Seoul 2018
Amazon Web Services Korea
 
Kinesis를 이용한 데이터 수집
Joona Yoon
 
서버리스 아키텍처 패턴 및 로그 처리를 위한 파이프라인 구축기 - 황윤상 솔루션즈 아키텍트, AWS / Matthew Han, SendBi...
Amazon Web Services Korea
 
성공적인 게임 런칭을 위한 비밀의 레시피 #3
Amazon Web Services Korea
 
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트:: AWS Summit Online Korea 2020
Amazon Web Services Korea
 
[AWSome Day온라인 컨퍼런스] 강의 3: 클라우드 구축하기 - 정도현, AWS 테크니컬 트레이너
Amazon Web Services Korea
 
아키텍처 현대화 분야 신규 서비스 - 주성식, AWS 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 2021
Amazon Web Services Korea
 
AWSKRUG 콘퍼런스 - re:Invent 신규 서비스 (윤석찬) - 빅데이터 분석, 모바일 및 IoT를 중심으로
AWSKRUG - AWS한국사용자모임
 
[Games on AWS 2019] 오전 강연 | 새로운 게임을 준비하며 아쉬웠던 2% 를 채워줄 AWS 의 서비스와 기능 업데이트 - 안...
Amazon Web Services Korea
 
개발자를 위한 클라우드 기술 트렌드- 윤석찬, AWS 테크에반젤리스트 :: Hello T 개발자 컨퍼런스
Amazon Web Services Korea
 
AWS Builders 2 : 데이터 기반으로 스마트한 생산 현장 환경 만들기
Amazon Web Services Korea
 
클라우드 기반 실시간 데이터 분석 및 예측 - 윤석찬 테크 에반젤리스트:: AWS Cloud Track 2 Advanced
Amazon Web Services Korea
 
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
Jinwoong Kim
 
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWSKRUG - AWS한국사용자모임
 
천만 사용자를 위한 AWS 클라우드 아키텍쳐 진화하기- AWS Summit Seoul 2017
Amazon Web Services Korea
 
찾아가는 AWS 세미나(구로,가산,판교) - AWS 클라우드로 서비스 무한대로 확장하기 (박철수 솔루션즈 아키텍트)
Amazon Web Services Korea
 
AWS를 활용한 미디어 서비스 혁신 방법 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
Ad

More from Amazon Web Services Korea (20)

PDF
[D3T1S01] Gen AI를 위한 Amazon Aurora 활용 사례 방법
Amazon Web Services Korea
 
PDF
[D3T1S06] Neptune Analytics with Vector Similarity Search
Amazon Web Services Korea
 
PDF
[D3T1S03] Amazon DynamoDB design puzzlers
Amazon Web Services Korea
 
PDF
[D3T1S04] Aurora PostgreSQL performance monitoring and troubleshooting by use...
Amazon Web Services Korea
 
PDF
[D3T1S07] AWS S3 - 클라우드 환경에서 데이터베이스 보호하기
Amazon Web Services Korea
 
PDF
[D3T1S05] Aurora 혼합 구성 아키텍처를 사용하여 예상치 못한 트래픽 급증 대응하기
Amazon Web Services Korea
 
PDF
[D3T1S02] Aurora Limitless Database Introduction
Amazon Web Services Korea
 
PDF
[D3T2S01] Amazon Aurora MySQL 메이저 버전 업그레이드 및 Amazon B/G Deployments 실습
Amazon Web Services Korea
 
PDF
[D3T2S03] Data&AI Roadshow 2024 - Amazon DocumentDB 실습
Amazon Web Services Korea
 
PDF
AWS Modern Infra with Storage Roadshow 2023 - Day 2
Amazon Web Services Korea
 
PDF
AWS Modern Infra with Storage Roadshow 2023 - Day 1
Amazon Web Services Korea
 
PDF
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
Amazon Web Services Korea
 
PDF
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
Amazon Web Services Korea
 
PDF
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
Amazon Web Services Korea
 
PDF
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Amazon Web Services Korea
 
PDF
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
Amazon Web Services Korea
 
PDF
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
Amazon Web Services Korea
 
PDF
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
Amazon Web Services Korea
 
PDF
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
Amazon Web Services Korea
 
PDF
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
Amazon Web Services Korea
 
[D3T1S01] Gen AI를 위한 Amazon Aurora 활용 사례 방법
Amazon Web Services Korea
 
[D3T1S06] Neptune Analytics with Vector Similarity Search
Amazon Web Services Korea
 
[D3T1S03] Amazon DynamoDB design puzzlers
Amazon Web Services Korea
 
[D3T1S04] Aurora PostgreSQL performance monitoring and troubleshooting by use...
Amazon Web Services Korea
 
[D3T1S07] AWS S3 - 클라우드 환경에서 데이터베이스 보호하기
Amazon Web Services Korea
 
[D3T1S05] Aurora 혼합 구성 아키텍처를 사용하여 예상치 못한 트래픽 급증 대응하기
Amazon Web Services Korea
 
[D3T1S02] Aurora Limitless Database Introduction
Amazon Web Services Korea
 
[D3T2S01] Amazon Aurora MySQL 메이저 버전 업그레이드 및 Amazon B/G Deployments 실습
Amazon Web Services Korea
 
[D3T2S03] Data&AI Roadshow 2024 - Amazon DocumentDB 실습
Amazon Web Services Korea
 
AWS Modern Infra with Storage Roadshow 2023 - Day 2
Amazon Web Services Korea
 
AWS Modern Infra with Storage Roadshow 2023 - Day 1
Amazon Web Services Korea
 
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
Amazon Web Services Korea
 
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
Amazon Web Services Korea
 
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
Amazon Web Services Korea
 
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Amazon Web Services Korea
 
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
Amazon Web Services Korea
 
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
Amazon Web Services Korea
 
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
Amazon Web Services Korea
 
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
Amazon Web Services Korea
 
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
Amazon Web Services Korea
 

AWS 서버리스 컴퓨팅-김필중 :: 2015 리인벤트 리캡 게이밍

  • 1. 서버 없는 컴퓨팅 아키텍처 구축 - AWS Lambda / Amazon Kinesis 김필중 솔루션즈 아키텍트, 아마존 웹서비스 코리아
  • 2. •  서버 없는 컴퓨팅 - 인게임 이벤트 시스템 설계 •  AWS Lambda 의 새로운 기능 •  Amazon Kinesis 의 새로운 기능 이번 세션에서는
  • 3. TYCOON Hotpot AWS Mobile SDK Authenticate users Authorize access Analyze User Behavior Synchronize data Amazon Mobile Analytics Amazon Cognito (Sync) AWS Identity and Access Management Amazon Cognito (Identity Broker) Store and share content Deliver media Amazon S3 Transfer Manager Amazon CloudFront (Device Detection) Store shared data Amazon DynamoDB (Object Mapper) Send push notifications Amazon SNS Mobile Push Amazon Lambda Stream real-time dataRun Business Logic Amazon Kinesis (Recorder) 서버 없는 AWS 모바일 게임
  • 5. Revenue DAU 새해 기념 할인 한글날 기념 할인 광복절 이벤트 미디어 광고 추석 맞이 신규 유닛 추가 크리스마스 업데이트 할로윈 이벤트 왜 인게임 이벤트가 중요한가?
  • 6. 장기적인 리텐션의 중요성 •  거의 대부분의 수입은 적어도 100번 이상 플레이를 한 유저로부터 발생 •  게임 매출 향상을 위해 할 수 있는 최선의 방법은 장기적인 리텐션에 집중하는 것일 것 Source: kongregate
  • 8. 푸시 메시지 효과: 고객 경험 180,000 190,000 200,000 210,000 220,000 230,000 9 11 13 15 17 19 21 23 25 27 Game #2P DAU Push Notification 서버 장애 DAU 복구 실패
  • 9. 인게임 이벤트 시스템 특징 및 요구사항 여기서는 스테이지 방식의 캐주얼 게임이라 가정하며, 이벤트는 특정 스테이지에서 아이템 획득률 상승 및 스테이지 아이템 할인, 난이도 상승으로 가정. •  매일 혹은 일정 주기로 반복 또는 특정일에 이벤트 진행 •  사용자에게 시작시간과 얻을 수 있는 혜택 등의 정보를 알려주어야 함 •  사용자의 순간적인 접속 증가로 인해 인프라에 높은 부하를 야기할 수 있음 •  주기적으로 반복적인 개발 혹은 운영 업무를 진행하여야 함 •  게임 진행 상황 및 사용자의 행동을 분석하여 다음 이벤트에 반영하여야 함
  • 10. 인게임 이벤트 시스템 아키텍처 Kinesis Firehose Amazon SNS Amazon S3Amazon Elasticsearch Lambda Lambda Scheduling 매일 13시/18시 푸시 메시지 발송 및 이벤트 개시/종료 매일 12시 30분 게임 서버 확장 Lambda Scheduling 12시 30분 13시 ~ 18시 근 실시간 분석
  • 11. 이벤트에 대한 응답으로 작성한 코드를 실행하는 컴퓨팅 서비스 •  이벤트 트리거들: •  비동기적 혹은 동기적인 직접 호출을 통해 •  Amazon S3 버킷으로의 오브젝트 업로드를 통해 •  API Gateway 엔드포인트 호출을 통해 •  Amazon SNS 메시지를 통해 •  그 이외에도 다양한 방법으로 •  사용처: •  데이터 기반의 감사, 분석 및 알림 등을 수행할 때 •  자동으로 확장하는 백엔드 서비스를 만들 때 AWS Lambda
  • 12. AWS Lambda 의 이점 지속적으로 확장관리할 서버 없이 코드가 각 트리거의 응답에 따라 실행되어 자동으로 확장. 코드는 병렬로 실행하고 개별적으로 트리거를 처리, 워크로드의 볼륨에 정확하게 맞춰 확장 1초 이하의 미터링 매 100ms의 코드 실행 시간과 코드가 실행된 횟수에 따라 비용이 발생, 코드가 실행되지 않을 땐 그 어떤 과금도 발생 안함 서버를 준비하거나 관리할 필요 없이 코드를 자동으로 실행. 코드를 작성하여 업로드만 하면 작동함 1 2 3
  • 13. AWS Lambda 업데이트 1.  Python 함수 지원 2.  함수 실행시간 증가 3.  함수 버전 및 별칭 지원 4.  함수 스케줄링 지원 5.  VPC 내 리소스 접근 가능 (아직 출시 되지 않음)
  • 14. AWS Lambda 업데이트 Python 함수 지원 Python 2.7 지원 Python 함수를 작성하여 Lambda 에 업로드하여 사용 가능함
  • 16. AWS Lambda 업데이트 Python 함수 지원 Python 함수 예제 - Amazon S3 버킷이 이벤트를 트리거하고 Lambda 에서는 객체의 메타데이터를 확인
  • 17. AWS Lambda 업데이트 함수 실행시간 증가 60초의 실행시간 제한이 300초로 증가 비디오 트랜스코딩이나 ETL 애플리케이션과 같은 더 복잡한 코드 실행 가능 다음의 코드로 함수가 종료되기까지 남은 시간을 확인 가능
  • 19. AWS Lambda 업데이트 함수 버전 및 별칭 지원 동일한 Lambda 함수의 다양한 버전들을 업로드하고 관리 각 함수 버전은 자체 설정 정보를 포함(언어, 런타임, 메모리 크기 및 타임 아웃 등) 각 버전은 자체적인 CloudWatch 측정값을 생성 CloudWatch 로그는 스트림 이름에 함수 버전을 포함 Lambda 에서는 각 함수마다 다중 버전을 저장, 1.5GB 까지 코드를 저장 한 뒤 이전 버전은 삭제
  • 27. AWS Lambda 업데이트 함수 스케줄링 지원 스케줄에 따라 Lambda 함수를 실행 Cleanup, Aggregation, 모니터링 작업 같은 배치성 작업 처리 가능 이벤트 소스 선택시 Scheduled event를 선택할 수 있고 드롭다운 리스트에서 rate 와 cron 을 선택하여 설정할 수 있음
  • 28. AWS Lambda 업데이트 (미리보기) VPC 내 리소스 접근 Lambda 함수 내에서 VPC 내의 리소스들에 접근 EC2, ELB, RDS, ElastiCache, Redshift 등 VPC 내의 private 리소스에 접근 가능 사용할 서브넷과 시큐리티 그룹을 선택할 수 있음
  • 29. 인게임 이벤트 시스템 아키텍처 Kinesis Firehose Amazon SNS Amazon S3Amazon Elasticsearch Lambda Lambda Scheduling 매일 13시/18시 푸시 메시지 발송 및 이벤트 개시/종료 매일 12시 30분 게임 서버 확장 Lambda Scheduling 12시 30분 13시 ~ 18시 근 실시간 분석
  • 30. 게임 서버 확장 Lambda 함수
  • 31. 게임 서버 확장 Lambda 함수
  • 32. Lambda 함수 스케줄링 •  스케줄에 맞춰 Lambda 함수를 실행 •  두가지 표현 형식 지원 •  rate(Value Unit) -  Value: 양수, Unit: minute(s) / hour(s) / day(s) -  Ex, rate(1 minute), rate(5 minutes), rate(1 hour), rate(7 hours), rate(1 day), rate(10 days) •  cron(Minutes Hours Day-of-month Month Day-of-week Year) -  cron(0 10 * * ? *) => 매일 10시에 -  cron(15 12 * * ? *) => 매일 12시 15분에 -  cron(0 18 ? * MON-FRI *) => 주중 18시에 -  cron(0/10 8-17* ? * MON-FRI *) => 주중 8시부터 17시 사이 매 10분마다
  • 33. 인게임 이벤트 시스템 아키텍처 Kinesis Firehose Amazon SNS Amazon S3Amazon Elasticsearch Lambda Lambda Scheduling 매일 13시/18시 푸시 메시지 발송 및 이벤트 개시/종료 매일 12시 30분 게임 서버 확장 Lambda Scheduling 12시 30분 13시 ~ 18시 근 실시간 분석
  • 34. Amazon Kinesis Streams 스트리밍 데이터를 처리하 거나 분석하는 커스텀 애플 리케이션을 개발 Amazon Kinesis Firehose 방대한 볼륨의 스트리밍 데이터를 Amazon S3나 Redshift 로 쉽게 로드 Amazon Kinesis Analytics 표준 SQL 쿼리를 이용하여 데이터 스트림을 쉽게 분석 Amazon Kinesis: 스트리밍 데이터를 쉽게 이용 AWS 에서 실시간 데이터 스트림 관련 작업을 쉽게하는 서비스
  • 35. Kinesis 사용 고객 사례 Ad Tech Gaming IoT
  • 36. •  Zero administration: 애플리케이션 개발 및 관리 인프라 없이 S3 또는 Redshift로 스트리밍 데이터를 캡처하여 전송 •  Direct-to-data store integration: 간단한 설정만으로 스트리밍 데이터를 일괄처리, 압축, 암호화 하여 거의 60초 이내에 목적지에 전송 •  Seamless elasticity: 특별한 개입없이 데이터 처리량에 맞는 원활한 확장 Firehose 로 스트리밍 데이터를 캡처하고 전송 Firehose는 지속적으로 S3 또는 Redshift로 스트리밍 데이터를 로드 선호하는 BI 툴들을 사용하여 스트리밍 데이터를 분석 Amazon Kinesis Firehose 방대한 양의 스트리밍 데이터를 Amazon S3 나 Amazon Redshift 로 쉽게 로드
  • 37. Amazon Kinesis Firehose 3가지 간단한 컨셉 1.  Delivery Stream(전송 스트림): Firehose 의 기본 엔터티. 전송 스트림을 생성 후 대상을 지정하고 데이터를 보낼 수 있음. •  스트림 또는 샤드를 생성할 필요 없음 •  파티션 키를 지정할 필요 없음 2.  Records(레코드): 데이터 생선자가 전송 스트림에 전송하는 대상 데이터. 최대 크기 는 Base64 인코딩 전 1,000KB. 3.  Data Producers(데이터 생산자): 전송 스트림에 데이터를 전송하는 역활을 수행. 예를들어, 웹 서버는 로그 데이터를 전송 스트림에 전달하는 데이터 생산자임.
  • 40. Amazon Kinesis Firehose 콘솔 (S3) 앱 개발 없이 전송을 위한 완전히 관리되는 리소스 생성
  • 41. Amazon Kinesis Firehose 콘솔 콘솔을 사용하여 간단히 데이터 전송 옵션들을 설정
  • 42. Amazon Kinesis Firehose 콘솔 콘솔을 사용하여 간단히 데이터 전송 옵션들을 설정 -  Buffer Size : 1 MB – 128 MB -  Buffer Interval : 60 – 900 Seconds -  GZIP, ZIP, SNAPPY (Redshift 는 GZIP 만!)
  • 44. Amazon Kinesis Firehose – Redshift 두단계 절차 •  중간 저장소로 직접 제공한 S3 버킷을 사용 •  Redshift 에 대규모의 데이터를 로드하는 가장 효율적인 방법 •  데이터 손실 없음, 언제나 안전함, S3 버킷에서 확인 가능1
  • 45. Amazon Kinesis Firehose – Redshift 두단계 절차 •  중간 저장소로 직접 제공한 S3 버킷을 사용 •  Redshift 에 대규모의 데이터를 로드하는 가장 효율적인 방법 •  데이터 손실 없음, 언제나 안전함, S3 버킷에서 확인 가능 •  직접 제공한 Redshift에 COPY 명령을 동기적으로 수행함. 이전 COPY 명령이 끝나고 Redshift 로 부터 확인이 되면 COPY 명령을 지속적으로 수행. 1 2
  • 46. Amazon Kinesis Firehose 콘솔 콘솔을 사용하여 간단히 Redshift 로 데이터 전달을 설정
  • 47. Amazon Kinesis Agent •  파일을 모니터링하여 새로운 데이터를 전송 스트림에 보냄 •  파일 로테이션, 체크포인트, 실패시 재시도를 처리 •  신뢰성을 가지고 적시에 간단한 방식으로 모든 데이터를 전달 •  스트리밍 프로세스의 문제해결과 더 나은 모니터링을 위해 CloudWatch 메트릭을 보냄 •  Amazon Linux AMI 버전 2015.09 또는 그 이후 버전이나 Red Hat Enterprise Linux 버전 7 또는 그 이후 버전에서 지원. 웹 서버나, 프론트 엔드, 로그 서버 등의 Linux 기반의 서버 환경에서 설치. •  Kinesis Streams 에도 사용 가능
  • 48. Amazon Kinesis Firehose? Amazon Kinesis Streams? 뭘 써야 하지?
  • 49. Amazon Kinesis Streams 와 Firehose Amazon Kinesis Streams 는 1초 이하의 처리 지연으로 스트리밍되는 각 레코드마다 커스텀 처리를 수행하고 선택적으로 스트림 처리 프레임워크들을 사용할 수 있는 워크로드에 맞는 서비스 Amazon Kinesis Firehose 는 관리 운영 없이 S3 또는 Redshift 를 기반으로하는 기존 분석 툴들을 그대로 사용할 수 있고 60초 또는 그 이상의 데이터 지연을 요구하는 워크로드에 맞는 서비스
  • 50. 인게임 이벤트 시스템 아키텍처 Kinesis Firehose Amazon SNS Amazon S3Amazon Elasticsearch Lambda Lambda Scheduling 매일 13시/18시 푸시 메시지 발송 및 이벤트 개시/종료 매일 12시 30분 게임 서버 확장 Lambda Scheduling 12시 30분 13시 ~ 18시 근 실시간 분석
  • 52. 인게임 이벤트 시스템 아키텍처 Kinesis Firehose Amazon SNS Amazon S3Amazon Elasticsearch Lambda Lambda Scheduling 매일 13시/18시 푸시 메시지 발송 및 이벤트 개시/종료 매일 12시 30분 게임 서버 확장 Lambda Scheduling 12시 30분 13시 ~ 18시 근 실시간 분석
  • 53. Amazon Elasticsearch Service Amazon Elasticsearch Service 는 클라우드에서 Elasticsearch 클러스터를 쉽게 구성하고, 운영하며 확장할 수 있는 관리형 서비스 쉽게 클러스터를 구성하고 설정을 관리 IAM 를 통한 보안 Amazon CloudWatch를 통한 모니터링 CloudTrail 을 통한 감사 AWS 서비스들과 통합 가능 (CloudWatch Logs, Amazon DynamoDB, Amazon S3, Amazon Kinesis) ELK 를 지원
  • 55. 인게임 이벤트 시스템 데이터 분석
  • 56. 이벤트 기간내 Top 10 결제 유저 이벤트 스테이지에서 결제 발생 횟수 및 금액 스테이지별 결제 발생 횟수 (녹색: 이벤트 스테이지) 이벤트 대상 아이템 획득 횟수 전체 아이템 획득 횟수(3: 이벤트 아이템) 스테이지별 클리어 성공 및 실패 횟수
  • 58. •  스트림에 SQL 적용: 데이터 스트림에 쉽게 연결하고 기존 SQL 기술을 적용 •  실시간 애플리케이션 개발: 서브-초 처리 지연의 스트리밍 빅데이터에 대한 연속적인 처리 •  탄력적인 확장: 운영자의 개입없이 데이터 처리 속도에 맞게 탄력적으로 확장 Amazon Kinesis Analytics 표준 SQL 쿼리를 이용하여 데이터 스트림을 쉽게 분석 Kinesis Streams 또는 Firehose 전송 스트림에 연결 데이터 스트림에 표준 SQL 쿼리문을 수행 Kinesis Analytics 는 처리된 데이터를 분석 툴로 보낼 수 있어 실시간 응답이나 알림을 만들 수 있음
  • 59. 인게임 이벤트 시스템 아키텍처 Kinesis Firehose Amazon SNS Amazon S3Amazon Elasticsearch Lambda Lambda Scheduling 매일 13시/18시 푸시 메시지 발송 및 이벤트 개시/종료 매일 12시 30분 게임 서버 확장 Lambda Scheduling 12시 30분 13시 ~ 18시 근 실시간 분석
  • 60. User Application Application Service Middleware Service Language Interpreter Operating System Host 개발에만 집중하세요!! 매니지드 서비스의 이점을 얻어
  • 61. •  http://bit.ly/1Ll3wc9 : Build a Serverless Mobile Game w/ Cognito, Lam bda & DynamoDB •  http://bit.ly/1X6KNb5 : New! Streaming Data Flows with Amazon Kinesi s Firehose •  http://bit.ly/1Ll3ilr : Amazon Kinesis Capture, Deliver, and Process Real -time Data Streams on AWS •  http://bit.ly/1kDTBJG : AWS Lambda and the Serverless Cloud 참고자료