Build & maintain complex distributed systems
October 1–2, 2017: Training
October 2–4, 2017: Tutorials & Conference
New York, NY

Event sourcing on a global scale: Netflix downloads

Joseph Breuer (Netflix), Robert Reta (Netflix)
11:35am12:15pm Tuesday, October 3, 2017
Distributed Data & Databases
Location: Regent
Average rating: *****
(5.00, 1 rating)

Who is this presentation for?

  • Software engineers, systems engineers, and solutions architects

Prerequisite knowledge

  • Familiarity with traditional relational persistence solutions, domain-driven design concepts, NoSQL design patterns, and solutions for managing concurrency and consistency

What you'll learn

  • Understand how Netflix leverages event sourcing, data snapshots, and data serialization
  • Explore strategies to address consistency, latency, and performance optimization

Description

The Netflix download feature allows users to download content for offline playback. Implementing this feature required a new persistence architecture to maintain the state of user devices and content licenses, as traditional solutions would not meet the demands of a globally distributed and scaled service. Joseph Breuer and Robert Reta explore the technical decisions behind the choice of a Cassandra event sourcing data store.

Joseph and Robert outline the technical details of how Netflix leveraged an event sourcing pattern to maintain state across a highly scalable distributed system. But no pattern is perfect; Joseph and Robert dive into some of the challenges encountered with consistency, latency, and serialization and their solutions and explore the need for and limitations of data snapshots. They conclude by offering a glimpse of Netflix’s future plans, including performance optimizations and data resiliency strategies.

Photo of Joseph  Breuer

Joseph Breuer

Netflix

Joseph Breuer is a senior software engineer on Netflix’s playback licensing team.

Photo of Robert Reta

Robert Reta

Netflix

Robert Reta is a senior software engineer on Netflix’s playback licensing team.