17章安価で十分な精度にするためのサンプリング戦略
前の章では、大量のオブザーバビリティデータを効率的に取得して保存するために、データストアをどのように構成する必要があるかを議論しました。 この章では、保存すべきオブザーバビリティデータの量を減らすためのテクニックについて見ていきます。 十分な規模になると、すべてのイベントを保持して処理するために必要なリソースは膨大になり、現実的ではなくなります。 イベントのサンプリングは、リソースの消費とデータの再現性のトレードオフを軽減できます。
本章では、なぜサンプリングが(たとえ小規模でも)有用なのかを説明し、 データのサンプリングに通常使用されるさまざまな戦略を紹介し、 これらの戦略間のトレードオフについて議論していきます。 コードベースの例を用いて、これらの戦略がどのように実装されるかを説明し、これまでの例をベースにした概念を徐々に導入していきます。 本章ではまず、単一のイベントで適用できる単純なサンプリング手法から始めて、サンプリングしたデータの統計的表現を用いる際の概念を紹介します。 次に、より複雑なサンプリング戦略の例として、 関連する一連のイベント(トレーススパン)に適用し、サンプリング後にデータを再構築するために必要な情報を伝播させるサンプリングの例を作成します。
17.1 データ収集の精度を上げるためのサンプリング
一定の規模を超えると、システムが生成するすべてのログエントリ、すべてのイベント、すべてのトレースを収集、処理し、保存するためのコストは、その利点を劇的に上回ります。 大規模といえるようになると、本番環境と同じ規模のオブザーバビリティのインフラストラクチャを運用することは、単純に現実的ではなくなります。 ...
Get オブザーバビリティ・エンジニアリング now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.