オブザーバビリティ(可観測性)とは

テクノロジー

可観測性とはシステムの内部状態がその外部出力の知識からどれだけうまく推測できるかの尺度。制御理論では、線形システムの可観測性と可制御性は数学的な双対です。

可観測性の概念は、ハンガリー系アメリカ人のエンジニアであるルドルフE.カルマンによって線形動的システムのために導入されました。出力の測定値からシステムの状態を推定するように設計された動的システムは、状態オブザーバーまたは単にそのシステムのオブザーバーと呼ばれます。

「Observability(オブザーバビリティ/可観測性)」とは

定義として状態空間表現でモデル化された物理システムについて考えてみます。

状態および制御ベクトルの可能なすべての進化について、出力からの情報のみを使用して現在の状態を推定できる場合、システムは観測可能であると言われます(物理的には、これは一般にセンサーによって取得された情報に対応します)。言い換えれば、システムの出力からシステム全体の動作を判断できます。一方、システムが観測できない場合は、出力を測定するだけでは区別できない状態の軌跡があります。

静的システムと一般的な位相空間

可観測性は、定常状態システム(通常、代数方程式と不等式の観点から定義されるシステム)、またはより一般的には、{\ displaystyle \ mathbb {R} ^ {n}}\ mathbb {R} ^ {n}。

可観測性基準が動的システムの場合のカルマンフィルターまたは他のオブザーバーの動作を予測するために使用されるのと同様に、セットの可観測性基準は{\ displaystyle \ mathbb {R} ^ {n}}\ mathbb {R} ^ {n}データ調整およびその他の静的推定量の動作を予測するために使用されます。

非線形の場合、可観測性は、個々の変数について、またグローバルな動作だけでなくローカルな推定量の動作についても特徴付けることができます。

ソフトウェアシステムの可観測性

ソフトウェアシステムでは、可観測性とは、プログラムの実行、モジュールの内部状態、およびコンポーネント間の通信に関するデータを収集する機能です。可観測性を向上させるために、ソフトウェアエンジニアは、さまざまなロギングおよびトレースの手法とツールを使用しています。

可観測性のメリット

システムの複雑さの緩和、最新状態の収集と把握、トラブル発生時の迅速な原因特定、対応を可能にすることができるようになり、企業は優れた顧客体験を提供し続けることに繋がりる。

OpenTelemetryとは

OpenTelemetryは、ツール、API、およびSDKのコレクションです。これを使用して、テレメトリデータ(メトリック、ログ、およびトレース)を計測、生成、収集、およびエクスポートして、ソフトウェアのパフォーマンスと動作の分析に役立てる。

関連付けデータとは

関連付け(かんれんづけ)とは1対1の対応を取ることを指すコンピュータ用語。リンク(link)、紐付け(ひもづけ)とも呼ばれる。IDと個人を対応付ける、データに通し番号をつけるなど、ものと記号を対応付けること。代表的な例は以下の拡張子と実行ファイルとの関連付け。

オペレーティングシステムにおける関連付けとはファイルタイプとそれを開くアプリケーションの対応を取ることをさす。Windowsでは拡張子で、ウェブブラウザではMIMEタイプに基づいてファイルタイプを識別する。Mac OSではMacBinaryでファイルタイプを識別していた。

関連付けによってファイルを開くときにどのソフトで開くのかを逐一選択する必要がなくなることが利点である。

拡張子は同時にセキュリティの問題も生ずる。簡単に言えば異なる拡張子に見えてしまうことであるが、見分けがつきづらいので注意が必要である。拡張子#拡張子が引き起こすセキュリティ上の問題を参照。

プログラマビリティとは

プログラマビリティとは、プログラム言語を使用してネットワークの管理・運用を行うというもの。プログラム可能であるという抽象的な機能。

まとめ

オブザーバビリティ(可観測性)の実現のための3つのポイントとしては「オープンインストゥルメンテーション」、「関連付けデータ」、「プログラマビリティ」が重要であることが分かった。

タイトルとURLをコピーしました