Steuern und Kryptowährungen

Skalierung von Certificate Transparency und PostgreSQL mit über 100 Milliarden Datensätzen: Ein umfassender Ansatz für Großdatenbanken

Steuern und Kryptowährungen
Scaling Certificate Transparency and Postgres with 100B+ Rows of Data

Die effektive Verwaltung und Skalierung von riesigen Datenmengen, insbesondere im Bereich der Certificate Transparency Logs, stellt Unternehmen vor große Herausforderungen. Mit innovativen Techniken und der richtigen Infrastruktur lassen sich jedoch auch Datenbanken mit mehr als 100 Milliarden Einträgen effizient betreiben.

Im Zeitalter der Digitalisierung wächst das Volumen an erzeugten und gespeicherten Daten exponentiell. Dies betrifft besonders sicherheitstechnische Bereiche wie die Certificate Transparency (CT) Logs, welche eine zentrale Rolle bei der Prüfung und Sicherstellung von SSL-Zertifikaten im Web spielen. Die Herausforderung besteht darin, enorme Mengen an Datensätzen effizient zu speichern, zu verwalten und in Echtzeit abzufragen. Ein Unternehmen, das dieses Problem beispielhaft bewältigt, ist Merklemap. Ihr Ansatz bei der Skalierung zeigt, wie sich über 100 Milliarden Zeilen an Daten in einer einzigen PostgreSQL-Datenbank handhaben lassen – ein Meilenstein, der viele Mythen über relationales Datenbank-Management in einer so großen Dimension infrage stellt.

Die Kombination aus bewährter Software und moderner Hardware spielt dabei eine entscheidende Rolle. Die Wahl der richtigen Datenbanklösung bildet die Basis für den Erfolg im Bereich massiv skalierbarer Anwendungen. Während viele Entwickler auf verteilte NoSQL-Systeme oder spezialisierte Datenbanken für Big Data vertrauen, leistet PostgreSQL unter fachkundiger Optimierung erstaunliches. Merklemap setzte bewusst auf PostgreSQL, nicht zuletzt aufgrund seiner bewährten Stabilität, robusten ACID-Eigenschaften und einer Vielzahl von Funktionen, die insbesondere Integrität und Sicherheit der Daten gewährleisten. Diese Entscheidung ermöglicht es, auf einfache Weise strenge Datenhaltungsvorschriften einzuhalten und gleichzeitig durchdachte relationale Strukturen zum Einsatz zu bringen, die eine effiziente und konsistente Datenhaltung gewährleisten.

Eine wesentliche technische Herausforderung liegt in der Größe und dem Umfang der Datenbank. Die Menge von mehr als 100 Milliarden Datenzeilen und einem Speicherbedarf von ca. 20 Terabyte ist enorm. Doch Merklemap nutzt aktuelle Hochleistungs-Hardware, etwa AMD EPYC 9454P Prozessoren, NVMe-Flash-Speicher und großzügige Arbeitsspeicher von einem Terabyte pro Replikat, um die Datenbanken performancestark zu betreiben. Diese Hardware gewährleistet schnelle Zugriffe auf die Daten und entlastet durch parallele Verarbeitung die wesentlichen Ein- und Ausgabeprozesse.

Zwei Replikate sorgen darüber hinaus für Ausfallsicherheit und erleichtern Wartungen. Doch Hardware allein reicht nicht aus. Die Speicherung der Daten erfolgt auf ZFS-basiertem Speicher, welcher mit seiner Kompressionsfähigkeit und flexiblen Snapshot-Funktionalitäten besonders gut für große Datenmengen geeignet ist. Die Standardeinstellung von ZFS mit einer Recordgröße von 128 Kilobyte steht im Gegensatz zu PostgreSQLs traditionellem 8-Kilobyte-Page-Size. Ein solcher Unterschied kann beim Lesen und Schreiben zu erheblicher Mehrarbeit führen, da für jede Page-Operation ein ganzes ZFS-Record geladen werden muss, was eine sechzehnfache Verstärkung des Datenverkehrs verursacht.

Das typische Vorgehen, ZFS an die kleinere Datenbankseite anzupassen, würde jedoch den Kompressionsvorteil stark beeinträchtigen und unnötigen Verwaltungsaufwand erzeugen. Deshalb entschied sich Merklemap für eine gegenläufige Strategie und erhöhte die Blockgröße von PostgreSQL auf 32 Kilobyte mittels eines einfachen Konfigurationsschrittes bei der Kompilierung. So nähert sich die Datenbank der ZFS-Recordgröße an, was die Effizienz bei Lese- und Schreibvorgängen deutlich verbessert und Speicherplatz spart. Es handelt sich dabei um einen eher unkonventionellen Weg, der sich bei ihrer spezifischen Datenmenge als sehr effektiv herausstellte. Weiterhin optimiert Merklemap die Schema-Struktur hin zu einem append-only Design.

Das bedeutet, dass vorhandene Datensätze so gut wie nie aktualisiert oder gelöscht werden, sondern neue Informationen angehängt werden. Diese Strategie minimiert den Aufwand für die sogenannten VACUUM-Prozesse in PostgreSQL, die für das Aufräumen toter Datensätze und das Verhindern von Problemen mit Transaktions-IDs zuständig sind. VACUUM ist ein essenzielles System-Feature, das sonst erheblichen I/O-Aufwand verursachen kann, gerade bei derart großen Datenbeständen. Das append-only Prinzip bringt noch einen weiteren Vorteil mit sich: Es reduziert die Gefahr des Transaction-ID-Wraparounds, einem kritischen Zustand, bei dem die begrenzte Bitgröße von Transaktionsnummern zu Fehlern führen kann. Um diese Herausforderung zu managen, setzt Merklemap auf eine aggressive Autovacuum-Konfiguration, die in Kombination mit Monitoring-Mechanismen dynamisch die Schreiblast steuert.

So wird in Phasen hoher Belastung die Datenaufnahme verlangsamt und mit zunehmender Stabilität wieder hochgefahren. Ein verbreiteter Ratschlag in der PostgreSQL-Community zur Skalierung von großen Schreiblasten ist die Minimierung von Relationen, Constraints und Indexen zugunsten einer schnellen „Datenpipeline“. Merklemap hat diesen Weg jedoch bewusst nicht gewählt. Stattdessen stand für sie die Datenintegrität an erster Stelle, was zu einem wohlstrukturierten, normalisierten Datenbankschema führte. Dieses setzt auf robuste ACID-Transaktionen und komplexe Beziehungen, was zusätzliche Lese- und Commit-Operationen erfordert, jedoch die Qualität und Verlässlichkeit der Daten sichert – ein essenzieller Faktor bei sicherheitsrelevanten Anwendungen.

Um die Auswirkungen eines hohen Commit-Frequenz auf die Leistung zu dämpfen, nutzt Merklemap die Commit-Gruppierungsmechanismen von PostgreSQL mittels der Parameter commit_delay und commit_siblings. Diese Einstellungen erlauben es, mehrere Transaktionen zusammenzufassen und gemeinsam abzuschließen, wodurch die Systembelastung reduziert wird. Eine Feineinstellung dieser Parameter ermöglicht einen ausgewogenen Kompromiss zwischen Performance und Aktualität. Ein weiterer Aspekt, der bei konstant wachsender Datenbank häufig diskutiert wird, ist die Partitionierung. Konzeptuell kann die Aufteilung großer Tabellen in kleinere Partitionen Performancesteigerungen sowie Wartungserleichterungen ermöglichen.

Dennoch entdeckte das Merklemap-Team, dass die damit verbundenen Komplexitäten in Form von schwierigeren Constraints, Index- und Fremdschlüssel-Management sowie komplexerer Abfrageoptimierung ihre Vorteile überwiegen. Die ausgewogene Indexierung auf regulären Tabellen erwies sich als pragmatischer und wartungsfreundlicher Weg. Im Bereich Abfragen ist bei derart riesigen Datenmengen Disziplin gefragt. Willkürliche Scans sind nicht praktikabel. Merklemap verfolgt eine Strategie, bei der nur strikt über Indizes verfügbare Daten abgefragt und existierende Filtermechanismen rigoros eingehalten werden.

Durch den gezielten Einsatz von partiellen, abdeckenden und Ausdrucksindizes werden häufige Zugriffsmuster optimiert. Materialisierte Views unterstützen die Praxis, aggregierte Daten schnell bereitzustellen. Zudem kommen Richtlinien zum Query-Governoring zur Anwendung, die teure Abfragen während hoher Lastzeiten verhindern. Der eingesetzte Kompressionsalgorithmus für ZFS ist lz4, der eine gute Balance zwischen Performance und Kompressionsrate bietet. Obwohl modernere Verfahren wie zstd bessere Kompressionsraten erreichen können, ist lz4 aufgrund seiner geringen CPU-Belastung für Merklemap die bevorzugte Wahl.

Eine Kompressionsrate von ca. 2-fach stellt eine signifikante Einsparung des Speicherplatzes dar. Die Strategie im Bereich Datenaufnahme ist durch hohe Resilienz gekennzeichnet. Logs, von denen die Daten bezogen werden, sind zwar generell zuverlässig, unterliegen jedoch gelegentlichen Ausfällen oder Performanceproblemen. Merklemap operiert wie eine Suchmaschine mit einer ausgefeilten dynamischen Drosselung, die sich an der aktuellen System- und Log-Performance orientiert.

Sogenannte fail-fast und retry-mechanismen sichern die Nachholung verpasster Daten und sorgen für vollständige und konsistente Informationsbestände. Die Implementierung der Ingest-Worker basiert auf der asynchronen Tokio-Bibliothek von Rust, was die Verbindungskonzepte und Ressourcennutzung gegenüber klassischen synchronen Verfahren optimiert. Mit einer kleinen Anzahl von CPU-Kernen und begrenzten Verbindungen kann eine hohe Datenrate erzielt werden – bis zu acht Millionen Einträge pro Stunde – was die Effizienz und Skalierbarkeit der Lösung unterstreicht. Die enorme Datenmenge erklärt sich auch historisch: Merklemap hat von Anfang an die Daten der Certificate Transparency Logs aufgezeichnet, die seit ihrer Einführung kontinuierlich wachsen. Aktuelle Raten von etwa einer Million Zertifikaten pro Stunde summieren sich über Jahre zu den gegenwärtigen Hunderten Milliarden von Datensätzen.

Die Erfahrungen von Merklemap eröffnen wichtige Erkenntnisse für den Betrieb großer Datenbanken mit PostgreSQL: Die vermeintlichen Skalierungsgrenzen einer einzelnen relationalen Datenbank können durch gezielte Software- und Hardware-Optimierungen deutlich erweitert werden. Anstatt frühzeitig auf verteilte Systeme oder NoSQL-Datenbanken auszuweichen, lohnt es sich, das volle Potenzial vorhandener Technologien auszuschöpfen. Zudem zeigt der Fall Merklemap, dass das Festhalten an relationalen Modellen und Datenintegrität nicht zwangsläufig Leistungseinbußen bedeutet, wenn die Architektur sorgsam auf die Anforderungen angepasst wird. Indem Append-Only-Schemas, angepasste Parameter sowie robuste Indexierungs- und Monitoringsysteme kombiniert werden, entsteht ein performantes und verlässliches Rückgrat für Anwendungen mit extremen Datenmengen. Abschließend stellt Merklemap mit ihrer Lösung ein Beispiel dar, wie moderne Hardware verbunden mit kluger Softwarekonfiguration es ermöglicht, auch hochvolumige und sicherheitskritische Daten in einer einzigen Datenbank effektiv zu verwalten.

Für Branchen und Projekte, die vor ähnlichen Herausforderungen stehen, bieten die hier gefundenen Antworten wertvolle Orientierung und ermutigen dazu, nicht automatisch auf verteilte Systeme zu setzen, wenn relationale Datenbanken mit sauberer Architektur ans Ziel führen.

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

Als Nächstes
Counting the Cost of a Career Break
Freitag, 04. Juli 2025. Die wahren Kosten einer beruflichen Auszeit verstehen und meistern

Ein umfassender Leitfaden, der die finanziellen und beruflichen Auswirkungen einer beruflichen Auszeit beleuchtet und wertvolle Strategien für Planung und Wiedereinstieg bietet.

Basic for the Raspberry Pi Pico and Pico 2
Freitag, 04. Juli 2025. BASIC auf dem Raspberry Pi Pico und Pico 2: Eine leistungsstarke Programmierumgebung für Einsteiger und Profis

Der Raspberry Pi Pico und Pico 2 bieten mit der PicoMite Firmware eine vielseitige Plattform für die Programmierung in BASIC. Von eingebetteten Steuerungen bis hin zu eigenständigen Computerprojekten – erfahren Sie alles über die umfangreichen Funktionen, Hardwareunterstützung und innovative Einsatzmöglichkeiten der MMBasic Umgebung auf den RP2040-basierten Mikrocontrollern.

Show HN: I made a game-like directory that reforests the Earth
Freitag, 04. Juli 2025. Ein Spielverzeichnis, das die Erde wiederbegrünt: Innovatives Konzept für nachhaltige Aufforstung

Eine neue digitale Plattform kombiniert spielerische Elemente mit praktischer Aufforstung, um weltweit Wälder wiederherzustellen und das Umweltbewusstsein zu fördern. Erfahren Sie, wie dieses neuartige Verzeichnis funktioniert und welchen Beitrag es zum globalen Umweltschutz leisten kann.

Extremwert 5 im Fear & Greed Index: Crash-Signal oder Kaufgelegenheit?
Freitag, 04. Juli 2025. Extremwert 5 im Fear & Greed Index: Signal für einen Crash oder günstige Kaufgelegenheit?

Der Fear & Greed Index misst die Stimmung der Anleger und kann wertvolle Hinweise auf die zukünftige Entwicklung der Märkte geben. Ein Extremwert von 5 wirft Fragen auf: Ist dies ein Signal für bevorstehende Turbulenzen oder die Chance auf günstige Investitionen.

The Fear and Greed Index: Definition and Examples
Freitag, 04. Juli 2025. Der Fear and Greed Index: Wie Emotionen den Aktienmarkt beeinflussen und was Anleger wissen sollten

Der Fear and Greed Index ist ein wichtiger Stimmungsindikator, der Anlegern Einblicke in die kollektiven Emotionen der Marktteilnehmer gibt. Er erklärt, wie Angst und Gier die Aktienmärkte steuern und wie Investoren diese Emotionen für ihre Anlageentscheidungen nutzen können.

AI Quantika: Smarter Investing with Artificial Intelligence
Freitag, 04. Juli 2025. AI Quantika: Intelligentes Investieren mit Künstlicher Intelligenz für nachhaltigen Vermögensaufbau

Entdecken Sie, wie AI Quantika als revolutionäre Plattform künstliche Intelligenz nutzt, um Investitionen zu optimieren, Risiken zu minimieren und auch Einsteigern einen einfachen Zugang zum flexiblen Handel und Vermögensaufbau zu ermöglichen.

Hyperliquid’s ‘Solana Breakthrough’ Targets a Massive 240% Surge!
Freitag, 04. Juli 2025. Hyperliquid und Solana: Ein Durchbruch mit Potenzial für 240% Kursanstieg

Die jüngsten Entwicklungen rund um Solana und das Konzept Hyperliquid versprechen einen revolutionären Fortschritt im Blockchain-Sektor. Die steigende Popularität bringt enorme Chancen für Investoren und den gesamten Kryptomarkt mit sich.