# 3 История и динамика изменений

#### Обзор

История и динамика изменения - два пути хранения в Zabbix собранных
данных.

В то время как история хранит каждое собранное значение, динамика
изменений хранит усредненную информацию за каждый час, что,
следовательно, менее ресурсоемко.

#### Хранение истории

Вы можете указать период хранения, того как много дней будет храниться
история:

-   в [диалоге](/ru/manual/config/items/item) свойств элемента данных
-   при массовом обновлении элементов данных
-   при
    [настройке](/ru/manual/web_interface/frontend_sections/administration/general#очистка_истории)
    задач очистки истории

Любые более старые данные будут удалены с помощью автоматической очистки
базы данных (Housekeeper).

Самый большой совет - хранить историю как можно меньшее количество дней
и таким образом не перегружать базу данных большим количеством значений
истории.

Вместо долговременного хранения истории, вы можете хранить больше данных
динамики изменений. Например, вы можете хранить историю 14 дней и
динамику изменений 5 лет.

Вы можете прикинуть сколько потребуется места для истории в сравнении с
динамикой изменений, используя [страницу оценки размера базы
данных](/ru/manual/installation/requirements#размер_базы_данных).

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

::: noteimportant
Если период хранения выбран значением '0', элемент
данных будет обновлять только зависимые элементы данных и поля
инвентаря. Функции триггеров не будут вычисляться, так как вычисление
триггера основывается только на данных истории.
:::

::: notetip
В качестве альтернативного подхода к хранению истории
обратитесь к функционалу [экспорта
истории](ru/manual/config/items/loadablemodules#предоставление_обратного_вызова_экспорту_истории)
в подгружаемых модулях.
:::

#### Хранение динамики изменений

Динамика изменений является встроенным механизмом обработки данных
истории, где для каждого часа хранятся значения минимума, максимума и
усредненное значения, а также общее количество значений за этот час.

Вы можете указать период хранения, того как много дней будет храниться
динамика изменений:

-   в [диалоге](/ru/manual/config/items/item) свойств элемента данных
-   при массовом обновлении элементов данных
-   при настройке задач очистки истории

Обычно динамика изменений может храниться намного дольше чем история.
Любые более старые данные будут удалены с помощью автоматической очистки
базы данных (Housekeeper).

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

-   начался новый час и сервер получил новое значение по этому элементу
    данных;
-   новый час начнётся менее чем за 5 минут до конца предыдущего (новые
    значения отсутствуют)
-   сервер останавливается

Для просмотра динамики изменений на графике вам нужно подождать по
крайней мере до начала следующего часа (если элемент данных обновляется
часто) и почти до конца следующего часа (если элемент данных обновляется
реже), что означает максимум 2 часа.

Когда сервер сбрасывает кэш динамики изменений и в базе данных уже
имеются данные динамики изменений за этот час (например, сервер был
перезапущен в середине часа), серверу потребуется использовать запросы
обновления вместо простых запросов вставки. Поэтому на больших
инсталляциях, если требуется перезапуск, лучше всего останавливать
сервер в конце одного часа и запускать сервер в начале следующего часа,
чтобы избежать наложения данных динамики изменения.

Таблицы истории никоим образом не участвуют в генерации динамики
изменений.

::: noteimportant
Если период хранения выбран значением '0', Zabbix
сервер вообще не будет считать и хранить динамику
изменений.
:::

::: noteclassic
Динамика изменений вычисляется и сохраняется с
использованием того же типа данных, как и оригинальные значения. В
результате среднее значение вычисления значений целочисленных типов
данных округляется и чем меньше интервал значений, тем меньше будет
точность результата. Например, если элемент данных имеет значения 0 и 1,
средним значением будет 0, а не 0.5.

Перезапуск сервера также может привести к потере точности вычисления
усредненных значений у целочисленных типов данных за текущий
час.
:::
