How Netflix uses AWS: the (hugely simplified) complex stuff that happens every time you hit Play

How Netflix uses AWS: the (hugely simplified) complex stuff that happens every time you hit Play

Netflix, a service that streams around 250 million hours of video per day to around 98 million paying subscribers in 190 countries. At this scale, providing quality entertainment in a matter of a few seconds to every user is no joke. And as much as it means building top-notch infrastructure at a scale no other Internet service has done before, it also means that a lot of participants in the experience have to be negotiated with and kept satiated — from production companies supplying the content, to internet providers dealing with the network traffic Netflix brings upon them.

This is, in short and in the most layman terms, how Netflix uses AWS to solve this problem.

I. Decoding the myth

One of the first and foremost things that you have to understand is, what is cloud? Is it something in the sky ? or Does it mean resources that float in the cloud?

No alt text provided for this image

Or maybe it is a friendly monster from the sky!

No alt text provided for this image

If you think about cloud, physically it boils down to the below quote.

But does this abstract definition really define the cloud offerings of these days? Not one bit.

Though we can agree on this argument of cloud being someone’s else’s computer, it really doesn’t justify the offerings of cloud.

II. What is cloud computing?

No alt text provided for this image

Cloud computing is basically accessing storage and compute resources over the internet.

Still Confused? Let’s look at an example…

No alt text provided for this image

Example : You are a start-up company planned to launch an E-Commerce website for which you will require huge corpus of money to set up a complete Infrastructure which includes Power Backup Setup, Server Installations, Big Storage, Software Licenses, Development Environment, and Service Engineers for support.

But through the Cloud, you will spend considerable amount of money and gain access to great computing power at incredibly low cost. This will allow you to own something as far as IT infrastructure is concerned. Through virtualization, start-ups like yours can do great things with less physical server hardware. You can increase or reduce your storage consumption and pay for what you are utilizing using cloud’s “Pay as you Go” model.

III. How is it helpful?

In today’s digital world, any business that operates needs a lot of computational resources to run their applications and has a lot of data which needs to be stored and processed. This is where cloud comes into picture.

Traditionally businesses used to host their applications and store their data on their in-house data centers. Data centers are physical server warehouses which are built and managed by businesses.

But with business owned data centers, you have certain drawbacks such as large investment to setup your own physical infrastructure and machines, higher operating costs especially when you have to scale your application or have to host it in a different place, maintenance and security overhead and so on.

Cloud computing comes to the rescue of businesses which cannot afford large investments, businesses which want to be more agile, businesses which want lesser infrastructure maintenance overhead.

IV. Some of the benefits of cloud

No alt text provided for this image

V. Deployment models of Cloud Computing

Let’s see how Cloud offers the delivery of services and solutions to extremely large number of users via four different types of deployment model and services model.

No alt text provided for this image

Private Cloud: Owned by a specific entity or an Organization and normally used by that entity or one of its customers. A private cloud can be located in the customer’s own data center or computer room but it can also be hosted in a service provider’s data center. It offers increased security at a greater cost. For e.g. customers like Educational Institutions, Banks uses private cloud services.

Public Cloud: Used by public. All the physical resources is owned and operated by a third party cloud computing provider. May be owned by a large organization offering cloud services. For e.g. Dropbox, Evernote etc.

Hybrid Cloud: A cloud consists of two or more private, public or community clouds.

Infrastructure as a Service (IaaS): IaaS is one of the fundamental service which provides access to computing resources in a virtualized environment i.e. the server is running in the service provider’s data centers, but is fully managed by the customer. It provides computing infrastructure like virtual server space, network connections, bandwidth, load balancers and IP addresses. This includes the operating system (which can be any operating system), the applications running on this operating system and the data stored on the server.

Platform as a Service (PaaS): In this service model a server is running in the service provider’s data center’s and fully managed and hosted by the service provider accessed by the users via internet. The customer however is managing the applications running on the server and for the data stored on the server. This service is hosted in the cloud and Platform as a service, is referred as PaaS, it provides a platform and environment to allow developers to build applications and services. This service is hosted in the cloud and accessed by the users via internet.

Software as a Service (SaaS): In this service model, all software is running in the provider’s data center and also managed by the service provider. SaaS or software as a service is a software distribution model in which applications are hosted by a vendor or service provider and made available to customers over a network (internet). For e.g. Microsoft 360 and Adobe CC Design.

VI. Cloud Service Providers

No alt text provided for this image

Its a fact that Google, Amazon, Microsoft, IBM, Alibaba, etc are the heart and core of the IT industry, and all of them have launched their own Cloud Service,Google has Google Cloud,Amazon has Amazon Web Services, Microsoft has Azure, the reason to which is all these companies know the future lies in cloud computing .

Let's look at 7 Well-Known Companies that have moved to Cloud:

  1. Netflix 
  2. Xerox
  3. Pinterest
  4. Instagram
  5. Etsy
  6. Apple
  7. MediaMath

“Simply put, cloud computing is the delivery of computing services — servers, storage, databases, networking, software, analytics and more — over the Internet (“the cloud”). Companies offering these computing services are called cloud providers and typically charge for cloud computing services based on usage, similar to how you are billed for water or electricity at home.” (Amazon Web Services )

VII. Cloud based architecture at Netflix

No alt text provided for this image

Netflix operates based on Amazon cloud computing services (AWS) and Open Connect, its in-house content delivery network. Both systems must work together seamlessly to deliver high quality video streaming services globally. From the software architecture point of view, Netflix comprises three main parts: Client, Backend and Content Delivery Network (CDN).

Client is the user interface on any device used to browse and play Netflix videos. TV, XBOX, laptop or mobile phone etc.

Backend includes services, databases, storages running entirely on AWS cloud. Backend basically handles everything not involving streaming videos. Some of the components of Backend with their corresponding AWS services are listed as follows:

  • Scalable computing instances (AWS EC2)
  • Scalable storage (AWS S3)
  • Business logic microservices (purpose-built frameworks by Netflix)
  • Scalable distributed databases (AWS DynamoDB, Cassandra)
  • Big data processing and analytics jobs (AWS EMR, Hadoop, Spark, Flink, Kafka and other purpose-built tools by Netflix)
  • Video processing and transcoding (purpose-built tools by Netflix)

Open Connect CDN is a network of servers called Open Connect Appliances (OCAs) optimized for storing and streaming large videos. These OCAs servers are placed inside internet service providers (ISPs) and internet exchange locations (IXPs) networks around the world. OCAs are responsible for streaming videos directly to clients.

VIII. Netflix’s Stupendous Migration to AWS

No alt text provided for this image

Netflix was one of the very first companies to move their infrastructure over to AWS, and have since pioneered many of the common architectural patterns for designing products on AWS.

Back in 2008, Netflix was majorly working on DVD-by-mail service. Due to the corruption incident, DVD shipping was disrupted for three days. Netflix management decided to move to the cloud, away from relational systems in their data centers. The shift happened from vertical scaling of particular failure points to horizontal scaling of distributed systems which were highly reliable. The cloud was that of AWS (Amazon Web Services) which offered the company the ability to scale as much as they needed. Previously, Netflix team had to sit with their IT team to implement the scale up whenever their demand increased. Scalability was a huge issue with physical data warehousing. After shifting to AWS, scaling became seamless as petabytes of data could be used to stream videos within minutes, thanks to elasticity of the cloud. Based on user demand and with the help of AWS, Netflix could scale-up or down their data warehousing.

IX. How AWS helps Netflix plans to be no. one in streaming business?

Netflix uses AWS for nearly all its computing and storage needs, including databases, analytics, recommendation engines, video transcoding, and more—hundreds of functions that in total use more than 100,000 server instances on AWS.

No alt text provided for this image

AWS brings highly scalable, elastic and secure cloud services to content production, storage, processing, and distribution. And with Machine Learning and Analytics embedded throughout the media value chain, you can make smarter content investments, better monetize your content library, and delight users with personalized experiences. 

In this pendemic, Netflix Viewers are watching more content than ever before. Their expectations for nearly endless content choice anytime, anywhere and on any screen. To innovate at the speed their customers demand requires a flexible suite of media technologies and solutions to accelerate content production and delivery for the right audience, at the right time, for the right screen. That's where AWS helps Netflix to be no. one in streaming.

X. Benefits of using AWS

  • Processes and enriches multiple terabytes each day, representing billions of events, with sub-second response times for analytics queries
  • Highly cost efficient compared to competing solutions
  • Freedom to experiment with system architecture to arrive at the most effective solution
  • Data ingestion initiated with just a few simple API calls
  • Highly elastic solution with close to 1,000 Amazon Kinesis shards working in parallel

XI. How much does Netflix spend on AWS?

Based on Netflix’s utilization of AWS, we estimate that Netflix spends around $9.6 million per month on AWS. And with the free version of Intricately, we can see how this money is allocated across different AWS products.

XII. What AWS services does Netflix use?

Like many companies that use AWS, Netflix spends the most on Amazon EC2 ($3 million/mo) and much less on AWS Elastic Load Balancer, Amazon CloudFront, and other AWS products. Intricately also shows us that Netflix spends $1 million/mo or more on Microsoft Azure, Heroku, and Akamai.

No alt text provided for this image

Amazon Kinesis Data Streams (KDS) is a massively scalable and durable real-time data streaming service. KDS can continuously capture gigabytes of data per second from hundreds of thousands of sources such as website clickstreams, database event streams, financial transactions, social media feeds, IT logs, and location-tracking events. The data collected is available in milliseconds to enable real-time analytics use cases such as real-time dashboards, real-time anomaly detection, dynamic pricing, and more.

So, that is the power of Amazon Web Services propelling one of the most ambitious companies on earth, Netflix, into uncharted territory and runaway success!

Let me know your thoughts.

Thank you!

 

 

 

 

 

要查看或添加评论,请登录

Komal Suthar的更多文章

社区洞察

其他会员也浏览了