[MUSIC PLAYING]
Hi, everyone.
I'm Appie.
I have never talked before in front of people.
So please forgive me if this is really bad.
OK.
So I work at DeNA.
It's a Japanese company, but we're growing
our global presence in gaming.
We had about $2 billion worth of virtual currency spent
in our titles in Japan last year, and around $270 million
spent around the rest of the world.
So internally, we've released a lot of titles.
And we just launched "Blood Brothers 2"
in former San Francisco office.
We work with licensed IPs, like Transformers, Star Wars,
Marvel.
I'm really excited to mention we're
bringing over a huge hit in Japan-- "Final Fantasy Record
Keeper."
It's made us around $10 million a month there,
so we're really excited about it.
We track a lot of different data in our games.
Of course, the standard KPIs so we can compare our titles.
We get ad-vendor data and do marketing analysis.
We also look at custom game logs to tune
our games, improve our design.
So that leads to a lot of data.
On busy days, we get up to 60 megs of raw logs a minute
and around 50 gigs of raw logs per day.
And that's given us some headaches
in the past that I'll get into.
So all this data that's coming from all
these different titles, different studios,
we've been storing in a Hadoop cluster.
That was our old solution.
Our version of Hadoop is a little outdated.
But we've been accessing it via HiveQL.
And last I checked, the table we store that data
is around 42 terabytes.
This is a diagram of our old infrastructure.
15 seconds and a slide is not enough time
to describe all these blank boxes.
But I will say that as we've grown,
it's gotten more and more complicated.
And we've had a lot of bottlenecks and failure
points, the first of which is we have a really slow ETL process.
From the point a player triggers an action in our game
to when we would actually be able to analyze
that data was about three hours, sometimes more.
And we run a lot of live events at our company.
So that made it really hard to iterate quickly.
We've also grown our size quite a bit in terms of the analysts
in our studio.
So we've clogged our systems a lot,
time to time-- brought it down.
And it's been really hard to control permissions
effectively, especially with an older version of Hadoop.
And this is my biggest pet peeve.
If I was trying to answer some question with data--
running some query-- I would kick it off.
And then I'd wait, and wait, and wait.
And it would take like forever to get data back.
And you'd forget what you were even
looking at when you started.
So our solution to deal with all these issues
has been to just simplify the common tech in our games
in the West.
We've done that by using Google App Engine as a platform
server for our titles and to use Google BigQuery for the data
storage and analysis.
So in terms of data ingestion, it's become much quicker.
We've played around with Google Streaming API
into BigQuery, cloud logging, some other setups,
and we've managed to get the time from users triggering data
to us being able to analyze it down to seconds instead
of three hours.
We also have been able to scale without any worries.
If we launch 10 more titles or hire 10 more analysts,
we don't need to worry about us bringing our systems down.
If something bad happens, we just blame Google
and call them up--
[LAUGHTER]
--and sort it out.
And it's been really easy to control permissions.
This was a huge headache before.
We work with a lot of external developers.
And we couldn't effectively share their own data back
to them.
And so now with just a couple clicks,
we can share their projects, their data
sets with people outside and within our own studio.
And here I am running a query.
It's processing them out-- 170 gigs of data,
grouping by a couple things, coming up
with tutorial completion rate.
Took about eight seconds in BigQuery--
the same query over less data in Hadoop took about two minutes.
So lessons learned-- it hasn't been totally smooth sailing,
mostly because we've had to look at some things differently.
We've hit some quotas.
We have to work around a different cost structure.
And it's a little bit of a newer product,
so some features haven't always worked as expected.
But Google has been great with helping us with that.
So for us, it's really been a good solution.
We want to be able to have the control of our own data
in-house to do our own analysis.
And we don't want to have to worry about maintaining
the actual infrastructure to make that happen because we're
a games company, after all.
So I wanted to show you, playing around with some data,
this is connected with Tableau.
And I'm diving into an example of when
players were losing missions early on in our game "Blood
Brothers 2."
We made a change, and I wanted to drill in
by day to see if it worked.
And I can see here it did.
Here's another example.
We reduced the entry price for a live event gotcha
that had unlocking steps.
And we increased conversion early on,
though we decreased revenue early in the funnel.
But overall, if you look at the green line on the right,
we increased revenue compared to other past events.
So at DeNA, we really try to drive actions with data.
We prioritize our engineering effort based off
of monitoring game performance.
We'll optimize our funnels.
We'll tune our games' economies.
And we iterate really quickly on live events.
So in sum, BigQuery has really helped us actually
focus on using this data instead of just exhausting ourselves
trying to get to the data itself.
So I'm excited to see what our analysts at the company
push ourselves to now that we have great tools.
And I'm glad I got to share our experience with you today.
[APPLAUSE]
Thank you.
[MUSIC PLAYING]