Статистика редких событий
Как новые методы экстремальной статистики улучшают SLO и алертинг.
Алерт на p99 латентности и статичный порог CPU в HPA роднит одна и та же скрытая ошибка: оба метода судят о редком, экстремальном поведении системы, используя статистику, придуманную для описания обычного, среднего поведения. Персентиль вычисляется по всему распределению целиком и ничего не знает о том, как именно устроен самый дальний, самый редкий хвост этого распределения — а ведь именно хвост, а не середина, определяет, произойдёт ли инцидент. Раздел статистики, изначально придуманный для инженеров, проектировавших дамбы против наводнения, которое случается раз в сто лет, предлагает математически честный способ анализировать именно эту часть данных — и он всё активнее просачивается в инструменты мониторинга и планирования мощности, хотя до сих пор остаётся почти неизвестным большинству инженеров эксплуатации. Почему статичный порог одинаково плох и для HPA, и для алертинга? Стоит явно сформулировать проблему, общую для порогового автоскейлинга и порогового алертинга: оба метода требуют, чтобы инженер один раз выбрал число — восемьдесят процентов загрузки CPU, пятьсот миллисекунд латентности — и дальше система реагирует на пересечение этого числа так, будто оно имеет какое-то фундаментальное значение. Показательный, часто цитируемый в практике мониторинга пример: латентность диска медленно и незаметно растёт на несколько миллисекунд в час, каждое отдельное измерение остаётся ниже порога алерта, и через несколько часов такого незаметного дрейфа сервис уже фактически недоступен — при этом ни один статичный порог формально не был нарушен ни разу. Проблема здесь не в том, что порог выбран неправильно, — проблема в том, что сам подход «одно фиксированное число для всех ситуаций» структурно не способен отличить нормальный шум от медленно нарастающего, по-настоящему опасного отклонения. Математическая идея, которая делает хвост распределения отдельным объектом изучения. Экстремальная статистика решает эту проблему не более тонкой настройкой порога, а принципиально другим вопросом: вместо того чтобы описывать распределение метрики целиком, она отдельно, специализированно описывает только его хвост — поведение значений выше некоторого достаточно высокого порога. В основе лежит теорема Пикандса — Балкемы — де Хаана, результат, который стоит понимать как аналог центральной предельной теоремы, только применённый не к средним значениям, а к экстремумам: для очень широкого класса исходных распределений превышения над достаточно высоким порогом асимптотически сходятся к одному и тому же семейству — обобщённому распределению Парето, — вне зависимости от того, как выглядело исходное распределение целиком. Это утверждение почти универсальное: не нужно точно знать, по какому закону распределена латентность вашего сервиса в среднем, чтобы математически обоснованно моделировать именно её самые редкие, экстремальные значения отдельно, своей собственной, куда более точной для этой конкретной задачи моделью. Алгоритм, который уже применяется к потокам метрик, а не только к погоде. Стоит показать, что это не абстрактная теория, интересная только климатологам, проектирующим береговые дамбы, — на основе того же математического аппарата построен алгоритм, специально разработанный для потоковых, непрерывно обновляющихся данных именно такого типа, какие генерирует инфраструктура. Метод потокового анализа превышений над порогом сначала откалибровывает начальный порог и параметры распределения превышений на исторических данных, а затем непрерывно обрабатывает новые точки, классифицируя каждую на три категории: нормальное значение, «пик» — значение выше начального, но ниже итогового адаптивного порога, которое ещё не считается аномалией, но участвует в дальнейшей калибровке, — и собственно аномалия, значение, превысившее адаптивный порог, вычисленный статистически из модели хвоста, а не выбранный вручную инженером.
· 19.07
Персентили и статичные пороги описывают типичное поведение системы, но именно нетипичное, редкое поведение решает, случится ли инцидент, — и статистика, изначально разработанная для оценки экстремальных явлений в природе, даёт математически честный способ моделировать именно эту, самую важную и самую недооценённую часть данных отдельно от всего остального распределения. Потоковые алгоритмы на основе этого подхода уже работают в реальных системах обнаружения аномалий, а понятие уровня возврата даёт capacity planning куда более строгое основание, чем интуитивный запас прочности, выбранный на глаз. Но, как и любой статистический метод, экстраполирующий поведение в область, где данных мало по самой природе задачи, — редкие события потому и редки, что их мало, — эти оценки требуют явного понимания собственных границ, а не слепого доверия числу на выходе модели просто потому, что оно получено математически строгим методом.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён