Direkt zum Hauptinhalt
Produkt

Semistrukturierte Daten mit Variant schneller und effizienter ingestieren – jetzt allgemein verfügbar

Mithilfe von Predictive Optimization ermöglicht Databricks das flexible Ingestieren semistrukturierter Daten bei einer Abfrageleistung wie bei strukturierten Daten – für 30-mal schnellere Lesevorgänge

von Jonathan Brito, Gene Pang und Harsh Motwani

  • Variant ist jetzt allgemein verfügbar und ermöglicht es Teams, bei semistrukturierten Daten die Leistung strukturierter Daten zu erzielen – für bis zu 30-mal schnellere Lesevorgänge
  • Variant verarbeitet unvorhersehbare Schemaänderungen nahtlos, sodass Teams semistrukturierte Daten ingestieren können, ohne Pipelines aktualisieren zu müssen
  • Variant ist umfassend in die Databricks-Plattform integriert – sowohl für Daten- (Auto Loader, Spark Declarative Pipelines) als auch für AI-Workloads (Agent Bricks, AI-Funktionen)

Jahrelang bedeutete das Ingestieren semistrukturierter Daten wie JSON, XML oder CSV einen schwierigen Kompromiss. Datenteams konnten entweder ETL-Pipelines erstellen, um Daten für schnelle Abfragen zu schematisieren, und dabei an Flexibilität einbüßen, oder Daten als Strings speichern, um flexibel zu bleiben, und dafür eine langsame Abfrageleistung in Kauf nehmen. Um diesen Kompromiss zu lösen, haben wir gemeinsam mit den Delta- und Spark-Communitys den Variant-Datentyp eingeführt und ihn in die Parquet- und Iceberg-Communitys integriert, um das Lakehouse als einen einzigen, offenen Standard für semistrukturierte Daten zu vereinheitlichen.

Wir freuen uns, ankündigen zu können, dass Variant ab sofort in Databricks allgemein verfügbar ist. Diese Einführung umfasst auch Variant Shredding, das ebenfalls allgemein verfügbar ist – eine Leistungsoptimierung, die Predictive Optimization nutzt, um die Abfrageleistung für Variant-Daten automatisch zu verbessern. Mit Variant können Teams semistrukturierte Daten flexibel ingestieren, ohne die nachgelagerte Abfrageleistung zu beeinträchtigen.

Flexible Ingestion in großem Maßstab

Mehr als 5.000 Teams schreiben bereits Variant-Daten mit Databricks. Am häufigsten nutzen diese Teams Variant, um Events aus Streaming-Quellen wie Kinesis oder Event Hub, JSON-Payloads aus APIs und schemafreie Daten aus Datenbanken wie PostgreSQL und MongoDB zu ingestieren.

Variant ist besonders nützlich, um Schemaänderungen aus Ingestionsquellen zu handhaben. Beispielsweise kann eine vorgelagerte Anwendung ihre API-Typen ändern. Dies zwingt nachgelagerte Teams dazu, die entsprechenden Pipelines hektisch zu aktualisieren, Backfills für bestehende Daten durchzuführen und eine Umstellung zu bewältigen. Erschwerend kommt hinzu, dass in den meisten Unternehmen Datenplattform- und Anwendungsteams getrennt sind, was solche Schemaänderungen unvorhersehbar macht. Mit Variant können Benutzer all ihre semistrukturierten Daten flexibel in ihre Tabellen ingestieren.

image3.png

Variant beseitigt die Vorabkosten für die Arbeit mit semistrukturierten Daten. Der Aufbau von Pipelines zur Schematisierung von Daten kostet Zeit, sodass Data Engineers ihre investierte Zeit rechtfertigen müssen. Variant stellt dieses Paradigma auf den Kopf: Teams können Daten zuerst mühelos speichern und erst später deren Nutzen für das restliche Unternehmen ermitteln.

Schnellere, intelligentere Abfragen mit Predictive Optimization

Databricks-Benutzer führen monatlich über 500 Millionen Variant-Abfragen auf mehr als 160 TB an Variant-Daten aus. Databricks ermöglicht das Lesen von Variant-Daten ebenso schnell wie das Lesen schematisierter Daten in Managed Tables. Durch Shredding speichert Variant häufige Felder als Spalten in den zugrunde liegenden Parquet-Dateien. Predictive Optimization lernt aus den individuellen Workloads und Abfragemustern der Benutzer und identifiziert mithilfe von maschinellem Lernen die kritischsten geschredderten Felder und erfasst Statistiken dazu, um das Überspringen von Dateien zu verbessern. Dadurch scannt Databricks nur die für eine Abfrage erforderlichen Dateien und Spalten, was unnötigen Aufwand vermeidet und die Leistung steigert.

Variant Shredding liefert fast viermal schnellere Lesevorgänge als ungeschreddertes Variant – und 30-mal schnellere Lesevorgänge als das Speichern von JSON als String:

image2.png

Mit Variant ermöglicht Databricks eine blitzschnelle Leistung in großem Maßstab:

Wir müssen Sicherheitslogs abfragen, die keine einfachen, flachen Datensätze sind, sondern komplexe JSON-Strukturen, die sich nur schwer effizient durchsuchen lassen. Die Variant-Unterstützung von Databricks in Kombination mit Shredding ermöglicht hochperformante Abfragen von tief verschachtelten Attributen – selbst im Petabyte-Bereich.

Panther

— Russell Leighton, Chief Architect

Verwendung von Variant in Databricks

Mit Databricks können Sie Variant in Ihrem gesamten Daten-Stack nutzen.

Unsere Benutzer verwenden in der Regel zwei Tools, um semistrukturierte Daten als Variant zu ingestieren:

  1. Auto Loader, eine Quelle zur inkrementellen Verarbeitung semistrukturierter Dateien aus dem Objektspeicher
  1. Zerobus, ein vollständig verwalteter Ingestionsdienst zum direkten Schreiben in Tabellen ohne Verwendung eines Message-Bus

Beide Ingestionsansätze schreiben Daten entweder in Delta oder Iceberg, sodass jeder Client mit Daten im Lakehouse interagieren kann. Um die Einrichtung zu vereinfachen, können Sie Genie Code im Lakeflow Pipelines Editor verwenden, um ganz einfach Ingestions-Pipelines für Auto Loader mithilfe natürlicher Sprache zu erstellen.

Delta or Iceberg

Teams können Variant-Daten dann direkt im Lakehouse nutzen. Da die Daten während des Ingestionsprozesses intelligent geschreddert werden, können Dashboards und Berichte die Daten direkt abfragen – und das ebenso schnell wie strukturierte Daten.

In naher Zukunft planen wir, die Unterstützung für Variant noch weiter auszubauen, einschließlich Liquid Clustering nach Variant-Feldern, erweiterten SQL-Funktionen und weiteren Feature-Integrationen.

Starten Sie noch heute mit Variant

Mit Variant müssen Sie bei der Verwendung semistrukturierter Daten keine Kompromisse mehr zwischen Flexibilität und Leistung eingehen. Databricks nutzt Predictive Optimization, um Workload- und Abfragemuster zu verfolgen und Variant-Daten automatisch für die beste Leistung über alle Produkte hinweg zu schreiben.

Der Einstieg in Variant ist ganz einfach – probieren Sie es hier aus.

(Dieser Blogbeitrag wurde mit KI-gestützten Tools übersetzt.) Originalbeitrag

Erhalten Sie die neuesten Beiträge in Ihrem Posteingang

Abonnieren Sie unseren Blog und erhalten Sie die neuesten Beiträge direkt in Ihren Posteingang.