NETFLIX AWS CASE STUDY

Nisha shukla
6 min readMar 14, 2021

Netflix is the world’s leading internet television network, with more than 100 million members in more than 190 countries enjoying 125 million hours of TV shows and movies each day. 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.

Netflix Connects with 100 Million Customers in 190 Countries Using Amazon Simple Email Service

2020

Before migrating to Amazon Simple Email Service (Amazon SES), Netflix maintained an in-house solution for sending email. This solution carried its own operational overhead, including running dedicated servers with email-delivery software and optimizing email-send practices for each Internet Service Provider. Netflix needed an email solution that was flexible, affordable, highly scalable, and that had global reach. Learn how Netflix uses Amazon SES to overcome these challenges and the benefits the company realized by using the service.

How Netflix uses Amazon SES

Netflix began by creating pools of dedicated IP addresses. Each of these pools was dedicated to sending a particular type of email. For example, transactional messages sent to existing customers (which carry a very low risk of being reported as unsolicited email) were sent from one pool of IP addresses, while marketing messages sent to potential or former customers (which carry a higher risk of being reported) were sent from another. By creating these dedicated IP pools, Netflix was able to isolate the reputations of different pools of IP addresses, thereby maximizing the delivery of its most critical communications.

Netflix then started routing small amounts of outbound email to Amazon SES, in order to help ISPs understand the type and volume of email they would be receiving from Netflix’s dedicated IP addresses. After sending these messages, Netflix then evaluated the impact that sending from Amazon SES had on its bounce and complaint rates, its sender reputation, and its inbox placement rates. Once Netflix was satisfied that these metrics were within acceptable rates, they gradually started sending more and more email through Amazon SES. After repeating this send-and-evaluate process numerous times, Netflix was able to migrate its email sending activities to Amazon SES.

The Benefits

To evaluate the effectiveness of using Amazon SES to deliver its marketing and transactional emails, Netflix worked with a third-party to gauge its inbox placement rates and sender reputation scores. The results of these analyses showed inbox placement rates exceeding 99%, and a reputation score of 97/100. “We felt very good given these rates and scores,” said Chawla. Delighted by these results, Netflix was able to shut down its in-house email solution and migrate 100% of its email sending activities to Amazon SES.

Before we migrated to Amazon Simple Email Service, Netflix had to maintain an in-house solution for sending emails. This in-house solution carried its own operational overheads, including running dedicated servers with email delivery software and optimizing email sending practices for each Internet Service Provider. We evaluated several email delivery solutions and decided on Amazon SES because it is flexible, affordable, highly scalable, has global reach, and promises excellent deliverability.”

ACCORDING TO,

Devika Chowla
Director, Messaging & Contact Engineering, Netflix

Netflix Uses Close to 1,000 Amazon Kinesis Shards in Parallel to Process Billions of Traffic Flows

2017

Netflix’s Amazon Kinesis Streams-based solution has proven to be highly scalable, each day processing billions of traffic flows. Typically, about 1,000 Amazon Kinesis shards work in parallel to process the data stream. “Amazon Kinesis Streams processes multiple terabytes of log data each day, yet events show up in our analytics in seconds,” says John Bennett, senior software engineer at Netflix. “We can discover and respond to issues in real time, ensuring high availability and a great customer experience.”

Centralizing Flow Logs Using Amazon Kinesis Data Streams

From the outset, AWS enabled Netflix to experiment with different approaches to analyzing its network data. “Early in the design process, the flexibility to try different ways of processing the data was important,” says Bennett. “We experimented with multiple designs and used many AWS products to get here.”

The solution Netflix ultimately deployed — known internally as Dredge — centralizes flow logs using Amazon Kinesis Data Streams. The application reads the data from Amazon Kinesis Data Streams in real time and enriches IP addresses with application metadata to provide a full picture of the networking environment. “Usually, we would put the data into a database, which would build an index to enable faster querying,” says Bennett. “Dredge joins the flow logs with application metadata as it streams and indexes it without using a database, which eliminates a lot of the complexity.”

The enriched data lands in an open-source analytics application called Druid. Netflix uses the OLAP querying functionality of Druid to quickly slice data into regions, availability zones, and time windows to visualize it and gain insight into how the network is behaving and performing.

AWS was the logical choice for Dredge in part because the data was already resident in the AWS Cloud. “It would have been daunting to publish, stream, and consume that much information from an external system such as Kafka,” says Bennett. “It took just a few API calls to centralize multiple terabytes of flow logs into Amazon Kinesis Data Streams. Now we can focus on getting insights from the data rather than simply getting access to it.”

The scalability of Amazon Kinesis Data Streams was a good fit for the Dredge application because of the cyclical and elastic nature of network usage at Netflix. “When it comes to our networking data, it’s more cost efficient to be able to scale up and down, which is not as easy to do with alternatives to Amazon Kinesis Data Streams,” says Bennett.

Improving Customer Experience with Real-Time Network Monitoring

Netflix’s Amazon Kinesis Data Streams-based solution has proven to be highly scalable, each day processing billions of traffic flows. Typically, about 1,000 Amazon Kinesis shards work in parallel to process the data stream. “Amazon Kinesis Data Streams processes multiple terabytes of log data each day, yet events show up in our analytics in seconds,” says Bennett. “We can discover and respond to issues in real time, ensuring high availability and a great customer experience.”

Netflix is now able to identify new ways to optimize its applications, whether that means moving an application from one region to another or changing to a more appropriate network protocol for a specific type of traffic. “Our solution built on Amazon Kinesis enables us to identify ways to increase efficiency, reduce costs, and improve resiliency for the best customer experience,” says Bennett.

Although a streaming data solution is not new to the IT industry, it is an innovation in the networking space. “Netflix is heavily invested in AWS in part because it abstracts the underlying network, so we don’t have to deal with switches and routers,” says Bennett. “We’re monitoring, analyzing, and optimizing at a higher level of the stack — in ways we would never even consider if we were running our own data centers.”

Netflix Realizes Multi-Region Resiliency Using Amazon Route 53

What happens when you need to move 89 million viewers to a different AWS region? Netflix’s infrastructure, built on AWS, makes it possible to be extremely resilient, even when the company is running services in many AWS Regions simultaneously. In this episode of This is My Architecture, Coburn Watson, director of performance and reliability engineering at Netflix, walks through the company’s DNS architecture — built on Amazon Route 53 and augmented with Netflix’s Zuul — that allows the team to evacuate an entire region in less than 40 minutes.

Benefits of 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

AWS Provides Support for many more companies like:-

THANKS FOR READING……

--

--