BLOG | BÜRO DES CTO

Apache Arrow und OpenTelemetry: Wie Open Source die Beobachtbarkeit fördert

Lori MacVittie Miniaturbild
Lori MacVittie
Veröffentlicht am 19. April 2023

Es gibt fünfzehn Millionen Statistiken darüber, wie weit Open-Source-Software in Unternehmen aller Branchen verbreitet ist. Apps bestehen zu über 80 % aus Open-Source-Komponenten und das Internet läuft grundsätzlich auf der Open-Source-Software NGINX .

Es gibt aber auch ebenso viele offene Standards. Mit einem Open-Source-Community-Ansatz entwickelte und verfeinerte Standards, die unglaubliche Ökosysteme unterstützender Produkte, Projekte und Infrastrukturen hervorbringen.

OpenTelemetry ist eine dieser Bemühungen und hat sich zum Standard für die Generierung, Aufnahme und Verarbeitung von Betriebsdaten (auch Telemetrie genannt) entwickelt. Fast ein Drittel (32 %) der Teilnehmer am Observability Innovation Report 2023 geben an, dass „OpenTelemetry-Unterstützung erforderlich ist, und 50 % sagen, dass sie in Produkten der Anbieter sehr wichtig ist. Etwas mehr als ein Drittel (36 %) der Befragten nutzt OpenTelemetry in ihrer Organisation.“

Die Standardisierung der Telemetrie ist von entscheidender Bedeutung, da die Beobachtbarkeit auf Datenpunkten aus dem gesamten IT-Stack basiert. Dazu zählen Netzwerkmetriken, Serverprotokolle und Traces, die alle aus völlig unterschiedlichen Arten von Infrastrukturen und Systemen stammen. Es gibt keine einzige Quelle der Wahrheit, da selbst eine einfache Application einfach zu viele bewegliche Teile enthält, um sicherzustellen, dass Sie alle Daten erfassen können, die Sie zum Beobachten des Status der App zu einem bestimmten Zeitpunkt benötigen. Durch die Standardisierung der Generierung von Telemetriedaten können digitale Signale normalisiert und sichergestellt werden, dass bei der Analyse alle relevanten Datenpunkte genutzt werden können, um präzise und umsetzbare Erkenntnisse zu liefern.

Aber selbst die Standardisierung der Telemetrie löst nicht alle Herausforderungen, die mit dem Erreichen des heiligen Grals der Full-Stack-Beobachtbarkeit verbunden sind.

Eines der größten und schwierigsten Probleme beim Umgang mit Betriebsdaten ist deren Menge. Die digitalen Signale, auf die sich Unternehmen verlassen, um über potenzielle Leistungsprobleme oder Angriffsversuche auf dem Laufenden zu bleiben, werden schneller und heftiger generiert als Daten jeder anderen Art. Wir wissen dies aus eigener Erfahrung, da wir bei F5 OpenTelemetry als Standard für unser gesamtes Portfolio übernommen haben. Aufgrund der Art und Rolle unserer Produkte, beispielsweise BIG-IP und NGINX, bei der Bereitstellung und Sicherung von Applications und digitalen Diensten fallen aus unterschiedlichen Gründen erhebliche Mengen an Daten, beispielsweise Metriken und Protokollen, an. Der Transport und die Verarbeitung dieser Daten machen einen erheblichen Teil der mit Telemetrie-Pipelines verbundenen Kosten aus.

Um diese Herausforderung zu bewältigen, engagierte sich der renommierte Ingenieur Laurent Quérel bei Apache Arrow und begann mit der Zusammenarbeit mit dem OpenTelemetry-Projekt, um dessen Effizienz bei hohen Telemetrievolumina zu steigern.

Unsere Benchmark-Ergebnisse zeigen, dass Apache Arrow erhebliche Vorteile beim Transport und der Verarbeitung von Telemetriedaten bietet, insbesondere wenn diese in Stapel mit mehreren Hundert oder mehr Einheiten gruppiert werden können. Die spaltenförmige Organisation der Daten verbessert die Komprimierbarkeit und dieses Speicherlayout verbessert die Verarbeitungsgeschwindigkeit erheblich, indem die Verwendung verschiedener Cache-Ebenen und SIMD-Anweisungen optimiert wird. Darüber hinaus stellt das Arrow-Ökosystem eine hervorragende Ergänzung zu OpenTelemetry dar und verbessert die Integration mit Abfrage-Engines, Stream-Processing-Pipelines und speziellen Analysedateiformaten.

Mehr über Apache Arrow und Laurents Arbeit können Sie im ersten von zwei Artikeln über unsere Erfahrungen mit der Technologie auf der Apache Arrow-Site lesen.