DevLog

엔지니어링 블로그를 한 곳에서 탐색하고, 최근 발행 흐름을 빠르게 파악할 수 있는 서비스 입니다.

Quick Links

  • Latest Feed
  • Engineering Directory

Support

  • 소개
  • 개인정보처리방침

Contribute

  • 원하는 블로그 추가 (준비 중)
  • Feedback

© 2026 DevLog Inc. All rights reserved.

본 사이트는 공개 RSS 피드를 통해 콘텐츠를 수집하며, 모든 콘텐츠의 저작권은 원저작자에게 있습니다.

Back to Feed
KOEN
Read Original

Contents

Continue Reading

  • More from Netflix
  • Related reads#Cassandra
#Backend

카산드라의 와이드 파티션을 동적으로 분할하여 시계열 워크로드 최적화하기

카산드라의 와이드 파티션을 동적으로 분할하여 시계열 워크로드 최적화하기
01

Summary

넷플릭스는 어떻게 '초' 단위 지연 시간을 '밀리초'로 줄였나: 카산드라 와이드 파티션 정복기

데이터 급증과 파티션 쏠림 현상을 해결하기 위한 넷플릭스 엔지니어링 팀의 동적 파티셔닝 전략 대공개

수 페타바이트의 데이터를 처리하는 넷플릭스 시계열 서비스에서 카산드라의 고질적인 문제인 와이드 파티션을 기술적으로 해결한 사례입니다. 인프라 증설 대신 워크로드 변화를 실시간으로 감지하고 파티션을 유연하게 쪼개는 스마트한 아키텍처 구축 과정을 상세히 설명합니다.

  • 01카산드라 가상 테이블을 활용한 실시간 파티션 히스토그램 모니터링 및 분석
  • 02읽기 경로에서 와이드 파티션을 감지해 Kafka로 이벤트를 발행하는 비동기 감지 파이프라인
  • 03블룸 필터를 활용하여 오버헤드 없이 분할된 파티션으로 쿼리를 투명하게 리다이렉션
  • 04체크섬 검증과 Spark 기반 데이터 검증을 통한 무결성 보장 전략
  • 05가용성을 해치지 않기 위해 원본 데이터를 유지하는 안전한 폴백 메커니즘

+RECOMMENDATION

카산드라를 사용하면서 데이터 스큐(Skew)나 성능 저하를 겪고 있는 백엔드 개발자 및 데이터 엔지니어에게 추천합니다. 대규모 분산 환경에서 가용성을 유지하며 스토리지 구조를 최적화하는 실무적인 패턴을 배울 수 있습니다.

The Problem

넷플릭스의 시계열 데이터 서비스에서 특정 ID에 데이터가 과도하게 쏠리는 '와이드 파티션' 현상이 발생하여, 읽기 지연 시간이 초 단위로 급증하고 시스템 불안정을 초래하는 문제가 발생했습니다.

The Solution

기존의 정적 프로비저닝 한계를 극복하기 위해 테이블 수준의 재파티셔닝과, 읽기 경로에서 와이드 파티션을 감지하여 비동기적으로 데이터를 분할하고 블룸 필터로 쿼리를 리다이렉션하는 ID 단위 동적 분할 시스템을 도입했습니다.

The Result

와이드 파티션의 읽기 지연 시간이 초 단위에서 수십 밀리초(ms) 수준으로 대폭 감소했으며, 스레드 큐잉과 타임아웃이 해결되어 전반적인 클러스터 안정성이 향상되었습니다.

Trade-off

안전한 폴백을 위해 원본 데이터를 삭제하지 않으므로 추가적인 저장 공간이 필요하며, 비동기 파이프라인과 메타데이터 캐시 관리로 인해 전체적인 아키텍처 복잡성이 증가했습니다.

03

Key Concepts

Concept · 01

Wide Partitions (와이드 파티션)

카산드라에서 단일 파티션 키 아래에 너무 많은 데이터가 쌓여 읽기/쓰기 성능이 저하되는 현상입니다.

  • 넷플릭스 시계열 워크로드에서 초 단위의 읽기 지연과 타임아웃을 유발하는 주요 원인으로 지목되었습니다.
Concept · 02

Bloom Filter (블룸 필터)

특정 원소가 집합에 포함되어 있는지 확인하는 데 사용되는 공간 효율적인 확률적 자료구조입니다.

  • 분할된 파티션 키 정보를 메모리에 상주시켜 읽기 요청 시 분할 여부를 마이크로초 단위로 빠르게 판별하는 데 사용되었습니다.
Concept · 03

Monte Carlo Simulation (몬테카를로 시뮬레이션)

난수를 이용해 함수의 값을 확률적으로 계산하거나 시스템의 거동을 예측하는 방법입니다.

  • 넷플릭스의 초기 프로비저닝 단계에서 워크로드 특성을 분석하여 최적의 인프라와 파티션 설정을 결정하는 데 활용됩니다.
Continue reading · same source

NetflixMore from Netflix

View all posts from Netflix
  • MAPS: 넷플릭스의 대규모 멀티모달 에셋 개인화

    CLIPMediaFMRecommendation Systems
    1일 전
  • 두 개의 플링크 오토스케일러 이야기

    Apache FlinkAutoscalingStream Processing
    1주 전
  • 넷플릭스가 실시간 분산 그래프를 구축한 방법과 이유: 3부 — gRPC 실행 API를 통한 그래프 쿼리

    gRPCGraph DatabaseDistributed Systems
    3주 전
  • 분석을 위한 디바이스 사양 모델링

    Data ModelingFeature ManagementAnalytics
    4주 전
  • GenRec: 넷플릭스의 LLM 네이티브 추천 시스템을 향하여

    LLMRecommendation SystemContext Engineering
    1개월 전

Related reads#Cassandra

Explore #Cassandra
Netflix

넷플릭스의 카산드라 데이터 이동 아키텍처 진화 과정

#Cassandra2개월 전
Netflix·Multimodal Search

비디오 검색을 위한 멀티모달 인텔리전스 구축

#Cassandra4개월 전
라인·TSDB

Scaling to Infinity: 한계를 넘어서는 LY Corporation의 관측 가능성 플랫폼 진화기

#Cassandra6개월 전

Source

Netflix
Netflix
Engineering Blog

Published · June 3, 2026

Topics

CassandraTime SeriesWide PartitionsNetflixData Engineering