BLOG | OFFICE OF THE CTO

Apache ArrowとOpenTelemetry:オープン ソースが可観測性を実現

Lori MacVittie サムネール
Lori MacVittie
Published April 19, 2023

あらゆる業界の企業にオープン ソース ソフトウェアがどれだけ浸透しているかを示す統計調査は15件もあります。アプリケーションは、80%以上がオープン ソース コンポーネントで構成されており、インターネットは基本的にオープン ソース ソフトウェアであるNGINX上で実行されています

一方、オープン スタンダードも同じくらい多く存在します。これらのスタンダードは、オープン ソースのコミュニティ アプローチを使用して開発され、見直されてきましたが、このアプローチは製品、プロジェクト、インフラストラクチャを支える優れたエコシステムを生み出します。

OpenTelemetryはこうした取り組みの1つであり、運用データ(テレメトリ)の生成、取得、処理のためのスタンダードとなっています。2023年版可観測性イノベーション レポートでは、回答者のほぼ3分の1(32%)は、OpenTelemetryサポートが必須であると回答し、50%はベンダー製品において非常に重要であると回答しています。また、回答者の3分の1強(36%)は、組織でOpenTelemetryを利用していると回答しています。

可観測性はITスタック全体からのデータ ポイントによって決まるため、テレメトリの標準化は非常に重要です。それはネットワーク指標、サーバー ログ、トレースを意味し、これらはすべて、多種多様なインフラストラクチャとシステムから得られるものです。信頼できる唯一の情報源など存在しません。その理由は、シンプルなアプリケーションですら変動要素が多すぎて、ある時点のアプリケーションの状態を観測するために必要なすべてのデータを収集できないからです。デジタル信号を正規化し、正確で実用的な洞察を得るために適切なデータ ポイントをすべて分析で利用できるようにする1つの方法が、テレメトリの生成方法を標準化することです。

しかし、テレメトリを標準化しても、フルスタックの可観測性という究極の目標の前に立ちはだかるすべての課題が解決されるわけではありません。

運用データを扱う際の困難で大きな問題の1つがその量です。組織がパフォーマンスの潜在的な問題や攻撃の試行を常に把握しておくために利用しているデジタル信号は、他のどのようなデータよりも急速に、凄まじい勢いで生成されています。F5はOpenTelemetryを当社のポートフォリオの標準として採用しているため、このことを身近に、個人的なレベルで実感しています。BIG-IP、NGINXなどの当社の製品がアプリケーションとデジタル サービスの提供と保護で示している性質とその役割は、指標、ログなどの膨大なデータがさまざまな理由で生成されていることを意味しています。こうしたデータの転送と処理は、テレメトリ パイプラインがもたらすコストの大部分を占めています。

このような課題を解決するため、Distinguished EngineerのLaurent QuérelはApache Arrowに参加し、大量のテレメトリを処理する際の効率を高めることを目的としたOpenTelemetryプロジェクトに取り組んでいます。

当社のベンチマークの結果は、特にテレメトリ データを数百以上のエンティティのバッチにグループ化できる場合、テレメトリ データの転送と処理にApache Arrowが非常に有効であることを示しています。データの柱状構成が圧縮率を高め、このメモリ レイアウトは、さまざまなキャッシュ レベルやSIMD命令の使用を最適化することで、処理速度を大幅に改善します。さらに、Arrowエコシステムは、OpenTelemetryを適切に補完し、クエリ エンジン、ストリーム処理パイプライン、特殊な分析ファイル形式との統合を強化します。

Apache Arrowの詳細とLaurentの成果は、Apache Arrowサイトにある、このテクノロジで私たちが経験したことについての2つの記事の1つ目でご覧いただけます。