Asayomu Tech
注目★★★★★Lobsters

VictoriaLogs、ログをカラムナーレイアウトで圧縮・高速クエリを実現する仕組み

30秒で把握

  • 1VictoriaLogs、CPU シャード単位でログをメモリバッファに蓄積し秒単位で検索可能なパートに変換
  • 2日付単位パーティション構造で保持期間削除とタイムレンジクエリが低コスト・小パートの順次マージで GiB/秒取り込みを HDD で実現
  • 3stream_fields を低カーディナリティに設定・vl_storage_parts メトリクス監視・-inmemoryDataFlushInterval 設定でディスク I/O と信頼性を制御

要約

VictoriaLogs はログの到着から保存までを 3 段階で処理し、高速クエリと効率的な圧縮を実現する。受け取ったログは内部形式に正規化され、CPU コア単位でシャード化されたバッファに蓄積され、約 1 秒ごとにメモリ内パート (in-memory part) にフラッシュされる。ログは日付単位のパーティションに分割され、保持期間による削除とクエリの高速化が容易になる。

あなたへの影響

VictoriaLogs を運用する場合、stream_fields を低カーディナリティに設定し、trace_id や user_id は通常フィールドに回すことで圧縮効率が大きく向上します。

推奨:また vl_storage_parts メトリクスでメモリ・ディスク上のパート数を監視し、-inmemoryDataFlushInterval (デフォルト 5 秒) でクラッシュ時のログ損失リスクを制御できます。

詳細を読む → 元記事へ※ 本文は元記事をご確認ください (asayomu は要約のみ提供)

関連する記事

※ 外部記事の権利は原著作者に帰属します。著作権削除要請は copyright@asayomu.jp までご連絡ください(受領確認 24h・実処理 72h 以内)。