5Rocks on AWS
More Analysis, Less Cost
문성익
Principal Software Engineer
5Rocks Inc.
Don’t	
  Leave	
  Money	
  On	
  The	
  Table
33
Tapjoy+5Rocks 서비스
• 모바일 앱 사용자 분석: SDK 사용
• 사용자 분류: 레벨, 과금 형태, 과금 예측
• 분류별 마케팅: IAP 프로모션, 광고, 푸쉬
• 모네타이즈 하면
공짜!
(dev.kr@tapjoy.com 에 문의해 주세요)
44
공짜?!
• 최소한의 분석 비용
• 방대한 데이타
• 정시 분석 결과 : 시간별, 일별, 리얼타임
55
5Rocks 서비스 데이타 증가
• 분석 데이타 보내는 앱 수
• 매년 ~400% 증가
• 분석 데이타 양
• 매년 ~100% 증가
66
서비스 구조 이력
• 자체 모바일 앱 분석: MongoDB + Ruby
• 5Rocks 베타: MongoDB mapreduce
• AWS 로 100% 이전
• EMR MapReduce on HDFS
• 현재: EMR + S3, 일부 Spark
77
왜 AWS 인가
• 필요한 서버 자원 즉시 할당
• 비지니스 규모에 따라 유연한 확장
• 저렴한 가격 (특히 S3)
• 안정적 서비스와 지원 (Maintenance event 등)
88
시스템 구성
ltv.tapjoy.com
Elastic Load
Balancing
Dashboard
servers
Amazon S3
API
servers
Elastic Load
Balancing
rpc.tapjoy.com
users mobile client
MapReduce&
Spark
MongoDB
Spot
Instances,
Rescale by
time
99
비용 절감
• 저장공간
• HDFS 에서 S3 로
• EMR Resizing
• 시간별/일별 클러스터 분리
• Spot Instance
• RI 와 Spot 을 적절하게
1010
EC2 과금 체계
• 온디맨드 (Ondemand)
• 사용한 시간만큼 과금
• 선납금 없음
• 예약 (Reserved)
• 1년/3년 비용 선납, ~66% 할인
• 3자에게 판매/수정 가능
• 스팟 (Spot)
• 경매 방식으로 싼 인스탄스 할당
• 반드시 할당받는다는 보장은 없음: 입찰 가격따라
1111
S3 vs HDFS
• HDFS
• 빠르고 Consistent
• EMR 경우 Instance Storage Only
• EMR 클러스터를 재생성 해야 할 경우 migrate 해야 함
• S3
• API 노드에서 접근 용이
• 저렴
• Data Streaming: HDFS 와 사용상 차이 없음
• 노드 손실 안전, 클러스터 재생성 시 편리
1212
EMR Resizing
• 시간별 클러스터: 거의 항상 필요
• Reserved Instance
• 일별 클러스터: 가끔만 필요
• Resizing + Spot Instance
• Resizing
• 10분 이상 걸릴 수 있음
• 작업 시작 전 미리 Resize & 결과 확인 필요
1313
EMR Node Count 변화 예
0
5
10
15
20
25
30
35
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Node	
  Count
HOURLY DAILY	
  RI DAILY	
  SPOT
1414
Spot Pricing: 2014 어느 달
• On-Demand 였으면 $4,859 였을 비용을 단 $419 에 사용
• EC2 비용 91% 절감
• (Spot Instance 로 사용한 일부 노드 한정)
1515
EMR vs EC2
• EC2 + Apache Hadoop
• EMR 보다 (조금) 싸다
• EMR 에 아직 안 나온 버전 테스트 또는 개발
• EMR
• Resize 용이
• Spot Instance 섞어쓰기 용이
• Amazon S3 hadoop driver
1616
EMR Experience
• 5Rocks
• m1.medium 다수
• Spot 위주
• Tapjoy+5Rocks
• c3.xlarge 다수
• RI 위주 (us-east-1)
• 적은 댓수, 비용 vs 관리
• Cluster 재생성 편리
• Stuck Resize (2.5년 동안 2번)
• Scheduled Maintenance
• 오래된 Cluster 에 대한 AMI bug (3.9.0 이전)
1717
Spot Experience
• Reserved Instance 보다 싸다
• AWS 가격 할인해도 안심! J
• 할당 여부: Region 따라 조심 (특히 us-east-1)
• Tokyo Region 의 경우 할당 문제 겪은 적 없음 (2015 4월까지)
@ 2015 Tapjoy, Inc. All Rights Reserved. Tapjoy, Inc. Confidential and Proprietary. Please do not copy or distribute without Tapjoy, Inc’s prior written consent. The data provided herein is for information purposes only and while all efforts are
made to ensure accuracy, errors may arise. Tapjoy and the Tapjoy logo are trademarks or registered trademarks of Tapjoy, Inc. All third party logos and trademarks mentioned are the property of their respective owners.
Thank you!
dev.kr@tapjoy.com
john.simon@tapjoy.com

Gaming on AWS - 5rocks on AWS

  • 1.
    5Rocks on AWS MoreAnalysis, Less Cost 문성익 Principal Software Engineer 5Rocks Inc.
  • 2.
    Don’t  Leave  Money  On  The  Table
  • 3.
    33 Tapjoy+5Rocks 서비스 • 모바일앱 사용자 분석: SDK 사용 • 사용자 분류: 레벨, 과금 형태, 과금 예측 • 분류별 마케팅: IAP 프로모션, 광고, 푸쉬 • 모네타이즈 하면 공짜! (dev.kr@tapjoy.com 에 문의해 주세요)
  • 4.
    44 공짜?! • 최소한의 분석비용 • 방대한 데이타 • 정시 분석 결과 : 시간별, 일별, 리얼타임
  • 5.
    55 5Rocks 서비스 데이타증가 • 분석 데이타 보내는 앱 수 • 매년 ~400% 증가 • 분석 데이타 양 • 매년 ~100% 증가
  • 6.
    66 서비스 구조 이력 •자체 모바일 앱 분석: MongoDB + Ruby • 5Rocks 베타: MongoDB mapreduce • AWS 로 100% 이전 • EMR MapReduce on HDFS • 현재: EMR + S3, 일부 Spark
  • 7.
    77 왜 AWS 인가 •필요한 서버 자원 즉시 할당 • 비지니스 규모에 따라 유연한 확장 • 저렴한 가격 (특히 S3) • 안정적 서비스와 지원 (Maintenance event 등)
  • 8.
    88 시스템 구성 ltv.tapjoy.com Elastic Load Balancing Dashboard servers AmazonS3 API servers Elastic Load Balancing rpc.tapjoy.com users mobile client MapReduce& Spark MongoDB Spot Instances, Rescale by time
  • 9.
    99 비용 절감 • 저장공간 •HDFS 에서 S3 로 • EMR Resizing • 시간별/일별 클러스터 분리 • Spot Instance • RI 와 Spot 을 적절하게
  • 10.
    1010 EC2 과금 체계 •온디맨드 (Ondemand) • 사용한 시간만큼 과금 • 선납금 없음 • 예약 (Reserved) • 1년/3년 비용 선납, ~66% 할인 • 3자에게 판매/수정 가능 • 스팟 (Spot) • 경매 방식으로 싼 인스탄스 할당 • 반드시 할당받는다는 보장은 없음: 입찰 가격따라
  • 11.
    1111 S3 vs HDFS •HDFS • 빠르고 Consistent • EMR 경우 Instance Storage Only • EMR 클러스터를 재생성 해야 할 경우 migrate 해야 함 • S3 • API 노드에서 접근 용이 • 저렴 • Data Streaming: HDFS 와 사용상 차이 없음 • 노드 손실 안전, 클러스터 재생성 시 편리
  • 12.
    1212 EMR Resizing • 시간별클러스터: 거의 항상 필요 • Reserved Instance • 일별 클러스터: 가끔만 필요 • Resizing + Spot Instance • Resizing • 10분 이상 걸릴 수 있음 • 작업 시작 전 미리 Resize & 결과 확인 필요
  • 13.
    1313 EMR Node Count변화 예 0 5 10 15 20 25 30 35 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 Node  Count HOURLY DAILY  RI DAILY  SPOT
  • 14.
    1414 Spot Pricing: 2014어느 달 • On-Demand 였으면 $4,859 였을 비용을 단 $419 에 사용 • EC2 비용 91% 절감 • (Spot Instance 로 사용한 일부 노드 한정)
  • 15.
    1515 EMR vs EC2 •EC2 + Apache Hadoop • EMR 보다 (조금) 싸다 • EMR 에 아직 안 나온 버전 테스트 또는 개발 • EMR • Resize 용이 • Spot Instance 섞어쓰기 용이 • Amazon S3 hadoop driver
  • 16.
    1616 EMR Experience • 5Rocks •m1.medium 다수 • Spot 위주 • Tapjoy+5Rocks • c3.xlarge 다수 • RI 위주 (us-east-1) • 적은 댓수, 비용 vs 관리 • Cluster 재생성 편리 • Stuck Resize (2.5년 동안 2번) • Scheduled Maintenance • 오래된 Cluster 에 대한 AMI bug (3.9.0 이전)
  • 17.
    1717 Spot Experience • ReservedInstance 보다 싸다 • AWS 가격 할인해도 안심! J • 할당 여부: Region 따라 조심 (특히 us-east-1) • Tokyo Region 의 경우 할당 문제 겪은 적 없음 (2015 4월까지)
  • 18.
    @ 2015 Tapjoy,Inc. All Rights Reserved. Tapjoy, Inc. Confidential and Proprietary. Please do not copy or distribute without Tapjoy, Inc’s prior written consent. The data provided herein is for information purposes only and while all efforts are made to ensure accuracy, errors may arise. Tapjoy and the Tapjoy logo are trademarks or registered trademarks of Tapjoy, Inc. All third party logos and trademarks mentioned are the property of their respective owners. Thank you! dev.kr@tapjoy.com john.simon@tapjoy.com