Freigeben über


Datenstandardisierung

Daten treffen in Data Lake-Konten in verschiedenen Formaten ein. Diese Formate umfassen für Menschen lesbare Formate wie JSON-, .CSV- oder XML-Dateien und komprimierte Binärformate, z. B. .tar oder .gz. Die ankommenden Daten haben viele Größen, von einigen bearbeiteten Dateien bis zum Export einer ganzen SQL-Tabelle. Daten können auch als große Anzahl kleiner Dateien kommen, die jeweils nur ein paar kbs groß sind, z. B. Echtzeitereignisse aus einer IoT-Lösung.

Während Azure Data Lake Storage Gen2 die Speicherung aller Arten von Daten ohne Einschränkungen unterstützt, sollten Sie Ihre Datenformate sorgfältig berücksichtigen, um die Verarbeitung von Pipelineeffizienz zu gewährleisten und Kosten zu optimieren.

Viele Organisationen standardisieren jetzt ihr Aufnahmeformat und trennen die Berechnung vom Speicher. Aus diesem Grund wurde das Delta Lake-Format zum bevorzugten Standard für die Datenaufnahme bis zur Anreicherungsschicht. Aus der Anreicherungsebene kann Ihr Datenanwendungsteam Daten in einem Format bereitstellen, das ihren Einsatzfall widerspiegelt.

Hinweis

Verwenden Sie Delta Lake, um Batch- und Streaming-Anwendungsfälle für die Anfängliche Datenaufnahme bis hin zur Anreicherungsschicht zu unterstützen.

In diesem Artikel finden Sie einen Überblick über Delta Lake, seine Leistung und wie Sie Compliance-Support erreichen und wie Sie Ihre Daten standardisieren können, da sie von Quelle zu Anreicherungsschicht fließt.

Delta Lake

Delta Lake ist eine Open-Source-Speicherebene, die ACID-Transaktionen (Atomizität, Konsistenz, Isolation und Dauerhaftigkeit) in Apache Spark und Big Data-Workloads einführt. Sowohl Azure Synapse Analytics als auch Azure Databricks sind mit Linux Foundation Delta Lake kompatibel.

Hauptfunktionen von Delta Lake

Funktion BESCHREIBUNG
ACID-Transaktionen Data Lakes werden in der Regel mittels mehrerer Prozesse und Pipelines aufgefüllt, von denen einige Daten gleichzeitig mit Lesevorgängen schreiben. Datentechniker, die zum Durchlaufen eines manuellen, fehleranfälligen Prozesses verwendet wurden, um die Datenintegrität zu gewährleisten, bevor Delta Lake und Transaktionen verwendet wurden. Delta Lake sorgt für vertraute ACID-Transaktionen für Data Lakes. Sie bietet die stärkste Isolationsebene, die Serialisierbarkeit. Weitere Informationen finden Sie unter Einstieg in Delta Lake: Entpacken des Transaktionsprotokolls.
Skalierbare Metadatenverarbeitung In Big Data können selbst die Metadaten „Big Data“ sein. Delta Lake behandelt Metadaten genauso wie andere Daten. Es verwendet die verteilte Verarbeitungsleistung von Spark, um alle Metadaten zu behandeln. Aus diesem Gründen kann Delta Lake petabyte-Skalentabellen mit Milliarden von Partitionen und Dateien problemlos verarbeiten.
Time Travel (Datenversionsverwaltung) Die Möglichkeit, eine Änderung „rückgängig zu machen“ oder zu einer früheren Version zurückzukehren, ist eine wichtige Funktion von Transaktionen. Delta Lake stellt Momentaufnahmen von Daten bereit, mit denen Sie auf frühere Versionen von Daten für Audits, Rollbacks oder zur Reproduktion von Experimenten zurückwechseln können. Weitere Informationen finden Sie unter Einführung von Delta Lake Time Travel für große Data Lakes.
Offenes Format Mit Apache Parquet, dem Basisformat für Delta Lake, können Sie effiziente Komprimierungs- und Kodierungsverfahren anwenden.
Einheitliche Batch-und Streamingquelle und -senke Eine Tabelle in Delta Lake ist gleichzeitig eine Stapeltabelle sowie eine Streaming-Quelle und -Senke. Die Erfassung von Streamingdaten, historischer Batchvergleich und interaktive Abfragen funktionieren alle standardmäßig.
Schemaerzwingung Die Schemadurchsetzung hilft Ihnen, sicherzustellen, dass Sie über richtige Datentypen und erforderliche Spalten verfügen, wodurch die Dateninkonsistenz durch fehlerhafte Daten verhindert wird. Weitere Informationen finden Sie unter Einstieg in Delta Lake: Schemaerzwingung und -entwicklung
Schemaentwicklung Mit Delta Lake können Sie automatisch angewandte Änderungen an einem Tabellenschema vornehmen, ohne dass Sie Migrations-DDL schreiben müssen. Weitere Informationen finden Sie unter Einstieg in Delta Lake: Schemaerzwingung und -entwicklung
Überwachungsverlauf Das Delta Lake-Transaktionsprotokoll zeichnet Details zu jeder an Ihren Daten vorgenommenen Änderung auf. Diese Datensätze stellen einen vollständigen Überwachungspfad aller Änderungen bereit.
Aktualisierungen und Löschungen Delta Lake unterstützt Scala-, Java-, Python- und SQL-APIs für verschiedene Funktionalitäten. Die Unterstützung von Zusammenführungs-, Aktualisierungs- und Löschvorgängen hilft Ihnen Complianceanforderungen zu erfüllen. Weitere Informationen finden Sie unter Ankündigung von Delta Lake 0.6.1 Release, Ankündigung von Delta Lake 0.7 Release und Einfache, zuverlässige Upserts und Löschungen in Delta Lake-Tabellen mithilfe von Python-APIs, was auch Codeausschnitte für die DML-Befehle „merge“, „update“ und „delete“ umfasst.
100 % kompatibel mit der Apache Spark-API Ihre Entwickler können Delta Lake mit minimalen Änderungen an ihren vorhandenen Datenpipelines verwenden, da sie vollständig mit vorhandenen Spark-Implementierungen kompatibel ist.

Weitere Informationen finden Sie unter Delta Lake-Projekt.

Eine vollständige Dokumentation finden Sie auf der Delta Lake-Dokumentationsseite.

Leistung

Die Verwendung von vielen kleinen Dateien führt häufig zu einer suboptimalen Leistung und höheren Kosten aus erhöhten Lese-/Listenvorgängen. Azure Data Lake Storage Gen2 ist für größere Dateien optimiert, mit denen Ihre Analyseaufträge schneller und mit niedrigeren Kosten ausgeführt werden können.

Delta Lake enthält viele Features, die Ihnen helfen können, die Leistung mit der Dateiverwaltung zu optimieren.

Beispiele:

  • Das Transaktionsprotokoll minimiert teure LISTEN-Vorgänge.
  • Z-Reihenfolge (multidimensionale Clustering) ermöglicht optimiertes Prädikat-Pushdown für Ihre Abfragefilter.
  • Systemeigene Zwischenspeicherung und Abfrageoptimierungen verringern die Menge der speicherinternen Überprüfungen, die Sie benötigen. Weitere Informationen finden Sie unter Optimieren der Leistung mit Zwischenspeicherung.
  • OPTIMIEREN Sie kleine Dateien in größere Dateien.

Machen Sie diese Optimierungen zum Bestandteil Ihres Datenladeprozesses, um die Aktualität der Daten und die Leistung zu erhalten.

Data Lake-Partitionierung

Die Datenpartitionierung umfasst das Organisieren von Daten in Ihrem Datenspeicher, damit Sie große Daten verwalten und den Datenzugriff steuern können. Partitionierung kann die Skalierbarkeit verbessern, Konflikte reduzieren und die Leistung optimieren.

Stellen Sie beim Partitionieren Ihres Data Lake sicher, dass Ihre Einrichtung:

  • Keine Beeinträchtigung der Sicherheit
  • eine klare Isolation und Ausrichtung am Datenautorisierungsmodell hat
  • Gut zu Ihrem Datenerfassungsprozess passt
  • Vorhandensein eines gut definierten Pfads für einen optimalen Datenzugriff
  • Unterstützt Verwaltungs- und Wartungsaufgaben

Allgemeine Methoden

Die allgemeine Methoden für den Entwurf der Datenpartitionierung sind:

  • Beziehen Sie Sicherheitserwägungen frühzeitig ein und planen Sie Datenpartitionen und Autorisierung gemeinsam.
  • Möglicherweise möchten Sie Datenredundanz im Austausch für Sicherheit zulassen.- Definieren Sie eine Benennungskonvention und halten Sie sie ein.
  • Sie können mehrere Ordner verschachteln, halten Sie sie aber immer konsistent.
  • Fügen Sie ein Zeitelement in Ihre Ordnerstrukturen und Dateinamen ein.
  • Die Ordnerstruktur sollte nicht mit Datumspartitionen beginnen. Es ist besser, Datumsangaben auf einer unteren Ordnerebene zu speichern.
  • Eine einzelne Ordnerstruktur sollte keine gemischten Dateiformate oder verschiedene Datenprodukte enthalten.

Tipp

Ihre Ordnerstrukturen sollten mit Strategen partitioniert werden, die für optimierte Zugriffsmuster und geeignete Dateigrößen sorgen. Planen Sie die Struktur der kuratierten Zonen im Hinblick auf gute Abrufbarkeit und bedenken Sie beim Auswählen eines Partitionsschlüssels mit hoher Kardinalität, dass dies zu Überpartitionierung und somit zu ungünstigen Dateigrößen führen kann.

Weitere Informationen zu Datenseezonen finden Sie unter Data Lake-Zonen und Container

Complianceunterstützung

Delta Lake fügt eine Transaktionsschicht hinzu, um strukturierte Datenverwaltung auf Ihrem Data Lake bereitzustellen. Diese Ergänzung kann Ihre Fähigkeit zum Suchen und Entfernen personenbezogener Daten (auch bekannt als „persönliche Daten“) auf Verbraucheranfrage erheblich vereinfachen und beschleunigen. Die Transaktionsschicht unterstützt Vorgänge wie DELETE, UPDATE und MERGE. Weitere Informationen finden Sie unter Bewährte Methoden: DSGVO-Compliance mithilfe von Delta Lake.

Zusammenfassung

Wenden Sie die in diesem Artikel aufgeführten Datenstandardisierungen auf Ihre Plattform an. Beginnen Sie mit dem Delta Lake-Format, und beginnen Sie dann mit dem Hinzufügen von Prozessen zur Optimierung und Compliance. Sie können entscheiden, einen Dienst zu erstellen, der einige Ihrer Optimierungsrouten in einem Zeitplan ausführt, oder einen Compliancedienst erstellen, der persönliche Informationen entfernt.

Nächste Schritte