Как прогнозировать заполнение диска и когда этого не стоит делать

Линейной регрессии по занятости диска хватает, чтобы поймать большинство проблем с местом за недели - при условии честности насчёт случаев, где она бессмысленна.

Опубликовано 2026-05-08

Забитый диск - один из немногих отказов, который объявляет о себе за недели и всё равно застаёт людей врасплох. Данные лежат прямо здесь, просто на них никто не смотрит. Поэтому мы проводим по ним прямую и оповещаем по точке пересечения.

Почему линейной регрессии достаточно

Есть соблазн взять что-нибудь посложнее. Не поддавайтесь. Подавляющее большинство кривых заполнения диска скучно линейны: логи копятся с постоянной скоростью, база растёт вместе со стабильной клиентской базой, бэкапы приезжают по расписанию. Метод наименьших квадратов по паре недель отсчётов предсказывает дату пересечения достаточно точно, чтобы действовать, и - что важнее - он объясним. Когда система говорит *этот том заполнится за 11 дней*, вы видите прямую.

Сложные модели ошибаются иначе: они правы чаще и ошибаются так, что в три часа ночи это никто не отладит. Для сигнала, вся работа которого - дать вам две недели форы, это плохой размен.

Когда прогноз бессмыслен

Знать, когда промолчать, - здесь бо́льшая часть работы. Мы подавляем прогноз, если:

  • наклон отрицательный или нулевой - том не заполняется, и дата не является информацией;
  • качество приближения низкое, потому что ряд пилообразный, а не трендовый: у тома, который заполняется и раз в неделю обрезается ротацией логов, даты пересечения нет;
  • предсказанная дата дальше окна, по которому строилось приближение, - там экстраполяция говорит больше о приближении, чем о диске;
  • том крошечный, и одна установка пакета сдвигает прямую на недели.

Для памяти работает та же схема

Прогноз по памяти использует то же приближение с одной разницей в трактовке: устойчивый рост занятой памяти, который никогда не сбрасывается, - это обычно утечка, а не рост, и полезное оповещение здесь про сам факт наличия наклона, а не про дату достижения потолка.

Оба прогноза считаются на панели по сохранённым отсчётам, поэтому наблюдаемому хосту не стоят ничего.