Волна ИИПодписаться
← Назад
Фичи и апдейты

Netflix сократила задержки чтения Cassandra с секунд до миллисекунд динамическим дроблением партиций

08.07.2026 · marktechpost.com ↗

Netflix использует Apache Cassandra для хранения временных рядов событий в своей платформе TimeSeries Abstraction. С ростом данных некоторые партиции становились «широкими» — чтение таких партиций занимало секунды, приводило к тайм-аутам, GC-паузам и высокой нагрузке на CPU. Простое масштабирование кластера было дорогим, поэтому инженеры пошли другим путём.

Они реализовали асинхронное динамическое репартиционирование: специальный детектор на пути чтения через подсчёт байтов и событие Kafka находит разросшиеся партиции, после чего они прозрачно разбиваются на меньшие дочерние партиции. Для маршрутизации используются Bloom-фильтры (время проверки — единицы микросекунд) и кэш метаданных wide_row. Корректность гарантируется контрольными суммами, сохранением исходных партиций, Spark-проверками Data Bridge и теневым сравнением.

Результат: чтение ускорилось с секунд до десятков миллисекунд, хвостовая задержка снизилась до ~200 мс, а партиции размером более 500 МБ остались доступными без перерывов. В статье также описан более простой метод переразбиения временных срезов (Time Slice Re-Partitioning), который помогает при равномерном распределении, но не решает проблему единичных «широких» ID — для этого и нужно динамическое дробление.

Источник: marktechpost.com
← Все новости AI Wave