4 Historia i trendy

Przegląd

Historia i trendy to dwa sposoby przechowywania zebranych danych w Zabbix.

Podczas gdy historia przechowuje każdą zebraną wartość, trendy przechowują uśrednione informacje w ujęciu godzinowym i dlatego zużywają mniej zasobów.

Przechowywanie historii

Możesz ustawić, przez ile dni historia będzie przechowywana:

Wszelkie starsze dane zostaną usunięte przez housekeeper.

Ogólne, zdecydowane zalecenie jest takie, aby przechowywać historię przez możliwie najmniejszą liczbę dni i w ten sposób nie przeciążać bazy danych dużą liczbą wartości historycznych.

Zamiast przechowywać długą historię, możesz dłużej przechowywać dane trendów. Na przykład możesz przechowywać historię przez 14 dni, a trendy przez 5 lat.

Dobre wyobrażenie o tym, ile miejsca wymagają dane historii w porównaniu z danymi trendów, można uzyskać, odwołując się do strony dotyczącej rozmiaru bazy danych.

Przy krótszym okresie przechowywania historii nadal będzie można przeglądać starsze dane na wykresach, ponieważ do wyświetlania starszych danych wykresy będą używać wartości trendów.

Jeśli historia jest ustawiona na '0', pozycja będzie aktualizować tylko pozycje zależne i inwentarz. Żadne funkcje wyzwalaczy nie będą obliczane, ponieważ obliczanie wyzwalaczy opiera się wyłącznie na danych historii.

Jako alternatywny sposób zachowania historii rozważ użycie funkcji eksportu historii modułów ładowalnych.

Przechowywanie trendów

Trendy to wbudowany mechanizm redukcji danych historycznych, który przechowuje minimalną, maksymalną, średnią oraz całkowitą liczbę wartości dla każdej godziny dla numerycznych typów danych.

Możesz ustawić, przez ile dni trendy będą przechowywane:

  • we formularzu właściwości pozycji
  • podczas masowej aktualizacji pozycji
  • podczas konfigurowania zadań Housekeepera

Trendy zwykle mogą być przechowywane znacznie dłużej niż historia. Wszelkie starsze dane zostaną usunięte przez housekeeper.

Serwer Zabbix gromadzi dane trendów w czasie działania w pamięci podręcznej trendów, w miarę napływu danych. Serwer zapisuje trendy z poprzedniej godziny każdej pozycji do bazy danych (gdzie frontend może je znaleźć) w następujących sytuacjach:

  • serwer otrzymuje pierwszą wartość pozycji z bieżącej godziny
  • do końca bieżącej godziny pozostało 5 minut lub mniej, a nadal nie ma żadnych wartości pozycji z bieżącej godziny
  • serwer zatrzymuje się

Aby zobaczyć trendy na wykresie, należy poczekać co najmniej do początku następnej godziny (jeśli pozycja jest aktualizowana często) i co najwyżej do końca następnej godziny (jeśli pozycja jest aktualizowana rzadko), czyli maksymalnie 2 godziny.

Gdy serwer zapisuje pamięć podręczną trendów i w bazie danych istnieją już trendy dla tej godziny (na przykład serwer został uruchomiony ponownie w połowie godziny), serwer musi używać instrukcji aktualizacji zamiast prostych instrukcji wstawiania. Dlatego w większych instalacjach, jeśli wymagane jest ponowne uruchomienie, zaleca się zatrzymanie serwera pod koniec jednej godziny i uruchomienie go na początku następnej godziny, aby uniknąć nakładania się danych trendów.

Tabele historii w żaden sposób nie uczestniczą w generowaniu trendów.

Jeśli dla trendów ustawiono wartość „0”, serwer Zabbix w ogóle nie oblicza ani nie przechowuje trendów.

Trendy są obliczane i przechowywane z użyciem tego samego typu danych co oryginalne wartości. W rezultacie obliczenia wartości średniej dla wartości typu unsigned są zaokrąglane, a im mniejszy jest przedział wartości, tym mniej precyzyjny będzie wynik. Na przykład, jeśli pozycja ma wartości 0 i 1, wartość średnia wyniesie 0, a nie 0,5.

Ponadto ponowne uruchomienie serwera może spowodować utratę precyzji obliczeń wartości średniej dla typu unsigned w bieżącej godzinie.