Capgemini Super Techies Show Season 2: The AWS Challenge Presentation
1. The Amazon Web Services Challenge
Design a system/service that can enable content distribution for
streaming of live events and pre-stored content to different kinds
of mobile devices
2. The Facts
• Leading provider of remote computing services that together make
up a cloud computing platform, offered over the internet by Amazon.com
• AWS’ IT Infrastructure Business
– Provides cloud computing infrastructure for hosting web-scale solutions
– Has hundreds of thousands of customers in over 190 countries
• The AWS mission is to “Enable businesses and developers to use web services
to build scalable, sophisticated applications”
• The company is located in eight geographical ‘Regions’: US East (Northern
Virginia), US West (Northern California), US West (Oregon), São Paulo (Brazil),
Ireland, Singapore, Tokyo and Sydney
3. Background on Challenge – Attributes of
Cloud Computing
No up-front capital expenditure
Low cost
Pay only for what you use
Self-service infrastructure
Easily scale up and down
Improve agility and time-to-market
4. The Problem
• The accessing of content by end-users through an ever-increasing
variety of devices, with high expectations around end-user
experience, has had certain repercussions:
o Disruption in the media industry
o Introduction of new levels of complexity in designing highly
reliable and scalable architectures for distribution (applicable to
both live and pre-stored content)
• The unpredictable volumes and traffic associated with the demand for
content pose a unique challenge for content distributors
5. The Challenge Statement
Design a system/service that can enable content distribution for
streaming of live events (such as sporting events, e.g., The
Olympics/The Superbowl/The Cricket World Cup) and pre-stored
content to different kinds of mobile devices (iOS and android
devices) to an unknown number of viewers
Note: For the purpose of this challenge, Amazon allows you to
narrow down content to mean only video
6. The Challenge Statement - Details
Below are some assumptions to consider while developing the solution:
• Assume the Android version to be higher than version 2.2
• Assume that delivery networks have enough capacity for the content you are
serving
• Assume you have rights to serve the content
• Assume that the live-feed (source) does not have a single point of failure
7. Important Points to Remember
Consider the following points while designing the architecture:
It should allow for distribution of both live events and pre-stored
content
It should be highly available (which means it should be able to
withstand failure of components including hardware/data
centers)
It should scale up if there is a peak (think about streaming a
popular cricket match) and scale down when the load decreases.
Note: It should be assumed that demand cannot be predicted
8. Important Points to Remember
Some other winning criteria to consider while designing the
solution:
The architecture should have the lowest cost possible while not
compromising on end-user experience
Think of ways to invest as little as possible on IT on a per-event
basis and only pay when you need more resources
The solution should be available to users across the globe (sports
fans are everywhere)
The architecture should support streaming to multiple device
types and resolutions
Murphy’s law will be applicable (plan for failure)
9. Important Points to Remember
Some bonus criteria to consider while designing the solution:
Every time a user views a video, they leave a trail of information
about their viewing patterns. How would you leverage this to
enhance user experience?
How would you monetize such a service/system and what are the
architectural implications of the same?
Users should think about how they would implement Digital
Rights Management for paid content