Представляем уровень абстракци... Заметка

Представляем уровень абстракции данных временных рядов Netflix

Netflix разработала TimeSeries Abstraction для эффективного хранения и запроса больших объемов временных данных событий с низкими задержками в несколько миллисекунд. Эта система предназначена для обработки высокопроизводительных записей, эффективного запроса в больших наборах данных, глобальных чтений и записей, настраиваемой конфигурации и экономической эффективности. TimeSeries Abstraction построена на основе основных принципов проектирования, включая разделение данных, гибкое хранение, настраиваемость, масштабируемость и шардированную инфраструктуру.Модель данных состоит из элементов событий, событий, идентификаторов временных рядов и пространств имен. Элементы событий представляют собой пары ключ-значение, которые хранят данные для конкретного события, в то время как события представляют собой структурированные коллекции одного или нескольких элементов событий. Идентификаторы временных рядов представляют собой коллекции событий за период хранения набора данных, а пространства имен представляют собой коллекции идентификаторов временных рядов и данных событий.TimeSeries Abstraction предоставляет API для взаимодействия с данными событий, включая WriteEventRecordsSync, WriteEventRecords, ReadEventRecords, SearchEventRecords и AggregateEventRecords. Слой хранения состоит из основного хранилища данных и необязательного индексного хранилища данных, с Apache Cassandra и Elasticsearch в качестве предпочтительных вариантов для хранения долговременных данных и индексации соответственно.Основное хранилище данных использует временную схему разделения для разделения данных на управляемые фрагменты на основе временных интервалов, что позволяет эффективно запрашивать конкретные временные диапазоны и оптимизировать производительность хранения и запросов. Данные дополнительно разделены на временные корзины и корзины событий для эффективного сканирования диапазонов и управления высокопроизводительными операциями записи.TimeSeries Abstraction предназначена для решения проблем хранения и запроса временных данных событий в масштабе, включая высокую производительность, эффективный запрос, глобальные чтения и записи, настраиваемую конфигурацию и экономическую эффективность. Используя уникальную модель данных событий и масштабируемый слой хранения, TimeSeries Abstraction предоставляет универсальное и экономически эффективное решение для управления временными данными в Netflix.