Geekflare wird von unserem Publikum unterstützt. Wir können Affiliate-Provisionen durch den Kauf von Links auf dieser Website verdienen.
Teilen:

Die wahrscheinlich beste Alternative zum CSV-Speicher: Parkettdaten

Parkett CSV-Daten
Invicti Web Application Security Scanner – die einzige Lösung, die eine automatische Verifizierung von Schwachstellen mit Proof-Based Scanning™ bietet.

Apache Parquet bietet im Vergleich zu herkömmlichen Methoden wie CSV mehrere Vorteile beim Speichern und Abrufen von Daten.

Das Parkettformat ist für eine schnellere Datenverarbeitung komplexer Typen ausgelegt. In diesem Artikel sprechen wir darüber, wie das Parquet-Format für die ständig wachsenden Datenanforderungen von heute geeignet ist.

Bevor wir uns mit den Details des Parquet-Formats befassen, lassen Sie uns verstehen, was CSV-Daten sind und welche Herausforderungen sie für die Datenspeicherung darstellen.

Was ist CSV-Speicher?

Wir haben alle schon viel über CSV gehört (Comma Sgetrennt VWerte) – eine der gebräuchlichsten Methoden zum Organisieren und Formatieren von Daten. Die CSV-Datenspeicherung ist zeilenbasiert. CSV-Dateien werden mit der Erweiterung .csv gespeichert. Wir können CSV-Daten speichern und öffnen mit Excel, Google Sheets oder einen beliebigen Texteditor. Die Daten sind ohne weiteres sichtbar sobald die Datei geöffnet ist.

Nun, das ist nicht gut – definitiv nicht für ein Datenbankformat.

Darüber hinaus wird es mit zunehmendem Datenvolumen schwierig, Abfragen, Verwaltung und Abruf zu machen.

Hier ist ein Beispiel für Daten, die in einer .CSV-Datei gespeichert sind:

EmpId,First name,Last name, Division
2012011,Sam,Butcher,IT
2013031,Mike,Johnson,Human Resource
2010052,Bill,Matthew,Architect
2010079,Jose,Brian,IT
2012120,Adam,James,Solutions

Wenn wir es in Excel anzeigen, können wir eine Zeilen-Spalten-Struktur wie folgt sehen:

Herausforderungen bei der CSV-Speicherung

Zeilenbasierte Speicher wie CSV eignen sich für Crette, Update und Delete Operationen.

Was ist mit Rdann CRUD einlesen?

Stellen Sie sich eine Million Zeilen in der obigen CSV-Datei vor. Es würde eine angemessene Zeit in Anspruch nehmen, die Datei zu öffnen und nach den gesuchten Daten zu suchen. Nicht so cool. Die meisten Cloud-Anbieter wie AWS berechnen Unternehmen basierend auf der Menge der gescannten oder gespeicherten Daten – auch hier verbrauchen CSV-Dateien viel Platz.

Der CSV-Speicher verfügt nicht über eine exklusive Option zum Speichern von Metadaten, was das Scannen von Daten zu einer mühsamen Aufgabe macht.

Was ist also die kostengünstige und optimale Lösung für die Durchführung aller CRUD-Operationen? Lassen Sie uns erkunden.

Was ist Parkett-Datenspeicherung?

Parkett ist ein Open-Source-Speicherformat zum Speichern von Daten. Es ist weit verbreitet in Hadoop und Spark-Ökosysteme. Parkettdateien werden als .parquet-Erweiterung gespeichert.

Parkett ist ein stark strukturiertes Format. Es kann auch verwendet werden, um komplexe Rohdaten zu optimieren, die in großen Mengen in Data Lakes vorhanden sind. Dies kann die Abfragezeit erheblich verkürzen.

Parquet macht die Datenspeicherung effizient und den Abruf schneller, da eine Mischung aus zeilen- und spaltenbasierten (hybriden) Speicherformaten besteht. In diesem Format werden die Daten sowohl horizontal als auch vertikal partitioniert. Das Parquet-Format eliminiert auch den Parsing-Overhead weitgehend.

Das Format schränkt die Gesamtzahl der E/A-Operationen und letztendlich die Kosten ein.

Parquet speichert auch die Metadaten, die Informationen zu Daten wie Datenschema, Anzahl der Werte, Position der Spalten, Mindestwert, Höchstwertanzahl der Zeilengruppen, Codierungstyp usw. speichern. Die Metadaten werden auf verschiedenen Ebenen in der Datei gespeichert , wodurch der Datenzugriff beschleunigt wird.

Beim zeilenbasierten Zugriff wie CSV dauert der Datenabruf Zeit, da die Abfrage durch jede Zeile navigieren und die jeweiligen Spaltenwerte abrufen muss. Mit der Parkettlagerung können Sie auf alle erforderlichen Säulen gleichzeitig zugreifen.

Zusammenfassend,

  • Parkett basiert auf der säulenförmigen Struktur zur Datenspeicherung
  • Es ist ein optimiertes Datenformat, um komplexe Daten in großen Mengen in Speichersystemen zu speichern
  • Das Parkettformat umfasst verschiedene Methoden zur Datenkomprimierung und -kodierung
  • Es reduziert die Datenscan- und Abfragezeit erheblich und benötigt weniger Speicherplatz im Vergleich zu anderen Speicherformaten wie CSV
  • Minimiert die Anzahl der E/A-Vorgänge und senkt die Kosten für Speicher und Abfrageausführung
  • Enthält Metadaten, die das Auffinden von Daten erleichtern
  • Bietet Open-Source-Unterstützung

Parkettdatenformat

Bevor wir auf ein Beispiel eingehen, wollen wir uns genauer ansehen, wie Daten im Parquet-Format gespeichert werden:

Wir können mehrere horizontale Partitionen, die als Zeilengruppen bekannt sind, in einer Datei haben. Innerhalb jeder Zeilengruppe wird die vertikale Partitionierung angewendet. Die Spalten sind in mehrere Spaltenblöcke aufgeteilt. Die Daten werden als Seiten innerhalb der Spaltenblöcke gespeichert. Jede Seite enthält die codierten Datenwerte und Metadaten. Wie bereits erwähnt, werden die Metadaten für die gesamte Datei auch in der Fußzeile der Datei auf Zeilengruppenebene gespeichert.

Da die Daten in Spaltenblöcke aufgeteilt werden, ist das Hinzufügen neuer Daten durch Codieren der neuen Werte in einen neuen Block und eine neue Datei ebenfalls einfach. Die Metadaten werden dann für die betroffenen Dateien und Zeilengruppen aktualisiert. Somit können wir sagen, dass Parkett ein flexibles Format ist.

Parquet unterstützt nativ die Komprimierung von Daten mithilfe von Techniken zur Seitenkomprimierung und Wörterbuchcodierung. Sehen wir uns ein einfaches Beispiel für die Wörterbuchkomprimierung an:


Beachten Sie, dass wir im obigen Beispiel die IT-Abteilung viermal sehen. Beim Speichern im Wörterbuch codiert das Format die Daten mit einem anderen einfach zu speichernden Wert (4…) zusammen mit der Anzahl der fortlaufenden Wiederholungen – IT, IT wird zum Speichern auf 0,1,2 geändert mehr Platz. Das Abfragen komprimierter Daten nimmt weniger Zeit in Anspruch.

Kopf-an-Kopf-Vergleich

Nachdem wir nun eine gute Vorstellung davon haben, wie die Formate CSV und Parkett aussehen, ist es an der Zeit, einige Statistiken zum Vergleich der beiden Formate zu erstellen:

CSV Parkett
Zeilenbasiertes Speicherformat. Eine Mischung aus zeilenbasierten und spaltenbasierten Speicherformaten.
Es verbraucht viel Speicherplatz, da keine Standardkomprimierungsoption verfügbar ist. Zum Beispiel belegt eine 1-TB-Datei den gleichen Speicherplatz, wenn sie auf gespeichert wird Amazon S3 oder jede andere Wolke. Komprimiert Daten beim Speichern und verbraucht so weniger Speicherplatz. Eine im Parquet-Format gespeicherte 1-TB-Datei benötigt nur 130 GB Speicherplatz.
Die Abfragelaufzeit ist aufgrund der zeilenbasierten Suche langsam. Für jede Spalte muss jede Datenzeile abgerufen werden. Die Abfragezeit ist aufgrund der spaltenbasierten Speicherung und des Vorhandenseins von Metadaten etwa 34-mal schneller.
Pro Abfrage müssen mehr Daten gescannt werden. Für die Ausführung der Abfrage werden ca. 99% weniger Daten gescannt, somit Leistungsoptimierung.
Die meisten Speichergeräte werden basierend auf dem Speicherplatz berechnet, daher bedeutet das CSV-Format die hohen Speicherkosten. Geringere Speicherkosten, da die Daten in komprimiertem, codiertem Format gespeichert werden.
Dateischema muss entweder abgeleitet werden (führt zu Fehlern) oder geliefert werden (umständlich). Das Dateischema wird in den Metadaten gespeichert.
Das Format ist für einfache Datentypen geeignet. Parquet eignet sich auch für komplexe Typen wie verschachtelte Schemata, Arrays, Wörterbücher.

Fazit

Wir haben anhand von Beispielen gesehen, dass Parkett in Bezug auf Kosten, Flexibilität und Leistung effizienter ist als CSV. Es ist ein effektiver Mechanismus zum Speichern und Abrufen von Daten, insbesondere wenn sich die ganze Welt in Richtung . bewegt Cloud-Speicher und Raumoptimierung. Alle großen Plattformen wie Azure, AWS und BigQuery unterstützen das Parquet-Format.

Danke an unsere Sponsoren
Weitere großartige Lesungen auf Database
Treiben Sie Ihr Geschäft an
Einige der Tools und Dienste, die Ihr Unternehmen beim Wachstum unterstützen.
  • Invicti verwendet das Proof-Based Scanning™, um die identifizierten Schwachstellen automatisch zu verifizieren und innerhalb weniger Stunden umsetzbare Ergebnisse zu generieren.
    Versuchen Sie es mit Invicti
  • Web-Scraping, Wohn-Proxy, Proxy-Manager, Web-Unlocker, Suchmaschinen-Crawler und alles, was Sie zum Sammeln von Webdaten benötigen.
    Versuchen Sie es mit Brightdata
  • Semrush ist eine All-in-One-Lösung für digitales Marketing mit mehr als 50 Tools in den Bereichen SEO, Social Media und Content-Marketing.
    Versuchen Sie es mit Semrush
  • Intruder ist ein Online-Schwachstellenscanner, der Cyber-Sicherheitslücken in Ihrer Infrastruktur findet, um kostspielige Datenschutzverletzungen zu vermeiden.
    MIT DER INTELLIGENTEN SCHADENKALKULATION VON Intruder