- Now let's review a use case
where we perform business intelligence
on a video subscription service.
In this example, we have a video subscription service,
something similar to Netflix,
where our customers are out there watching videos
on their laptops, their desktops, their mobile devices,
and as they're watching videos,
as they're pressing Play, as they are pressing Pause,
as they're scrubbing forward, or backward,
or replaying, or re-watching,
or favoriting a particular section of a video,
or leaving comments, all of these events are coming in
to our Kinesis Stream.
From that stream we have a number
of different applications that are doing things
like Sliding Window analysis,
how many videos are actively being played right now,
what videos are being played right now,
what categories are being watched right now.
As new users actually sign up we want to be able
to see how many users actually became new users
in the last minute or the last hour.
We're doing these Sliding Window analyses
and those are being stored in DynamoDB.
We have another application that is just taking
the raw event messages, aggregating those per hour
or per day and storing those files in Amazon S3.
From there we have our User Account information,
we have Video meta-data being stored
in the Amazon RDS using Amazon Aurora database
which again is a MySQL compatible database
but gives us a much greater performance over stock MySQL.
We also have our Finance and Accounting team is using
SQL Server on Amazon RDS
to track how much we spend on marketing campaigns,
how much we spend to produce video content.
You can see that we have data stored
in a lot of different areas.
Each area, each particular database,
whether it be RDS Amazon Aurora or SQL Server or DynamoDB,
they are serving a very particular function
but it still means that we have data
in a lot of different areas.
We're going to use AWS Data Pipeline
to run queries on these various databases.
We're going to pull in information about user accounts.
We're going to pull in information about videos.
We're going to pull in information
about all of our financials.
We're going to aggregate all of that data
and store it over here in Amazon Redshift.
We're also going to take the data
from these Sliding Windows.
We're going to leverage AWS Data Pipeline
to pull data from DynamoDB and transfer
it over to Redshift as well.
From here, now we can use our business intelligence software
to run much more complex queries across the entire dataset
that would have normally been very difficult
because they were in all of these
various disparate databases but now that all
of that data is in one cluster
we can leverage the massive parallel processing power
of Amazon Redshift to answer some very complex questions.
We can also, if we wanted to retroactively go back
and ask questions that we weren't asking
at the time the data was coming in,
we can go back, pull these Raw Log files out of S3,
load them into Amazon Elastic MapReduce,
leveraging the power of thousands
of nodes running in parallel to further process
those logs and store those results also in Redshift.
With all of this data being pulled in
and aggregated into Redshift,
then we can start to get a sense of what's happening
in the big picture.
We want to start to understand things
like user engagement per video.
We want to understand how well a particular series is doing
versus other series,
how much are people interacting with,
how much of a video are people watching.
We want to see user engagement again per video,
per series, per category, and so on.
We want to understand out conversion rate,
as we're spending money on marketing campaigns.
People are coming back to the site as a result
but how many of those people come back?
How many of the people that come back,
how many of those actually become customers?
What are our conversion rates?
We can answer those questions given all of this data
from our user accounts, given the data that we spend
on marketing we can answer those questions.
We can also figure out how much we spend
per customer acquisition.
How much does it actually cost us to acquire new customers?
We also can look at our user accounts
and the money that we're spending
and determine what are our user churn rates.
This month versus last month, how many users signed up
versus how many users canceled their account.
Again, you can see this is just one more example
of the many, many ways that we can possibly
put all of these various services to use
to analyze a very large amount of data,
very easily within Amazon Web Services.
That is just one example of video subscription service
business intelligence leveraging multiple services
in Amazon Web Services.