4 ヒストリとトレンド

概要

ヒストリとトレンドは、Zabbixで収集したデータを保存する2つの方法です。

ヒストリは収集したすべての値を保持しますが、トレンドは1時間ごとの平均情報を保持するため、リソースの消費が少なくなります。

履歴の保持

履歴を何日間保持するかを設定できます:

それより古いデータはハウスキーパーによって削除されます。

一般的な強い推奨事項としては、履歴はできるだけ短い日数に設定し、過去の値でデータベースを過負荷にしないことです。

長期間の履歴を保持する代わりに、トレンドデータを長期間保持することができます。 たとえば、履歴は14日間、トレンドは5年間保持することができます。

履歴データとトレンドデータでどれくらいのスペースが必要かは、データベースサイズのページを参照してください。

履歴を短く保持しても、グラフでは古いデータを確認できます。グラフは古いデータの表示にトレンド値を使用します。

履歴を「0」に設定すると、アイテムは従属アイテムとインベントリのみを更新します。 トリガーの評価は履歴データのみに基づいているため、トリガー関数は評価されません。

履歴を保持する別の方法として、ロード可能モジュールの履歴エクスポート機能の利用を検討してください。

トレンドの保持

トレンドは、数値データ型について、毎時ごとに最小値、最大値、平均値、値の合計数を保存する、組み込みの履歴データ削減メカニズムです。

トレンドを何日間保持するかは、以下で設定できます。

  • アイテムのプロパティフォーム
  • アイテムの一括更新時
  • ハウスキーパータスクの設定時

トレンドは通常、履歴よりもはるかに長期間保持できます。 古いデータはハウスキーパーによって削除されます。

Zabbixサーバーは、データが流入するたびに、トレンドキャッシュにトレンドデータをランタイムで蓄積します。 サーバーは、以下の状況で、各アイテムの前の時間のトレンドをデータベース(Webインターフェースが参照できる場所)にフラッシュします。

  • サーバーがアイテムの現在の時間の最初の値を受信したとき
  • 現在の時間の残りが5分以下で、まだアイテムの現在の時間の値がない場合
  • サーバーが停止したとき

グラフでトレンドを見るには、(アイテムが頻繁に更新される場合は)少なくとも次の時間の始まりまで、(アイテムがまれに更新される場合は)最大で次の時間の終わりまで、つまり最大2時間待つ必要があります。

サーバーがトレンドキャッシュをフラッシュし、その時間のトレンドがすでにデータベースに存在する場合(たとえば、サーバーが時間の途中で再起動された場合)、サーバーは単純な挿入の代わりに更新ステートメントを使用する必要があります。 したがって、大規模な環境では、トレンドデータの重複を避けるために、1時間の終わりにサーバーを停止し、次の時間の始まりに起動することが望ましいです。

履歴テーブルは、トレンド生成には一切関与しません。

トレンドを「0」に設定すると、Zabbixサーバーはトレンドを計算も保存もしません。

トレンドは、元の値と同じデータ型で計算および保存されます。 その結果、符号なしデータ型値の平均値計算は丸められ、値の間隔が小さいほど結果の精度が低くなります。 たとえば、アイテムの値が0と1の場合、平均値は0.5ではなく0になります。

また、サーバーの再起動により、現在の時間の符号なしデータ型の平均値計算の精度が失われる場合があります。