erstellen partition in der externen Tabelle in hive
Habe ich erfolgreich erstellt und Hinzugefügt Dynamische Partitionen in einem Interne Tabelle im hive. D. H. durch mithilfe der folgenden Schritte:
1-schuf eine Quelle der Tabelle
2-geladen-Daten von der lokalen in die Quell-Tabelle
3 - erstellt eine weitere Tabelle mit Partitionen - partition_table
4 - eingefügt, die Daten in diese Tabelle aus Quelle daraus resultierende Tabelle in der Schöpfung von allen Partitionen dynamisch
Meine Frage ist, wie Sie dies in der externen Tabelle? Ich lese so viele Artikel über dieses, aber ich bin verwirrt , das muss ich den Pfad zu den bereits existierenden Partitionen, zum erstellen von Partitionen für externe Tabelle??
Beispiel:
Schritt 1:
create external table1 ( name string, age int, height int)
location 'path/to/dataFile/in/HDFS';
Schritt 2:
alter table table1 add partition(age)
location 'path/to/already/existing/partition'
Ich bin mir nicht sicher, wie Sie Vorgehen mit der Partitionierung in externen Tabellen. Kann bitte jemand dabei helfen, indem Sie Schritt für Schritt Beschreibung von der gleichen?.
Vielen Dank im Voraus!
- ja, Sie müssen den Pfad angeben.
Du musst angemeldet sein, um einen Kommentar abzugeben.
1. Unter Eigenschaft
set hive.exec.dynamic.partition=true
set hive.exec.dynamic.partition.mode=nonstrict
2. Erstellen Sie Externe partitionierte Tabelle
create external table1 ( name string, age int, height int)
location 'path/to/dataFile/in/HDFS';
3. Einfügen von Daten in partitionierte Tabelle aus der Quelltabelle.
Grundsätzlich der Prozess ist der gleiche. seine nur, dass Sie erstellen externe partitionierte Tabelle und bieten HDFS Pfad zur Tabelle unter denen Sie erstellen und speichern-partition.
Hoffe, das hilft.
Ja, Sie haben zu sagen, Hive explizit, was ist deine partition Feld.
Betrachten Sie die folgende HDFS-Verzeichnis, in dem Sie möchten, erstellen Sie eine externe Tabelle.
Lassen Sie uns sagen, dass dieses Verzeichnis bereits gespeicherten Daten(partitioniert) Abteilung klug wie folgt:
Jedes dieser Verzeichnisse, einige Dateien, wo jede Datei
enthält die tatsächlichen Komma-separierte Daten für Felder sagen name,Alter,Größe.
Nun erstellen wir externe Tabelle auf dieser:
Schritt 1. Create external table:
Schritt 2. Partitionen hinzuzufügen:
Getan, führen Sie select-Abfrage, einmal zu überprüfen, ob die Daten erfolgreich geladen.
Befolgen Sie die folgenden Schritte aus:
Erstellen Sie eine temporäre Tabelle/Quelle Tabelle
Verwenden Sie Ihre Trennzeichen in der Datei anstelle von ',';
Laden von Daten in die Quelltabelle
Create external table mit partition
Ermöglichen die dynamische partition-Modus zu nichtstrikten
Laden von Daten in externe Tabelle mit Partitionen von der Quelle-Datei
Das ist es.
Sie können die Partitionen, die Informationen mit
Können Sie auch überprüfen, ob es sich um eine externe Tabelle oder nicht mit
Externe Tabelle ist eine Art von Tabelle in Hive, wo die Daten nicht verschoben, um das hive-warehouse. Das bedeutet, dass selbst wenn U in der Tabelle löschen, werden die Daten weiterhin bestehen und erhalten Sie immer die neuesten Daten, das ist nicht der Fall mit Verwalteten Tabelle.