Interviews mit Branchenführern

Effiziente Speicherung von OpenTelemetry-Traces in spaltenorientierten Dateien: Erkenntnisse und Best Practices

Interviews mit Branchenführern
Our learnings with OTEL Traces in columnar files

Eine umfassende Betrachtung der Vorteile und Herausforderungen beim Umgang mit OpenTelemetry-Traces in spaltenorientierten Dateiformaten wie Apache Parquet für eine skalierbare und performante Observability-Lösung.

In der modernen IT-Landschaft sind verteilte Systeme allgegenwärtig und mit deren Komplexität wachsen auch die Anforderungen an Überwachung und Fehlersuche. Distributed Tracing hat sich als eine der effektivsten Methoden etabliert, um komplexe Anfragen über verschiedene Dienste hinweg nachzuvollziehen. OpenTelemetry (OTEL) bietet hierzu einen offenen Standard für die Erfassung und Weiterleitung von Telemetriedaten, insbesondere von Traces, die aus sogenannten Spans bestehen. Das effiziente Speichern und Abfragen dieser enormen Mengen an Trace-Daten stellt jedoch Organisationen vor Herausforderungen. Die Erfahrung zeigt, dass spaltenorientierte Speicherformate wie Apache Parquet eine entscheidende Schlüsselrolle bei der Skalierbarkeit und Performance spielen.

Distributed Traces bestehen aus einer Sammlung von Spans, wobei jeder Span ein einzelnes Ereignis oder eine Operation darstellt. Essenziell für jeden Span sind Attribute wie der Dienstname, die Operation (Span-Name), Zeitstempel, Dauer und diverse Schlüssel-Wert-Paare. In großen Systemen können Traces Milliarden von Spans ausmachen, was enorme Datenvolumina verantwortet. Die Speicherung erfolgt daher nicht nur aus Gründen der kurzfristigen Analyse, sondern auch zur Langzeitarchivierung und -durchsuchbarkeit. Die Wahl eines optimalen Speicherformats ist hier maßgeblich.

Im Gegensatz zu herkömmlichen zeilenorientierten Formaten wie JSON oder CSV bietet das spaltenorientierte Parquet-Format eine Reihe von Vorteilen, die speziell für Trace-Daten relevant sind. Parquet speichert jede Spalte separat, was bedeutet, dass Abfragen, die sich nur auf bestimmte Attribute beziehen, deutlich effizienter durchgeführt werden können. Beispielsweise kann eine Suche nach allen Spans eines bestimmten Dienstes gezielt nur die entsprechende Spalte lesen und so I/O-Vorgänge drastisch reduzieren. Diese Fähigkeit, nur die relevanten Daten auszulesen, nennt man häufig predicate pushdown oder column pruning und sie führt zu erheblichen Geschwindigkeitsvorteilen.Eine der grundlegenden Charakteristika von Traces ist ihre Baumstruktur mit einem einzelnen Root-Span, der den Startpunkt einer Transaktion oder Anforderung repräsentiert.

Jeder nachfolgende Span ist über eine Parent-Span-ID mit seinem unmittelbaren Vorgänger verbunden. Dies bildet eine gerichtete azyklische Graphenstruktur ab, die jedoch operationell als Baum betrachtet wird. Zum Speichern in Systemen wie ParseableDB werden solche Baumbäume flach auf Zeilen in Tabellen abgebildet, wobei die Parent-Child-Beziehung durch IDs erhalten bleibt und bei Abfrage oder Visualisierung rekonstruiert werden kann. Ein solcher Ansatz benötigt keinen spezialisierten Graphendatenbank-Ansatz, sondern profitiert von der flexiblen und effizienten Spaltenstruktur.Die Speicherung von Trace-Daten in Parquet bringt allerdings nicht nur Abfragevorteile, sondern auch eine erhebliche Reduktion der Datenmenge durch Kompression.

Trace-Daten sind naturgemäß redundant, da viele Spans sich dieselben Attribute teilen, etwa „service_name“ oder „operation_name“. Spaltenorientierte Speicherung erlaubt es, diese Redundanzen optimal zu komprimieren und so den Speicherverbrauch drastisch zu senken. So zeigt die Praxis, dass eine ursprünglich 1 Terabyte große JSON-Trace-Datei nach Umwandlung in Parquet typischerweise auf rund 130 Gigabyte schrumpft, was einer erheblichen Einsparung entspricht. Diese Komprimierung wirkt sich auch direkt auf die Geschwindigkeit von Abfragen aus, da weniger Daten gelesen werden müssen.Neben klassischen spaltenorientierten Komprimierungsmethoden nutzt Parseable erweiterte Techniken zur Attributsortierung und String-Matching.

Bekannte Felder wie „service.name“, „status.code“ oder „duration_ms“ werden während der Aufnahme in eigene dedizierte Spalten überführt, um schnelle Filterungen zu unterstützen. Dynamische oder seltene Attribute hingegen fasst das System in einer gemeinsamen „other_attributes“-Spalte als flexibles Key-Value-Store zusammen. Dieses Splitting zwischen starren und flexiblen Attributen gewährleistet ein optimales Gleichgewicht zwischen Leistungsfähigkeit und Anpassungsfähigkeit bei der weiteren Analyse.

Ein weiterer großer Vorteil liegt im deutlich reduzierten I/O-Aufwand durch die spaltenbasierte Datenorganisation. In traditionellen Formaten müsste man jedes Datenfragment komplett lesen, um einzelne Felder abzufragen. Parquet hingegen garantiert, dass nur die tatsächlich benötigten Spalten sequenziell gelesen werden, was die Anzahl der Festplattenzugriffe und deren Dauer merklich senkt. Zusätzlich tragen eingebaute Statistik- und Indexfunktionen von Parquet dazu bei, dass große Datenblöcke, die bereits als irrelevant erkannt wurden, übersprungen werden können. Die Folge ist eine stark beschleunigte Abfragegeschwindigkeit bei gleichzeitig geringerem Ressourcenverbrauch.

Neben der effektiven Nutzung der Festplatten-I/O profitiert die Verarbeitung auch auf CPU-Ebene erheblich. Spaltenorientierte Datenstrukturen sind besonders gut geeignet für CPU-Caches und SIMD-Vektoroperationen. Filter- und Aggregationsoperationen können auf ganzen Arrays von Werten gleichzeitig angewandt werden, was zu enormen Performancegewinnen bei der Analyse führt. Das Parquet-Design mit sogenannten Row-Groups ermöglicht es, ganze Datenblöcke auf einmal zu verarbeiten, wodurch Prozessordurchsatz und Effizienz steigen.Reale Plattformen wie Parseable und Tempo veranschaulichen den praktischen Erfolg dieses Konzepts.

Parseable wurde explizit für hohe Skalierbarkeit und Geschwindigkeit durch Spaltenorientierung ausgelegt. Ihr Ansatz verzichtet bewusst auf schwergewichtige Indexe, die bei großen Mengen an hochdiversifizierten Trace-Attributen sonst schnell gigantische Speicher- und Rechenressourcen binden würden. Tempo setzt ebenfalls auf Parquet, um beim Umgang mit Milliarden Spans Abfragen performant direkt auf den Parquet-Dateien durchzuführen. Das großartige dabei ist auch die Interoperabilität mit etablierten Big-Data-Tools wie Spark oder Presto, welche Parquet nativ unterstützen und so umfangreiche Analysen ohne aufwendige Umwandlungen ermöglichen.Die OpenTelemetry-Community ist sich der Vorteile spaltenorientierter Speicherung bewusst und erforscht zusehends Transport- und Speicherformate wie Apache Arrow für Telemetriedaten.

Obwohl das klassische OTLP-Protokoll auf Protobuf basiert, werden in Backends typischerweise spaltenorientierte Datenformate eingesetzt, um bestmögliche Komprimierung und schnelle Verarbeitung zu gewährleisten. Viele OTEL-Collector-Pipelines enthalten bereits Implementierungen zur Ausgabe von Trace-Daten im Parquet-Format, was die Integration in bestehende Ökosysteme erheblich vereinfacht.Im Gesamtbild adressieren spaltenorientierte Formate eine ganze Reihe mathematischer und betrieblicher Herausforderungen, die mit hochdimensionalen, hochgradig variablen Trace-Daten verbunden sind. Die Trennung der Attribute in Spalten reduziert die Komplexität zahlreicher Kombinationen, senkt die systembedingte Redundanz, minimiert Speicherauslastung und I/O-Aufwand. Diese Eigenschaften sind essenziell für die Bewältigung großer Datenmengen bei gleichzeitig hoher Ad-hoc-Abfrageperformance, wie moderne Observability-Systeme sie erfordern.

Für Organisationen, die mit konventionellen Observability-Stacks an Grenzen stoßen oder vor dem Hintergrund wachsender Datenvolumen eine nachhaltige, skalierbare Lösung suchen, sind spaltenorientierte Speicherformate wie Parquet eine unverzichtbare Komponente geworden. Die Verbindung von hohem Kompressionsgrad, schneller Datenzugriffszeit und flexibler Attributverarbeitung ermöglicht es, die volle Leistungsfähigkeit von Distributed Tracing auch in komplexesten Infrastrukturen zu gewährleisten.Zusammenfassend lässt sich festhalten, dass die Implementierung von OpenTelemetry-Traces in spaltenorientierten Dateien nicht nur eine innovative technische Lösung darstellt, sondern einen fundamentalen Wandel in der Handhabung großer Telemetriedatenmengen ermöglicht. Mit bewährten Technologien wie Apache Parquet sowie optimierten Datenmanagementansätzen in Systemen wie Parseable können Unternehmen besser auf die künftigen Anforderungen der Observability-Ära reagieren und ihre Analyse- und Fehlerbehebungsprozesse deutlich beschleunigen.

Automatischer Handel mit Krypto-Geldbörsen Kaufen Sie Ihre Kryptowährung zum besten Preis

Als Nächstes
Bitcoin Is A 'More Liquid And Higher Volatility Version Of Gold': Bernstein
Sonntag, 18. Mai 2025. Bitcoin als digitaler Goldersatz: Bernstein analysiert Liquidität und Volatilität

Bitcoin zeigt sich zunehmend als liquider und volatilerer Vermögenswert im Vergleich zu Gold und gewinnt durch institutionelle Investitionen an Bedeutung als langfristiger Wertaufbewahrer.

Class Action Lawsuit Calls Nike’s Shutdown of RTFKT NFT Studio a ‘Soft Rug Pull’
Sonntag, 18. Mai 2025. Nike und der RTFKT NFT-Studio-Abbruch: Eine Analyse der Sammelklage und der Kontroversen um digitale Vermögenswerte

Die Schließung des RTFKT NFT-Studios durch Nike hat eine Sammelklage ausgelöst, die den Vorgang als 'Soft Rug Pull' bezeichnet und tiefgreifende Fragen zum Schutz von NFT-Investoren und zur Zukunft digitaler Vermögenswerte aufwirft. Dieser Beitrag beleuchtet die wichtigsten Aspekte des Falls, die Problematik der NFT-Sicherheit und die Bedeutung von Regulierung im Krypto-Sektor.

Ethereum devs test a 4x increase in gas limit for Fusaka hard fork
Sonntag, 18. Mai 2025. Ethereum plant vierfache Erhöhung des Gaslimits beim Fusaka-Hard-Fork: Chancen und Herausforderungen

Ethereum-Entwickler testen eine signifikante Erhöhung des Gaslimits im Rahmen des Fusaka-Hard-Forks, um die Skalierbarkeit des Netzwerks zu verbessern. Diese Veränderung könnte die Transaktionskapazität erhöhen und neue Maßstäbe für Layer-1-Blockchains setzen.

Ethereum’s New EIP-7907 Upgrade Explained — Why It Matters for Developers
Sonntag, 18. Mai 2025. Ethereum EIP-7907: Ein Meilenstein für Entwickler und die Zukunft komplexer Smart Contracts

Die bevorstehende Ethereum-Aufwertung EIP-7907 erhöht das Limit für Smart Contract-Größen drastisch und führt eine neue Gasgebührenstruktur ein. Diese Neuerung bietet Entwicklern mehr Freiheit, komplexere Anwendungen zu erschaffen und setzt gleichzeitig auf Nachhaltigkeit und Sicherheit im Netzwerk.

Ethereum (ETH) Scaling : MegaETH Launches Testnet, Reportedly Achieves 20K TPS
Sonntag, 18. Mai 2025. Ethereum-Skalierung revolutioniert: MegaETH startet Testnet mit 20.000 TPS und neuen Perspektiven für die Blockchain-Zukunft

Die Skalierbarkeit von Ethereum stellt seit Jahren eine zentrale Herausforderung dar. Mit dem Start des MegaETH-Testnets und der berichteten Transaktionsgeschwindigkeit von 20.

Bitcoin to Hit New All-Time High Around $120K in Q2: Standard Chartered
Sonntag, 18. Mai 2025. Bitcoin kurz vor neuem Rekordhoch: Prognose von Standard Chartered auf 120.000 US-Dollar im zweiten Quartal

Die Zukunft von Bitcoin sieht vielversprechend aus, da Standard Chartered für das zweite Quartal 2025 einen neuen Rekordpreis von rund 120. 000 US-Dollar erwartet.

OKX Launches Self-Custody OKX Pay with Zero Fees, Partners with Mastercard
Sonntag, 18. Mai 2025. OKX Pay startet gebührenfreie Self-Custody-Zahlungen in Partnerschaft mit Mastercard

OKX revolutioniert den Zahlungsverkehr mit der Einführung von OKX Pay, einem gebührenfreien Self-Custody-Zahlungssystem, das durch die Zusammenarbeit mit Mastercard neue Maßstäbe für Sicherheit und Benutzerfreundlichkeit setzt.