SlideShare a Scribd company logo
1 of 67
Download to read offline
1
GDC 2015 – Amazon Developer Day
Connecting With Your Players Using AWS Analytics
Nate Wiger
Principal, Gaming Solutions
@nateware
nateware@amazon.com
AWS Gaming Solutions
Projected Mobile App Revenue
0
10000
20000
30000
40000
50000
60000
70000
80000
90000
2011 2012 2013 2014 2015 2016 2017
Ads
IAP
Paid
Source:
Gartner
AWS Gaming Solutions
More Screens = More Revenue
AWS Gaming Solutions
Analytics at Supercell
“You cannot predict success.
You will only find out after releasing it.”
- Ilkka Paananen, CEO, Supercell
AWS Gaming Solutions
Analyze What?
Emotions
•  Enjoying game
•  Engaged
•  Like/dislike new content
•  Stuck on a level
•  Bored
•  Giving up
Behaviors
•  Hours played day/week
•  Number of sessions/day
•  Level progression
•  Friend invites/referrals
•  Response to mobile push
•  Money spent/week
AWS Gaming Solutions
Winning at Free to Play
•  Phase 1: Collect Data
•  Phase 2: Analyze
•  Phase 3: Profit
AWS Gaming Solutions
Example: Level Progression (One Metric)
0
2
4
6
8
10
L1 L2 L3 L4 L5 L6 L7 L8 L9 L10
Tries / Level
# of Tries
AWS Gaming Solutions
Example: Level Progression (Two Metrics)
0
10
20
30
40
50
60
0
2
4
6
8
10
L1 L2 L3 L4 L5 L6 L7 L8 L9 L10
Tries / Level
% Highest Level # of Tries
AWS Gaming Solutions
Wooga – Player Attrition
AWS Gaming Solutions
Wooga – Level Analysis
AWS Gaming Solutions
Solution – Level of the Week
AWS Gaming Solutions
Solution – Level of the Week
AWS Gaming Solutions
Events & Metrics
•  Event = Moment in Time
–  Login/quit
–  Game start/end
–  Level up
–  In-app purchase
•  Metrics = What to Measure
–  KISS
–  Numbers
–  Booleans
–  Strings (Enums)
•  Context = Always Include
–  User
–  Action
–  Session (context-dependent)
–  Timestamp in ISO8601
2014-­‐03-­‐16T16:28:26
AWS Gaming Solutions
Off The Shelf Analytics
•  Easy To Integrate
•  Pre-Baked Reports
•  Limited Flexibility
•  Retention Windows
•  Data Ownership
AWS Gaming Solutions
Ok, A Real Business Plan
Ingest Store Process Analyze
AWS Gaming Solutions
Ok, A Real Business Plan
Ingest
•  S3 PUT
•  Analytics SDK
•  Kinesis
Store
•  S3
•  DynamoDB
•  HDFS
Process
•  Redshift
•  EMR (Hadoop)
•  Spark
Analyze
•  Tableau
•  Pentaho
•  Jaspersoft
AWS Gaming Solutions
•  Collect Events on Device
•  Periodically Store in S3
•  Process Data into Redshift
•  Analyze with GUI Visualization Tool
Start Simple
2015-­‐03-­‐03,nateware,e4df,login	
  
2015-­‐03-­‐03,nateware,e4df,gamestart	
  
2015-­‐03-­‐03,nateware,e4df,gameend	
  
2015-­‐03-­‐03,nateware,a88c,login	
  
2015-­‐03-­‐03,nateware,a88c,friendlist	
  
2015-­‐03-­‐03,nateware,a88c,gamestart	
  
Profit!
AWS Gaming Solutions
Redshift at a Glance
10 GigE
(HPC)
Ingestion
Backup
Restore
SQL Clients/BI Tools
128GB RAM
16TB disk
16 cores
Amazon S3/DynamoDB
JDBC/ODBC
128GB RAM
16TB disk
16 coresCompute
Node
128GB RAM
16TB disk
16 coresCompute
Node
128GB RAM
16TB disk
16 coresCompute
Node
Leader
Node
•  Leader Node
–  SQL endpoint
–  Stores metadata
–  Coordinates query execution
•  Compute Nodes
–  Columnar table storage
–  Load, backup, restore via Amazon S3
–  Parallel load from Amazon DynamoDB
•  Single node version available
AWS Gaming Solutions
Tableau + Redshift
AWS Gaming Solutions
Plumbing
①  Create S3 bucket ("mygame-analytics-events")
②  Request a security token for your mobile app:
http://docs.aws.amazon.com/STS/latest/UsingSTS/Welcome.html
③  Upload data from your users' devices
④  Run a scheduled copy to Redshift
⑤  Setup Tableau to access Redshift
⑥  Go to the Beach
AWS Gaming Solutions
Loading Redshift from S3
copy	
  events	
  
from	
  's3://mygame-­‐analytics-­‐events'	
  
credentials	
  'aws_access_key_id=<access-­‐key-­‐id>;	
  
aws_secret_access_key=<secret-­‐access-­‐key>'	
  
delimiter=',';	
  
Scheduled Redshift Load using Data Pipeline:
http://aws.amazon.com/articles/1143507459230804
Search Slideshare for "BDT303" – re:Invent 2014
AWS Gaming Solutions
http://tinyurl.com/k2elyhb
AWS Gaming Solutions
•  Collect Server Logs
•  Periodically Send to S3
•  Process into Redshift
•  External Analytics Data Too
More Data Sources
EC2
External
Analytics
AWS Gaming Solutions
Logrotate to S3
/var/log/apache2/*.log	
  {	
  
	
  	
  sharedscripts	
  
	
  	
  postrotate	
  
	
  	
  	
  	
  sudo	
  /usr/sbin/apache2ctl	
  graceful	
  
	
  	
  	
  	
  s3cmd	
  sync	
  /var/log/*.gz	
  s3://mygame-­‐logs/	
  
	
  	
  endscript	
  
}	
  
Blog Entry on Log Rotation:
http://www.dowdandassociates.com/blog/content/howto-rotate-logs-to-s3/
ELB Access Logs:
http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/
access-log-collection.html
AWS Gaming Solutions
•  Different File Formats
•  Device vs Apache vs CDN
•  Cleanup with EMR Job
•  Output to Clean Bucket
•  Load into Redshift
Dealing With Messy Data
EC2
AWS Gaming Solutions
Redshift vs Elastic MapReduce
Redshift
•  Columnar DB
•  Familiar SQL
•  Structured Data
•  Batch Load
•  Faster to Query
•  Long-term Storage
Elastic MapReduce
•  Hadoop
•  Custom Java / Python
•  Unstructured Data
•  Streaming Loop
•  Scales > PB's
•  Transient
AWS Gaming Solutions
•  Game Servers Uses DynamoDB
•  Directly Export to Redshift
•  Or Stage to S3
Integrate With Your Game Database
EC2
DynamoDB
AWS Gaming Solutions
AWS Mobile Analytics SDK
AWS Gaming Solutions
Amazon
Mobile
Analytics
Engagement +
Monetization
Active Users
Sessions
In-app Revenue
Lifetime Value (LTV)
Retention
Post-install Retention Funnel
Behavior
Custom Events
AWS Gaming Solutions
Integrating Mobile Analytics is Simple
Initialize the MobileAnalyticsManager.
For Custom Events activity reports, add events.
Handle OnResume() and OnPause()
private static MobileAnalyticsManager analytics;
analytics = MobileAnalyticsManager.getOrCreateInstance(
this.getApplicationContext(),"yourCompany.yourAppId",
Regions	
  .US_EAST_1, config, cognitoProvider );
EventClient eventClient = analytics.getEventClient();
MobileAnalyticsEvent visitEvent = eventClient.createEvent("level1Complete");
eventClient.recordEvent(visitEvent);
analytics.getSessionClient().resumeSession();
analytics.getSessionClient().pauseSession();
analytics.getEventClient().submitEvents();
AWS Gaming Solutions
Key Business Metrics
(with one line of code)
1.  Monthly Active Users
(MAU)
2.  Daily Active Users
(DAU)
3.  New Users,
4.  Daily Sessions,
5.  Sticky Factor,
6.  1-Day Retention,
7.  Avg. Revenue per DAU,
8.  Daily Paying Users,
9.  Avg. Paying DAU
AWS Gaming Solutions
Amazon
Mobile
Analytics Post-install Retention Funnel
AWS Gaming Solutions
# of Likes /Shares
Player Abort
Rates per Level
# of Plays per Hour
In-app Item Popularity
Track Custom Events
AWS Gaming Solutions
Custom Events
public	
  void	
  onLevelComplete(String	
  levelName,	
  String	
  difficulty,	
  double	
  
timeToComplete,	
  int	
  playerState)	
  {	
  
	
  
	
  	
  	
  	
  //	
  Create	
  a	
  Level	
  Complete	
  event	
  with	
  some	
  attributes	
  and	
  metrics	
  
	
  	
  	
  	
  AnalyticsEvent	
  levelCompleteEvent	
  =	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  analytics.getEventClient().createEvent("LevelComplete")	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  .withAttribute("LevelName",	
  levelName)	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  .withAttribute("Difficulty",	
  difficulty)	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  .withAttribute("EndState",	
  playerState)	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  .withMetric("TimeToComplete",	
  timeToComplete);	
  
	
  
	
  	
  	
  	
  //Record	
  the	
  Level	
  Complete	
  event	
  
	
  	
  	
  	
  analytics.getEventClient().recordEvent(levelCompleteEvent);	
  
}	
  
AWS Gaming Solutions
Amazon
Mobile
Analytics
Fast
Event data is processed in < 60 minutes
Affordable
Free 100 MM Events per Month
$1 per MM Events beyond the free tier
Private
You own your data
We do not use your data, or share with 3rd parties
AWS Gaming Solutions
Exporting to S3 or Redshift
S3
Redshift
AWS Gaming Solutions
•  Collect Events w/ Mobile Analytics SDK
•  Auto-Export to S3
•  Process Data into Redshift
•  Analyze with GUI Visualization Tool
Mobile Analytics Auto-Export to S3
AWS Gaming Solutions
•  Collect Events w/ Mobile Analytics SDK
•  Auto-Export Directly to Redshift
•  Analyze with GUI Visualization Tool
Start Simple
AWS Gaming Solutions
Setup Analytics Auto-Export to Redshift
AWS Gaming Solutions
Setup Analytics Auto-Export to Redshift
AWS Gaming Solutions
Setup Analytics Auto-Export to Redshift
http://amzn.to/mobile-redshift-export
AWS Gaming Solutions
Exporting to Amazon Redshift
172.16.0.0/20
Public Subnet 172.16.0.0/22
172.16.0.0/20 Local
0.0.0.0/0 IGW
Amazon
Mobile
Analytics
EC2
AWS Gaming Solutions
SQL with Redshift – Mobile Analytics Data
AWS Gaming Solutions
SQL – User Segmentation
AWS Gaming Solutions
DAU and MAU in SQL
select	
  date,	
  
	
  	
  	
  	
  	
  	
  	
  count(*)	
  over	
  (partition	
  by	
  	
  	
  	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  date_trunc('day',	
  date)	
  order	
  by	
  	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  date)	
  as	
  dau,	
  
	
  	
  	
  	
  	
  	
  	
  count(*)	
  over	
  (partition	
  by	
  	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  date_trunc('month',	
  date)	
  order	
  by	
  	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  date)	
  as	
  mau	
  
from	
  user_sessions	
  
order	
  by	
  date;	
  
AWS Gaming Solutions
Measure Retention: Repeated Plays
create	
  view	
  events_by_user_by_month	
  as	
  
select	
  user_id,	
  
date_trunc('month',	
  event_date)	
  
as	
  month_active,	
  
count(*)	
  as	
  total_events	
  
from	
  events	
  
group	
  by	
  user_id,	
  month_active;	
  	
  
AWS Gaming Solutions
First-Pass Retention – Individual Plays
0
5
10
15
20
25
30
35
40
# Play Sessions / Month
nateware
Lazyd0g
AK187
3strikes
AWS Gaming Solutions
Cohorts & Cambria
•  Enables calculating relative metrics
•  Group users by a common attribute
–  Month game installed
–  Demographics
•  Run analysis by cohort
–  Join with metrics
•  Use Redshift as it's SQL
–  Example of where SQL is a good fit
AWS Gaming Solutions
Creating Cohorts with Redshift
create	
  view	
  cohort_by_first_event_date	
  as	
  
select	
  user_id,	
  
date_trunc('month',	
  min(event_date))	
  
as	
  first_month	
  
from	
  events	
  
group	
  by	
  user_id;	
  	
  
http://snowplowanalytics.com/analytics/customer-
analytics/cohort-analysis.html
AWS Gaming Solutions
Retention by Cohort – Join Events
0
5
10
15
20
25
Week 1 Week 2 Week 3 Week 5 Week 6 Week 7
# Sessions / Week
2013-11
2013-12
2014-01
2014-02
2014-03
2014-04
AWS Gaming Solutions
Moar Cohorts
•  Define multiple cohorts
–  By activity, time, demographics
–  As many as you like
•  Change cohort depending on analysis
•  Join same metrics with different cohorts
–  Retention by date
–  Retention by demographic
–  Retention by average plays/month quartile
AWS Gaming Solutions
5-9 notifications retain 1.5x better than 10-14 notifications
Forza: Push Notifications vs Retention
AWS Gaming Solutions
AWS Gaming Solutions
Data Collection
•  Mobile Devices
•  Game Servers
•  Ad Networks
•  Size of event ~ 1 KB
•  500M+ events/day
•  500G+/day & growing
•  JSON format
Source of Data Data Size & Growth
AWS Gaming Solutions
Redshift Schema
•  Every game has its own database
•  Each game event = table (e.g., battle_fight, iap)
•  40-50 tables per DB schema
•  All game titles ~ 1000 tables in DW
AWS Gaming Solutions
{"player_id":"323726381807586881","player_level":169,"device":"iPhone
5","version":"iOS 7.1.2”,"platfrom":"ios","client_build":"440”,
"db":”mw_dw_ios","table":"player_login",
"uuid":"1414566719-rsl3hvhu7o","time_created":"2014-10-29 00:11:59”}
{"fight_time":"2014-10-29 00:11:59","attacker_id":"413142642356365377”,
"attacker_clan_size":500,"attacker_level":270,
"db":"mw_dw_ios","table":"battle_fight",
"uuid":"1414566719-p0oogk0bep","time_created":"2014-10-29 00:11:59"}
•  PHP/Python Web Services
•  Client side analytics SDK
•  JSON data format
Data Stream
AWS Gaming Solutions
Analytics Store Architecture
S3
S3
Consumer
Game DB
Game
Servers
Kinesis
Amazon
Redshift
Elastic
MapReduce
DSV
JSON
AWS Gaming Solutions
Writing to a Kinesis Stream
POST	
  /	
  HTTP/1.1	
  
Host:	
  kinesis.<region>.<domain>	
  
x-­‐amz-­‐Date:	
  <Date>	
  
Authorization:	
  AWS4-­‐HMAC-­‐SHA256	
  Credential=<Credential>,	
  SignedHeaders=content-­‐
type;date;host;user-­‐agent;x-­‐amz-­‐date;x-­‐amz-­‐target;x-­‐amzn-­‐requestid,	
  
Signature=<Signature>	
  
User-­‐Agent:	
  <UserAgentString>	
  
Content-­‐Type:	
  application/x-­‐amz-­‐json-­‐1.1	
  
Content-­‐Length:	
  <PayloadSizeBytes>	
  
Connection:	
  Keep-­‐Alive	
  
X-­‐Amz-­‐Target:	
  Kinesis_20131202.PutRecord	
  
	
  
{	
  
	
  	
  "StreamName":	
  "exampleStreamName",	
  
	
  	
  "Data":	
  "XzxkYXRhPl8x",	
  
	
  	
  "PartitionKey":	
  "partitionKey"	
  
}	
  
AWS Gaming Solutions
Amazon
S3
Spark SQL
JDBC Server
SQL
Dashboard
Redshift
Consumer
EMR
Consumer
Game DB
Game
Servers
Kinesis
DynamoDB
DSV
JSON
AWS Gaming Solutions
Saving Money… EC2 Spot Instances
You bid your own price for instances
c3.large
$0.105/hour
$0.0161/hour*
m3.2xlarge
$0.560/hour
$0.0641/hour*
On-Demand
Spot
On-Demand
Spot
* Price in US-East @ Feb 26, 2014 – 9:40AM PST
85%
off
88%
off
AWS Gaming Solutions
Example Price History
AWS Gaming Solutions
Auto Scaling: Let AWS Optimize For You
as-create-launch-config spotlc-5cents
--image-id ami-e565ba8c
--instance-type m1.small
--spot-price “0.05”
. . .
as-create-auto-scaling-group spotasg
--launch-configuration spotlc-5cents
--availability-zones “us-east-1a,us-east-1b”
--max-size 16
--min-size 1
--desiredcapacity 3
AWS Gaming Solutions
EMR Cluster With Spot
aws emr create-cluster --name "Multiple task instance group cluster" --ami-version 3.2.3 
--ec2-attributes AvailabilityZone=eu-west-1b 
--instance-groups InstanceGroupType=MASTER,Name="Master",InstanceCount=1,InstanceType=m3.xlarge 
InstanceGroupType=CORE,Name="Core",InstanceCount=4,InstanceType=m3.xlarge 
InstanceGroupType=TASK,Name="Task1",InstanceCount=25,InstanceType=m3.xlarge,BidPrice=0.28 
InstanceGroupType=TASK,Name="Task2",InstanceCount=10,InstanceType=r3.xlarge,BidPrice=0.28
AWS Gaming Solutions
•  S3 as Data Lake
•  Redshift for Analysis
•  Collect Everything
•  Iterate on Reports
Bring It All Back
EC2
External
Analytics
AWS Gaming Solutions
Amazon
S3
Spark SQL
JDBC Server
SQL
Dashboard
Redshift
Consumer
EMR
Consumer
Game DB
Game
Servers
Kinesis
DynamoDB
DSV
JSON
67
Nate Wiger
Principal, Gaming Solutions
@nateware
nateware@amazon.com

More Related Content

What's hot

2017 AWS DB Day | Amazon Redshift 자세히 살펴보기
2017 AWS DB Day | Amazon Redshift 자세히 살펴보기2017 AWS DB Day | Amazon Redshift 자세히 살펴보기
2017 AWS DB Day | Amazon Redshift 자세히 살펴보기Amazon Web Services Korea
 
Getting Cloudy with Remote Graphics and GPU Compute Using G2 instances (CPN21...
Getting Cloudy with Remote Graphics and GPU Compute Using G2 instances (CPN21...Getting Cloudy with Remote Graphics and GPU Compute Using G2 instances (CPN21...
Getting Cloudy with Remote Graphics and GPU Compute Using G2 instances (CPN21...Amazon Web Services
 
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Amazon Web Services
 
Log Analytics with Amazon Elasticsearch Service & Kibana
Log Analytics with Amazon Elasticsearch Service & KibanaLog Analytics with Amazon Elasticsearch Service & Kibana
Log Analytics with Amazon Elasticsearch Service & KibanaAmazon Web Services
 
Introduction to Amazon Kinesis Analytics
Introduction to Amazon Kinesis AnalyticsIntroduction to Amazon Kinesis Analytics
Introduction to Amazon Kinesis AnalyticsAmazon Web Services
 
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Amazon Web Services
 
AWS re:Invent 2016: [REPEAT] How EA Leveraged Amazon Redshift and AWS Partner...
AWS re:Invent 2016: [REPEAT] How EA Leveraged Amazon Redshift and AWS Partner...AWS re:Invent 2016: [REPEAT] How EA Leveraged Amazon Redshift and AWS Partner...
AWS re:Invent 2016: [REPEAT] How EA Leveraged Amazon Redshift and AWS Partner...Amazon Web Services
 
BDA308 Serverless Analytics with Amazon Athena and Amazon QuickSight, featuri...
BDA308 Serverless Analytics with Amazon Athena and Amazon QuickSight, featuri...BDA308 Serverless Analytics with Amazon Athena and Amazon QuickSight, featuri...
BDA308 Serverless Analytics with Amazon Athena and Amazon QuickSight, featuri...Amazon Web Services
 
Getting Started with Amazon Kinesis
Getting Started with Amazon KinesisGetting Started with Amazon Kinesis
Getting Started with Amazon KinesisAmazon Web Services
 
AWS re:Invent 2016 Recap: What Happened, What It Means
AWS re:Invent 2016 Recap: What Happened, What It MeansAWS re:Invent 2016 Recap: What Happened, What It Means
AWS re:Invent 2016 Recap: What Happened, What It MeansRightScale
 
Building A Modern Data Analytics Architecture on AWS
Building A Modern Data Analytics Architecture on AWSBuilding A Modern Data Analytics Architecture on AWS
Building A Modern Data Analytics Architecture on AWSAmazon Web Services
 
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...Amazon Web Services
 
Amazon Relational Database Service Deep Dive
Amazon Relational Database Service Deep DiveAmazon Relational Database Service Deep Dive
Amazon Relational Database Service Deep DiveAmazon Web Services
 
What's New with Amazon DynamoDB - AWS Online Tech Talks
What's New with Amazon DynamoDB - AWS Online Tech TalksWhat's New with Amazon DynamoDB - AWS Online Tech Talks
What's New with Amazon DynamoDB - AWS Online Tech TalksAmazon Web Services
 
Cloud Price Comparison - AWS vs Azure vs Google
Cloud Price Comparison - AWS vs Azure vs GoogleCloud Price Comparison - AWS vs Azure vs Google
Cloud Price Comparison - AWS vs Azure vs GoogleRightScale
 
AWS Webcast - Introduction to Amazon Kinesis
AWS Webcast - Introduction to Amazon KinesisAWS Webcast - Introduction to Amazon Kinesis
AWS Webcast - Introduction to Amazon KinesisAmazon Web Services
 
New AWS Services for Bioinformatics
New AWS Services for BioinformaticsNew AWS Services for Bioinformatics
New AWS Services for BioinformaticsLynn Langit
 
AWS re:Invent 2016: How Telltale Games migrated its story analytics from Apac...
AWS re:Invent 2016: How Telltale Games migrated its story analytics from Apac...AWS re:Invent 2016: How Telltale Games migrated its story analytics from Apac...
AWS re:Invent 2016: How Telltale Games migrated its story analytics from Apac...Amazon Web Services
 

What's hot (20)

2017 AWS DB Day | Amazon Redshift 자세히 살펴보기
2017 AWS DB Day | Amazon Redshift 자세히 살펴보기2017 AWS DB Day | Amazon Redshift 자세히 살펴보기
2017 AWS DB Day | Amazon Redshift 자세히 살펴보기
 
Introduction to Amazon DynamoDB
Introduction to Amazon DynamoDBIntroduction to Amazon DynamoDB
Introduction to Amazon DynamoDB
 
Getting Cloudy with Remote Graphics and GPU Compute Using G2 instances (CPN21...
Getting Cloudy with Remote Graphics and GPU Compute Using G2 instances (CPN21...Getting Cloudy with Remote Graphics and GPU Compute Using G2 instances (CPN21...
Getting Cloudy with Remote Graphics and GPU Compute Using G2 instances (CPN21...
 
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
 
Log Analytics with Amazon Elasticsearch Service & Kibana
Log Analytics with Amazon Elasticsearch Service & KibanaLog Analytics with Amazon Elasticsearch Service & Kibana
Log Analytics with Amazon Elasticsearch Service & Kibana
 
Introduction to Amazon Kinesis Analytics
Introduction to Amazon Kinesis AnalyticsIntroduction to Amazon Kinesis Analytics
Introduction to Amazon Kinesis Analytics
 
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
 
AWS re:Invent 2016: [REPEAT] How EA Leveraged Amazon Redshift and AWS Partner...
AWS re:Invent 2016: [REPEAT] How EA Leveraged Amazon Redshift and AWS Partner...AWS re:Invent 2016: [REPEAT] How EA Leveraged Amazon Redshift and AWS Partner...
AWS re:Invent 2016: [REPEAT] How EA Leveraged Amazon Redshift and AWS Partner...
 
BDA308 Serverless Analytics with Amazon Athena and Amazon QuickSight, featuri...
BDA308 Serverless Analytics with Amazon Athena and Amazon QuickSight, featuri...BDA308 Serverless Analytics with Amazon Athena and Amazon QuickSight, featuri...
BDA308 Serverless Analytics with Amazon Athena and Amazon QuickSight, featuri...
 
Getting Started with Amazon Kinesis
Getting Started with Amazon KinesisGetting Started with Amazon Kinesis
Getting Started with Amazon Kinesis
 
AWS re:Invent 2016 Recap: What Happened, What It Means
AWS re:Invent 2016 Recap: What Happened, What It MeansAWS re:Invent 2016 Recap: What Happened, What It Means
AWS re:Invent 2016 Recap: What Happened, What It Means
 
Building A Modern Data Analytics Architecture on AWS
Building A Modern Data Analytics Architecture on AWSBuilding A Modern Data Analytics Architecture on AWS
Building A Modern Data Analytics Architecture on AWS
 
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...
Build a Real-time Streaming Data Visualization System with Amazon Kinesis Ana...
 
DynamodbDB Deep Dive
DynamodbDB Deep DiveDynamodbDB Deep Dive
DynamodbDB Deep Dive
 
Amazon Relational Database Service Deep Dive
Amazon Relational Database Service Deep DiveAmazon Relational Database Service Deep Dive
Amazon Relational Database Service Deep Dive
 
What's New with Amazon DynamoDB - AWS Online Tech Talks
What's New with Amazon DynamoDB - AWS Online Tech TalksWhat's New with Amazon DynamoDB - AWS Online Tech Talks
What's New with Amazon DynamoDB - AWS Online Tech Talks
 
Cloud Price Comparison - AWS vs Azure vs Google
Cloud Price Comparison - AWS vs Azure vs GoogleCloud Price Comparison - AWS vs Azure vs Google
Cloud Price Comparison - AWS vs Azure vs Google
 
AWS Webcast - Introduction to Amazon Kinesis
AWS Webcast - Introduction to Amazon KinesisAWS Webcast - Introduction to Amazon Kinesis
AWS Webcast - Introduction to Amazon Kinesis
 
New AWS Services for Bioinformatics
New AWS Services for BioinformaticsNew AWS Services for Bioinformatics
New AWS Services for Bioinformatics
 
AWS re:Invent 2016: How Telltale Games migrated its story analytics from Apac...
AWS re:Invent 2016: How Telltale Games migrated its story analytics from Apac...AWS re:Invent 2016: How Telltale Games migrated its story analytics from Apac...
AWS re:Invent 2016: How Telltale Games migrated its story analytics from Apac...
 

Viewers also liked

Scalable Gaming with AWS - GDC 2014
Scalable Gaming with AWS - GDC 2014Scalable Gaming with AWS - GDC 2014
Scalable Gaming with AWS - GDC 2014Nate Wiger
 
Data Analytics on AWS
Data Analytics on AWSData Analytics on AWS
Data Analytics on AWSDanilo Poccia
 
GDC 2015 - Low-latency Multiplayer Gaming with AWS
GDC 2015 - Low-latency Multiplayer Gaming with AWS GDC 2015 - Low-latency Multiplayer Gaming with AWS
GDC 2015 - Low-latency Multiplayer Gaming with AWS Nate Wiger
 
Easy Analytics on AWS with Amazon Redshift, Amazon QuickSight, and Amazon Mac...
Easy Analytics on AWS with Amazon Redshift, Amazon QuickSight, and Amazon Mac...Easy Analytics on AWS with Amazon Redshift, Amazon QuickSight, and Amazon Mac...
Easy Analytics on AWS with Amazon Redshift, Amazon QuickSight, and Amazon Mac...Amazon Web Services
 
Learning analytics applied to serious games, invited talk at ECGBL 2013 Porto...
Learning analytics applied to serious games, invited talk at ECGBL 2013 Porto...Learning analytics applied to serious games, invited talk at ECGBL 2013 Porto...
Learning analytics applied to serious games, invited talk at ECGBL 2013 Porto...Baltasar Fernández-Manjón
 
Scale, baby, scale!
Scale, baby, scale!Scale, baby, scale!
Scale, baby, scale!Julien SIMON
 
Analytics & Reporting for Amazon Cloud Logs
Analytics & Reporting for Amazon Cloud LogsAnalytics & Reporting for Amazon Cloud Logs
Analytics & Reporting for Amazon Cloud LogsCloudlytics
 
DPACC Acceleration Progress and Demonstration
DPACC Acceleration Progress and DemonstrationDPACC Acceleration Progress and Demonstration
DPACC Acceleration Progress and DemonstrationOPNFV
 
World's best AWS Cloud Log Analytics & Management Tool
World's best AWS Cloud Log Analytics & Management ToolWorld's best AWS Cloud Log Analytics & Management Tool
World's best AWS Cloud Log Analytics & Management ToolCloudlytics
 
(MBL303) Get Deeper Insights Using Amazon Mobile Analytics | AWS re:Invent 2014
(MBL303) Get Deeper Insights Using Amazon Mobile Analytics | AWS re:Invent 2014(MBL303) Get Deeper Insights Using Amazon Mobile Analytics | AWS re:Invent 2014
(MBL303) Get Deeper Insights Using Amazon Mobile Analytics | AWS re:Invent 2014Amazon Web Services
 
Big Data Analytics with AWS and AWS Marketplace Webinar
Big Data Analytics with AWS and AWS Marketplace WebinarBig Data Analytics with AWS and AWS Marketplace Webinar
Big Data Analytics with AWS and AWS Marketplace WebinarAmazon Web Services
 
AWS_Architecture_e-commerce
AWS_Architecture_e-commerceAWS_Architecture_e-commerce
AWS_Architecture_e-commerceSEONGTAEK OH
 
(BDT306) Mission-Critical Stream Processing with Amazon EMR and Amazon Kinesi...
(BDT306) Mission-Critical Stream Processing with Amazon EMR and Amazon Kinesi...(BDT306) Mission-Critical Stream Processing with Amazon EMR and Amazon Kinesi...
(BDT306) Mission-Critical Stream Processing with Amazon EMR and Amazon Kinesi...Amazon Web Services
 
UK GIAF Summer 2015 - Trends in game analytics: What’s happening and why?
UK GIAF Summer 2015 - Trends in game analytics: What’s happening and why?UK GIAF Summer 2015 - Trends in game analytics: What’s happening and why?
UK GIAF Summer 2015 - Trends in game analytics: What’s happening and why?Lauren Cormack
 
The architecture of data analytics PaaS on AWS
The architecture of data analytics PaaS on AWSThe architecture of data analytics PaaS on AWS
The architecture of data analytics PaaS on AWSTreasure Data, Inc.
 
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 GamingAmazon Web Services Korea
 
AWS Webcast - Tableau Big Data Solution Showcase
AWS Webcast - Tableau Big Data Solution ShowcaseAWS Webcast - Tableau Big Data Solution Showcase
AWS Webcast - Tableau Big Data Solution ShowcaseAmazon Web Services
 
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014Amazon Web Services
 
AWS re:Invent 2016: Moving Mission Critical Apps from One Region to Multi-Reg...
AWS re:Invent 2016: Moving Mission Critical Apps from One Region to Multi-Reg...AWS re:Invent 2016: Moving Mission Critical Apps from One Region to Multi-Reg...
AWS re:Invent 2016: Moving Mission Critical Apps from One Region to Multi-Reg...Amazon Web Services
 
翻轉工作!Google用人十守則
翻轉工作!Google用人十守則翻轉工作!Google用人十守則
翻轉工作!Google用人十守則RainDog 雨狗
 

Viewers also liked (20)

Scalable Gaming with AWS - GDC 2014
Scalable Gaming with AWS - GDC 2014Scalable Gaming with AWS - GDC 2014
Scalable Gaming with AWS - GDC 2014
 
Data Analytics on AWS
Data Analytics on AWSData Analytics on AWS
Data Analytics on AWS
 
GDC 2015 - Low-latency Multiplayer Gaming with AWS
GDC 2015 - Low-latency Multiplayer Gaming with AWS GDC 2015 - Low-latency Multiplayer Gaming with AWS
GDC 2015 - Low-latency Multiplayer Gaming with AWS
 
Easy Analytics on AWS with Amazon Redshift, Amazon QuickSight, and Amazon Mac...
Easy Analytics on AWS with Amazon Redshift, Amazon QuickSight, and Amazon Mac...Easy Analytics on AWS with Amazon Redshift, Amazon QuickSight, and Amazon Mac...
Easy Analytics on AWS with Amazon Redshift, Amazon QuickSight, and Amazon Mac...
 
Learning analytics applied to serious games, invited talk at ECGBL 2013 Porto...
Learning analytics applied to serious games, invited talk at ECGBL 2013 Porto...Learning analytics applied to serious games, invited talk at ECGBL 2013 Porto...
Learning analytics applied to serious games, invited talk at ECGBL 2013 Porto...
 
Scale, baby, scale!
Scale, baby, scale!Scale, baby, scale!
Scale, baby, scale!
 
Analytics & Reporting for Amazon Cloud Logs
Analytics & Reporting for Amazon Cloud LogsAnalytics & Reporting for Amazon Cloud Logs
Analytics & Reporting for Amazon Cloud Logs
 
DPACC Acceleration Progress and Demonstration
DPACC Acceleration Progress and DemonstrationDPACC Acceleration Progress and Demonstration
DPACC Acceleration Progress and Demonstration
 
World's best AWS Cloud Log Analytics & Management Tool
World's best AWS Cloud Log Analytics & Management ToolWorld's best AWS Cloud Log Analytics & Management Tool
World's best AWS Cloud Log Analytics & Management Tool
 
(MBL303) Get Deeper Insights Using Amazon Mobile Analytics | AWS re:Invent 2014
(MBL303) Get Deeper Insights Using Amazon Mobile Analytics | AWS re:Invent 2014(MBL303) Get Deeper Insights Using Amazon Mobile Analytics | AWS re:Invent 2014
(MBL303) Get Deeper Insights Using Amazon Mobile Analytics | AWS re:Invent 2014
 
Big Data Analytics with AWS and AWS Marketplace Webinar
Big Data Analytics with AWS and AWS Marketplace WebinarBig Data Analytics with AWS and AWS Marketplace Webinar
Big Data Analytics with AWS and AWS Marketplace Webinar
 
AWS_Architecture_e-commerce
AWS_Architecture_e-commerceAWS_Architecture_e-commerce
AWS_Architecture_e-commerce
 
(BDT306) Mission-Critical Stream Processing with Amazon EMR and Amazon Kinesi...
(BDT306) Mission-Critical Stream Processing with Amazon EMR and Amazon Kinesi...(BDT306) Mission-Critical Stream Processing with Amazon EMR and Amazon Kinesi...
(BDT306) Mission-Critical Stream Processing with Amazon EMR and Amazon Kinesi...
 
UK GIAF Summer 2015 - Trends in game analytics: What’s happening and why?
UK GIAF Summer 2015 - Trends in game analytics: What’s happening and why?UK GIAF Summer 2015 - Trends in game analytics: What’s happening and why?
UK GIAF Summer 2015 - Trends in game analytics: What’s happening and why?
 
The architecture of data analytics PaaS on AWS
The architecture of data analytics PaaS on AWSThe architecture of data analytics PaaS on AWS
The architecture of data analytics PaaS on AWS
 
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
 
AWS Webcast - Tableau Big Data Solution Showcase
AWS Webcast - Tableau Big Data Solution ShowcaseAWS Webcast - Tableau Big Data Solution Showcase
AWS Webcast - Tableau Big Data Solution Showcase
 
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
 
AWS re:Invent 2016: Moving Mission Critical Apps from One Region to Multi-Reg...
AWS re:Invent 2016: Moving Mission Critical Apps from One Region to Multi-Reg...AWS re:Invent 2016: Moving Mission Critical Apps from One Region to Multi-Reg...
AWS re:Invent 2016: Moving Mission Critical Apps from One Region to Multi-Reg...
 
翻轉工作!Google用人十守則
翻轉工作!Google用人十守則翻轉工作!Google用人十守則
翻轉工作!Google用人十守則
 

Similar to GDC 2015 - Game Analytics with AWS Redshift, Kinesis, and the Mobile SDK

20141021 AWS Cloud Taekwon - Big Data on AWS
20141021 AWS Cloud Taekwon - Big Data on AWS20141021 AWS Cloud Taekwon - Big Data on AWS
20141021 AWS Cloud Taekwon - Big Data on AWSAmazon Web Services Korea
 
Build and Deploy Your Mobile Games
Build and Deploy Your Mobile Games Build and Deploy Your Mobile Games
Build and Deploy Your Mobile Games Amazon Web Services
 
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...MongoDB
 
Analyzing Real-time Streaming Data with Amazon Kinesis
Analyzing Real-time Streaming Data with Amazon KinesisAnalyzing Real-time Streaming Data with Amazon Kinesis
Analyzing Real-time Streaming Data with Amazon KinesisAmazon Web Services
 
AWS re:Invent 2016: Innovation After Installation: Establishing a Digital Rel...
AWS re:Invent 2016: Innovation After Installation: Establishing a Digital Rel...AWS re:Invent 2016: Innovation After Installation: Establishing a Digital Rel...
AWS re:Invent 2016: Innovation After Installation: Establishing a Digital Rel...Amazon Web Services
 
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)Amazon Web Services
 
AWSome Day Manchester 2105 - Intro/Close
AWSome Day Manchester 2105 - Intro/CloseAWSome Day Manchester 2105 - Intro/Close
AWSome Day Manchester 2105 - Intro/CloseIan Massingham
 
Intro Presentation at AWS AWSome Day London September 2015
Intro Presentation at AWS AWSome Day London September 2015Intro Presentation at AWS AWSome Day London September 2015
Intro Presentation at AWS AWSome Day London September 2015Ian Massingham
 
AWS APAC Webinar Week - 2015 An Amazing Year in AWS
AWS APAC Webinar Week - 2015 An Amazing Year in AWSAWS APAC Webinar Week - 2015 An Amazing Year in AWS
AWS APAC Webinar Week - 2015 An Amazing Year in AWSAmazon Web Services
 
Path to the future #4 - Ingestão, processamento e análise de dados em tempo real
Path to the future #4 - Ingestão, processamento e análise de dados em tempo realPath to the future #4 - Ingestão, processamento e análise de dados em tempo real
Path to the future #4 - Ingestão, processamento e análise de dados em tempo realAmazon Web Services LATAM
 
Serverless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis AnalyticsServerless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis AnalyticsAmazon Web Services
 
Intro Presentation at AWS AWSome Day Glasgow September 2015
Intro Presentation at AWS AWSome Day Glasgow September 2015Intro Presentation at AWS AWSome Day Glasgow September 2015
Intro Presentation at AWS AWSome Day Glasgow September 2015Ian Massingham
 
Serverless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis AnalyticsServerless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis AnalyticsAmazon Web Services
 
Serverless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis AnalyticsServerless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis AnalyticsAmazon Web Services
 
AWS AWSome Day London October 2015
AWS AWSome Day London October 2015 AWS AWSome Day London October 2015
AWS AWSome Day London October 2015 Ian Massingham
 
Machine learning in the physical world by Kip Larson from AWS IoT
Machine learning in the physical world by  Kip Larson from AWS IoTMachine learning in the physical world by  Kip Larson from AWS IoT
Machine learning in the physical world by Kip Larson from AWS IoTBill Liu
 
Intro to Game Development & Operations on AWS
Intro to Game Development & Operations on AWSIntro to Game Development & Operations on AWS
Intro to Game Development & Operations on AWSAmazon Web Services
 
Improve monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile appsImprove monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile appsAmazon Web Services
 
Real-Time Streaming: Intro to Amazon Kinesis
Real-Time Streaming: Intro to Amazon KinesisReal-Time Streaming: Intro to Amazon Kinesis
Real-Time Streaming: Intro to Amazon KinesisAmazon Web Services
 

Similar to GDC 2015 - Game Analytics with AWS Redshift, Kinesis, and the Mobile SDK (20)

20141021 AWS Cloud Taekwon - Big Data on AWS
20141021 AWS Cloud Taekwon - Big Data on AWS20141021 AWS Cloud Taekwon - Big Data on AWS
20141021 AWS Cloud Taekwon - Big Data on AWS
 
Build and Deploy Your Mobile Games
Build and Deploy Your Mobile Games Build and Deploy Your Mobile Games
Build and Deploy Your Mobile Games
 
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
 
Analyzing Real-time Streaming Data with Amazon Kinesis
Analyzing Real-time Streaming Data with Amazon KinesisAnalyzing Real-time Streaming Data with Amazon Kinesis
Analyzing Real-time Streaming Data with Amazon Kinesis
 
AWS re:Invent 2016: Innovation After Installation: Establishing a Digital Rel...
AWS re:Invent 2016: Innovation After Installation: Establishing a Digital Rel...AWS re:Invent 2016: Innovation After Installation: Establishing a Digital Rel...
AWS re:Invent 2016: Innovation After Installation: Establishing a Digital Rel...
 
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)
 
AWSome Day Manchester 2105 - Intro/Close
AWSome Day Manchester 2105 - Intro/CloseAWSome Day Manchester 2105 - Intro/Close
AWSome Day Manchester 2105 - Intro/Close
 
Intro Presentation at AWS AWSome Day London September 2015
Intro Presentation at AWS AWSome Day London September 2015Intro Presentation at AWS AWSome Day London September 2015
Intro Presentation at AWS AWSome Day London September 2015
 
AWS APAC Webinar Week - 2015 An Amazing Year in AWS
AWS APAC Webinar Week - 2015 An Amazing Year in AWSAWS APAC Webinar Week - 2015 An Amazing Year in AWS
AWS APAC Webinar Week - 2015 An Amazing Year in AWS
 
Path to the future #4 - Ingestão, processamento e análise de dados em tempo real
Path to the future #4 - Ingestão, processamento e análise de dados em tempo realPath to the future #4 - Ingestão, processamento e análise de dados em tempo real
Path to the future #4 - Ingestão, processamento e análise de dados em tempo real
 
Serverless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis AnalyticsServerless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis Analytics
 
Intro Presentation at AWS AWSome Day Glasgow September 2015
Intro Presentation at AWS AWSome Day Glasgow September 2015Intro Presentation at AWS AWSome Day Glasgow September 2015
Intro Presentation at AWS AWSome Day Glasgow September 2015
 
Serverless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis AnalyticsServerless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis Analytics
 
Serverless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis AnalyticsServerless Streaming Data Processing using Amazon Kinesis Analytics
Serverless Streaming Data Processing using Amazon Kinesis Analytics
 
AWS AWSome Day London October 2015
AWS AWSome Day London October 2015 AWS AWSome Day London October 2015
AWS AWSome Day London October 2015
 
Machine learning in the physical world by Kip Larson from AWS IoT
Machine learning in the physical world by  Kip Larson from AWS IoTMachine learning in the physical world by  Kip Larson from AWS IoT
Machine learning in the physical world by Kip Larson from AWS IoT
 
Intro to Game Development & Operations on AWS
Intro to Game Development & Operations on AWSIntro to Game Development & Operations on AWS
Intro to Game Development & Operations on AWS
 
Improve monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile appsImprove monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile apps
 
Opening Keynote
Opening KeynoteOpening Keynote
Opening Keynote
 
Real-Time Streaming: Intro to Amazon Kinesis
Real-Time Streaming: Intro to Amazon KinesisReal-Time Streaming: Intro to Amazon Kinesis
Real-Time Streaming: Intro to Amazon Kinesis
 

Recently uploaded

Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialJoão Esperancinha
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Nikki Chapple
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...itnewsafrica
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sectoritnewsafrica
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...amber724300
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 

Recently uploaded (20)

Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorial
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 

GDC 2015 - Game Analytics with AWS Redshift, Kinesis, and the Mobile SDK

  • 1. 1 GDC 2015 – Amazon Developer Day Connecting With Your Players Using AWS Analytics Nate Wiger Principal, Gaming Solutions @nateware nateware@amazon.com
  • 2. AWS Gaming Solutions Projected Mobile App Revenue 0 10000 20000 30000 40000 50000 60000 70000 80000 90000 2011 2012 2013 2014 2015 2016 2017 Ads IAP Paid Source: Gartner
  • 3. AWS Gaming Solutions More Screens = More Revenue
  • 4. AWS Gaming Solutions Analytics at Supercell “You cannot predict success. You will only find out after releasing it.” - Ilkka Paananen, CEO, Supercell
  • 5. AWS Gaming Solutions Analyze What? Emotions •  Enjoying game •  Engaged •  Like/dislike new content •  Stuck on a level •  Bored •  Giving up Behaviors •  Hours played day/week •  Number of sessions/day •  Level progression •  Friend invites/referrals •  Response to mobile push •  Money spent/week
  • 6. AWS Gaming Solutions Winning at Free to Play •  Phase 1: Collect Data •  Phase 2: Analyze •  Phase 3: Profit
  • 7. AWS Gaming Solutions Example: Level Progression (One Metric) 0 2 4 6 8 10 L1 L2 L3 L4 L5 L6 L7 L8 L9 L10 Tries / Level # of Tries
  • 8. AWS Gaming Solutions Example: Level Progression (Two Metrics) 0 10 20 30 40 50 60 0 2 4 6 8 10 L1 L2 L3 L4 L5 L6 L7 L8 L9 L10 Tries / Level % Highest Level # of Tries
  • 9. AWS Gaming Solutions Wooga – Player Attrition
  • 10. AWS Gaming Solutions Wooga – Level Analysis
  • 11. AWS Gaming Solutions Solution – Level of the Week
  • 12. AWS Gaming Solutions Solution – Level of the Week
  • 13. AWS Gaming Solutions Events & Metrics •  Event = Moment in Time –  Login/quit –  Game start/end –  Level up –  In-app purchase •  Metrics = What to Measure –  KISS –  Numbers –  Booleans –  Strings (Enums) •  Context = Always Include –  User –  Action –  Session (context-dependent) –  Timestamp in ISO8601 2014-­‐03-­‐16T16:28:26
  • 14. AWS Gaming Solutions Off The Shelf Analytics •  Easy To Integrate •  Pre-Baked Reports •  Limited Flexibility •  Retention Windows •  Data Ownership
  • 15. AWS Gaming Solutions Ok, A Real Business Plan Ingest Store Process Analyze
  • 16. AWS Gaming Solutions Ok, A Real Business Plan Ingest •  S3 PUT •  Analytics SDK •  Kinesis Store •  S3 •  DynamoDB •  HDFS Process •  Redshift •  EMR (Hadoop) •  Spark Analyze •  Tableau •  Pentaho •  Jaspersoft
  • 17. AWS Gaming Solutions •  Collect Events on Device •  Periodically Store in S3 •  Process Data into Redshift •  Analyze with GUI Visualization Tool Start Simple 2015-­‐03-­‐03,nateware,e4df,login   2015-­‐03-­‐03,nateware,e4df,gamestart   2015-­‐03-­‐03,nateware,e4df,gameend   2015-­‐03-­‐03,nateware,a88c,login   2015-­‐03-­‐03,nateware,a88c,friendlist   2015-­‐03-­‐03,nateware,a88c,gamestart   Profit!
  • 18. AWS Gaming Solutions Redshift at a Glance 10 GigE (HPC) Ingestion Backup Restore SQL Clients/BI Tools 128GB RAM 16TB disk 16 cores Amazon S3/DynamoDB JDBC/ODBC 128GB RAM 16TB disk 16 coresCompute Node 128GB RAM 16TB disk 16 coresCompute Node 128GB RAM 16TB disk 16 coresCompute Node Leader Node •  Leader Node –  SQL endpoint –  Stores metadata –  Coordinates query execution •  Compute Nodes –  Columnar table storage –  Load, backup, restore via Amazon S3 –  Parallel load from Amazon DynamoDB •  Single node version available
  • 20. AWS Gaming Solutions Plumbing ①  Create S3 bucket ("mygame-analytics-events") ②  Request a security token for your mobile app: http://docs.aws.amazon.com/STS/latest/UsingSTS/Welcome.html ③  Upload data from your users' devices ④  Run a scheduled copy to Redshift ⑤  Setup Tableau to access Redshift ⑥  Go to the Beach
  • 21. AWS Gaming Solutions Loading Redshift from S3 copy  events   from  's3://mygame-­‐analytics-­‐events'   credentials  'aws_access_key_id=<access-­‐key-­‐id>;   aws_secret_access_key=<secret-­‐access-­‐key>'   delimiter=',';   Scheduled Redshift Load using Data Pipeline: http://aws.amazon.com/articles/1143507459230804 Search Slideshare for "BDT303" – re:Invent 2014
  • 23. AWS Gaming Solutions •  Collect Server Logs •  Periodically Send to S3 •  Process into Redshift •  External Analytics Data Too More Data Sources EC2 External Analytics
  • 24. AWS Gaming Solutions Logrotate to S3 /var/log/apache2/*.log  {      sharedscripts      postrotate          sudo  /usr/sbin/apache2ctl  graceful          s3cmd  sync  /var/log/*.gz  s3://mygame-­‐logs/      endscript   }   Blog Entry on Log Rotation: http://www.dowdandassociates.com/blog/content/howto-rotate-logs-to-s3/ ELB Access Logs: http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/ access-log-collection.html
  • 25. AWS Gaming Solutions •  Different File Formats •  Device vs Apache vs CDN •  Cleanup with EMR Job •  Output to Clean Bucket •  Load into Redshift Dealing With Messy Data EC2
  • 26. AWS Gaming Solutions Redshift vs Elastic MapReduce Redshift •  Columnar DB •  Familiar SQL •  Structured Data •  Batch Load •  Faster to Query •  Long-term Storage Elastic MapReduce •  Hadoop •  Custom Java / Python •  Unstructured Data •  Streaming Loop •  Scales > PB's •  Transient
  • 27. AWS Gaming Solutions •  Game Servers Uses DynamoDB •  Directly Export to Redshift •  Or Stage to S3 Integrate With Your Game Database EC2 DynamoDB
  • 28. AWS Gaming Solutions AWS Mobile Analytics SDK
  • 29. AWS Gaming Solutions Amazon Mobile Analytics Engagement + Monetization Active Users Sessions In-app Revenue Lifetime Value (LTV) Retention Post-install Retention Funnel Behavior Custom Events
  • 30. AWS Gaming Solutions Integrating Mobile Analytics is Simple Initialize the MobileAnalyticsManager. For Custom Events activity reports, add events. Handle OnResume() and OnPause() private static MobileAnalyticsManager analytics; analytics = MobileAnalyticsManager.getOrCreateInstance( this.getApplicationContext(),"yourCompany.yourAppId", Regions  .US_EAST_1, config, cognitoProvider ); EventClient eventClient = analytics.getEventClient(); MobileAnalyticsEvent visitEvent = eventClient.createEvent("level1Complete"); eventClient.recordEvent(visitEvent); analytics.getSessionClient().resumeSession(); analytics.getSessionClient().pauseSession(); analytics.getEventClient().submitEvents();
  • 31. AWS Gaming Solutions Key Business Metrics (with one line of code) 1.  Monthly Active Users (MAU) 2.  Daily Active Users (DAU) 3.  New Users, 4.  Daily Sessions, 5.  Sticky Factor, 6.  1-Day Retention, 7.  Avg. Revenue per DAU, 8.  Daily Paying Users, 9.  Avg. Paying DAU
  • 32. AWS Gaming Solutions Amazon Mobile Analytics Post-install Retention Funnel
  • 33. AWS Gaming Solutions # of Likes /Shares Player Abort Rates per Level # of Plays per Hour In-app Item Popularity Track Custom Events
  • 34. AWS Gaming Solutions Custom Events public  void  onLevelComplete(String  levelName,  String  difficulty,  double   timeToComplete,  int  playerState)  {            //  Create  a  Level  Complete  event  with  some  attributes  and  metrics          AnalyticsEvent  levelCompleteEvent  =                            analytics.getEventClient().createEvent("LevelComplete")                          .withAttribute("LevelName",  levelName)                          .withAttribute("Difficulty",  difficulty)                          .withAttribute("EndState",  playerState)                          .withMetric("TimeToComplete",  timeToComplete);            //Record  the  Level  Complete  event          analytics.getEventClient().recordEvent(levelCompleteEvent);   }  
  • 35. AWS Gaming Solutions Amazon Mobile Analytics Fast Event data is processed in < 60 minutes Affordable Free 100 MM Events per Month $1 per MM Events beyond the free tier Private You own your data We do not use your data, or share with 3rd parties
  • 36. AWS Gaming Solutions Exporting to S3 or Redshift S3 Redshift
  • 37. AWS Gaming Solutions •  Collect Events w/ Mobile Analytics SDK •  Auto-Export to S3 •  Process Data into Redshift •  Analyze with GUI Visualization Tool Mobile Analytics Auto-Export to S3
  • 38. AWS Gaming Solutions •  Collect Events w/ Mobile Analytics SDK •  Auto-Export Directly to Redshift •  Analyze with GUI Visualization Tool Start Simple
  • 39. AWS Gaming Solutions Setup Analytics Auto-Export to Redshift
  • 40. AWS Gaming Solutions Setup Analytics Auto-Export to Redshift
  • 41. AWS Gaming Solutions Setup Analytics Auto-Export to Redshift http://amzn.to/mobile-redshift-export
  • 42. AWS Gaming Solutions Exporting to Amazon Redshift 172.16.0.0/20 Public Subnet 172.16.0.0/22 172.16.0.0/20 Local 0.0.0.0/0 IGW Amazon Mobile Analytics EC2
  • 43. AWS Gaming Solutions SQL with Redshift – Mobile Analytics Data
  • 44. AWS Gaming Solutions SQL – User Segmentation
  • 45. AWS Gaming Solutions DAU and MAU in SQL select  date,                count(*)  over  (partition  by                              date_trunc('day',  date)  order  by                          date)  as  dau,                count(*)  over  (partition  by                          date_trunc('month',  date)  order  by                          date)  as  mau   from  user_sessions   order  by  date;  
  • 46. AWS Gaming Solutions Measure Retention: Repeated Plays create  view  events_by_user_by_month  as   select  user_id,   date_trunc('month',  event_date)   as  month_active,   count(*)  as  total_events   from  events   group  by  user_id,  month_active;    
  • 47. AWS Gaming Solutions First-Pass Retention – Individual Plays 0 5 10 15 20 25 30 35 40 # Play Sessions / Month nateware Lazyd0g AK187 3strikes
  • 48. AWS Gaming Solutions Cohorts & Cambria •  Enables calculating relative metrics •  Group users by a common attribute –  Month game installed –  Demographics •  Run analysis by cohort –  Join with metrics •  Use Redshift as it's SQL –  Example of where SQL is a good fit
  • 49. AWS Gaming Solutions Creating Cohorts with Redshift create  view  cohort_by_first_event_date  as   select  user_id,   date_trunc('month',  min(event_date))   as  first_month   from  events   group  by  user_id;     http://snowplowanalytics.com/analytics/customer- analytics/cohort-analysis.html
  • 50. AWS Gaming Solutions Retention by Cohort – Join Events 0 5 10 15 20 25 Week 1 Week 2 Week 3 Week 5 Week 6 Week 7 # Sessions / Week 2013-11 2013-12 2014-01 2014-02 2014-03 2014-04
  • 51. AWS Gaming Solutions Moar Cohorts •  Define multiple cohorts –  By activity, time, demographics –  As many as you like •  Change cohort depending on analysis •  Join same metrics with different cohorts –  Retention by date –  Retention by demographic –  Retention by average plays/month quartile
  • 52.
  • 53. AWS Gaming Solutions 5-9 notifications retain 1.5x better than 10-14 notifications Forza: Push Notifications vs Retention
  • 55. AWS Gaming Solutions Data Collection •  Mobile Devices •  Game Servers •  Ad Networks •  Size of event ~ 1 KB •  500M+ events/day •  500G+/day & growing •  JSON format Source of Data Data Size & Growth
  • 56. AWS Gaming Solutions Redshift Schema •  Every game has its own database •  Each game event = table (e.g., battle_fight, iap) •  40-50 tables per DB schema •  All game titles ~ 1000 tables in DW
  • 57. AWS Gaming Solutions {"player_id":"323726381807586881","player_level":169,"device":"iPhone 5","version":"iOS 7.1.2”,"platfrom":"ios","client_build":"440”, "db":”mw_dw_ios","table":"player_login", "uuid":"1414566719-rsl3hvhu7o","time_created":"2014-10-29 00:11:59”} {"fight_time":"2014-10-29 00:11:59","attacker_id":"413142642356365377”, "attacker_clan_size":500,"attacker_level":270, "db":"mw_dw_ios","table":"battle_fight", "uuid":"1414566719-p0oogk0bep","time_created":"2014-10-29 00:11:59"} •  PHP/Python Web Services •  Client side analytics SDK •  JSON data format Data Stream
  • 58. AWS Gaming Solutions Analytics Store Architecture S3 S3 Consumer Game DB Game Servers Kinesis Amazon Redshift Elastic MapReduce DSV JSON
  • 59. AWS Gaming Solutions Writing to a Kinesis Stream POST  /  HTTP/1.1   Host:  kinesis.<region>.<domain>   x-­‐amz-­‐Date:  <Date>   Authorization:  AWS4-­‐HMAC-­‐SHA256  Credential=<Credential>,  SignedHeaders=content-­‐ type;date;host;user-­‐agent;x-­‐amz-­‐date;x-­‐amz-­‐target;x-­‐amzn-­‐requestid,   Signature=<Signature>   User-­‐Agent:  <UserAgentString>   Content-­‐Type:  application/x-­‐amz-­‐json-­‐1.1   Content-­‐Length:  <PayloadSizeBytes>   Connection:  Keep-­‐Alive   X-­‐Amz-­‐Target:  Kinesis_20131202.PutRecord     {      "StreamName":  "exampleStreamName",      "Data":  "XzxkYXRhPl8x",      "PartitionKey":  "partitionKey"   }  
  • 60. AWS Gaming Solutions Amazon S3 Spark SQL JDBC Server SQL Dashboard Redshift Consumer EMR Consumer Game DB Game Servers Kinesis DynamoDB DSV JSON
  • 61. AWS Gaming Solutions Saving Money… EC2 Spot Instances You bid your own price for instances c3.large $0.105/hour $0.0161/hour* m3.2xlarge $0.560/hour $0.0641/hour* On-Demand Spot On-Demand Spot * Price in US-East @ Feb 26, 2014 – 9:40AM PST 85% off 88% off
  • 63. AWS Gaming Solutions Auto Scaling: Let AWS Optimize For You as-create-launch-config spotlc-5cents --image-id ami-e565ba8c --instance-type m1.small --spot-price “0.05” . . . as-create-auto-scaling-group spotasg --launch-configuration spotlc-5cents --availability-zones “us-east-1a,us-east-1b” --max-size 16 --min-size 1 --desiredcapacity 3
  • 64. AWS Gaming Solutions EMR Cluster With Spot aws emr create-cluster --name "Multiple task instance group cluster" --ami-version 3.2.3 --ec2-attributes AvailabilityZone=eu-west-1b --instance-groups InstanceGroupType=MASTER,Name="Master",InstanceCount=1,InstanceType=m3.xlarge InstanceGroupType=CORE,Name="Core",InstanceCount=4,InstanceType=m3.xlarge InstanceGroupType=TASK,Name="Task1",InstanceCount=25,InstanceType=m3.xlarge,BidPrice=0.28 InstanceGroupType=TASK,Name="Task2",InstanceCount=10,InstanceType=r3.xlarge,BidPrice=0.28
  • 65. AWS Gaming Solutions •  S3 as Data Lake •  Redshift for Analysis •  Collect Everything •  Iterate on Reports Bring It All Back EC2 External Analytics
  • 66. AWS Gaming Solutions Amazon S3 Spark SQL JDBC Server SQL Dashboard Redshift Consumer EMR Consumer Game DB Game Servers Kinesis DynamoDB DSV JSON
  • 67. 67 Nate Wiger Principal, Gaming Solutions @nateware nateware@amazon.com