Wie funktioniert Hive speichert die Daten, und was ist SerDe?
beim Abfragen einer Tabelle, einer SerDe wird Deserialisieren eine Reihe von Daten aus den bytes in der Datei für Objekte verwendet, die intern von Hive auf die Zeile der Daten. beim ausführen einer INSERT-oder CTAS (siehe "Importieren von Daten" auf Seite 441), in der Tabelle SerDe wird serialisieren Hive-interne Repräsentation einer Zeile von Daten in bytes, die geschrieben werden, um die Ausgabe-Datei.
- Ist serDe Bibliothek?
- Wie funktioniert hive-Daten speichern ich.e speichert es in einer Datei oder Tabelle?
- Bitte kann jemand erklären, die kühnen Sätze eindeutig?
Ich bin neu auf hive!!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Antworten
Weitere Informationen auf, wie man ein SerDe Lesen Sie diese post
In diesem Aspekt können wir sehen, Bienenstock als eine Art Datenbank-engine. Dieser Motor arbeitet auf Tabellen, die von gebaut werden, Datensätze.
Wenn wir Hive (wie auch jede andere Datenbank) arbeiten in seinem eigenen internen Formaten - wir kümmern uns nicht.
Wenn wir wollen, Hive, um dabei unsere eigenen Dateien als Tabellen (Tabellen für externe) wir haben ihn wissen zu lassen - wie zum übersetzen von Daten in Dateien in Datensätze. Dies ist genau die Rolle von SerDe. Sehen Sie es als plug-in ermöglicht Hive zu Lesen /schreiben Ihre Daten.
Zum Beispiel - Sie möchten die Arbeit mit CSV. Hier ist ein Beispiel für CSV_Serde
https://github.com/ogrodnek/csv-serde/blob/master/src/main/java/com/bizo/hive/serde/csv/CSVSerde.java
Methode serialisiert werden die Daten zu Lesen, und hacken Sie es in die Felder vorausgesetzt, es ist CSV
Methode Deserialisieren wird nehmen Sie einen Datensatz, und formatieren Sie Sie als CSV-Datei.
Hive analysieren, semi-strukturierte und unstrukturierte Daten sowie durch die Verwendung
(1) komplexe Datentypen(struct,array,Gewerkschaften)
(2) Durch die Verwendung SerDe
SerDe-interface ermöglichen Sie uns anweisen, hive, wie der Eintrag verarbeitet werden soll. Serializer nehmen java-Objekt-Struktur gearbeitet hat,und konvertieren Sie es in etwas, das hive store und Deserializer nehmen binäre Darstellung eines Datensatzes und übersetzen in java-Objekt-Struktur manipulieren kann.
Ich denke, die oben genannten Konzepte serialise und deserialise hinten nach vorne. Serialise erfolgt auf schreiben, die strukturierten Daten in eine serialisierte bit - /byte-stream für die Lagerung. Beim Lesen der Daten ist deserialised von der bit/byte-Speicher-format, um die Struktur erforderlich, die durch den Leser. zB Hive braucht Strukturen, die Aussehen wie die Zeilen und Spalten aber hdfs speichert die Daten in bit - /byte-Blöcke, so serialise schreiben, deserialise auf Lesen.