drop-table

___ qstnhdr ___ hive - Wie man eine externe Hive-Tabelle zusammen mit Daten löscht ___ qstntxt ___

Ich verwende

%Vor%

Wenn ich die Tabelle mit demselben Schema und demselben Namen neu erzeuge, bekomme ich die alten Daten zurück. Sollte ich das Tabellenverzeichnis aus dem hdfs-Dateisystem entfernen, um die Daten vollständig loszuwerden?

    
___ answer45336561 ___

Wenn es sich um eine externe Tabelle handelt, bedeutet das Löschen der Tabelle, dass Sie nur das Schema löschen

Sie müssen die Datei manuell aus HDFS löschen

oder Erstellen Sie eine neue Tabelle und geben Sie eine andere Dateiposition in den Tabelleneigenschaften

an     
___ answer44923642 ___

Erhalte zuerst den Pfad der Tabelle mit folgendem Befehl:

Bienenstock & gt; Beschreibe formatiert Datenbankname.Tabellenname;

Kopieren Sie dann den gesamten Ort, der in der Beschreibung erscheint, zum Beispiel: /user/hive/warehouse/database_name.db/table_name

Verwenden Sie danach den folgenden Befehl, um alle Daten aus der gegebenen Tabelle zu entfernen:

%Vor%

ODER

%Vor%

Dann können Sie es komplett mit dem Befehl DROP TABLE löschen.

    
___ answer26730143 ___

Sie können diesen Link sehen, es könnte helfen

Ссылка

    
___ tag123hdfs ___ Hadoop Distributed File System (HDFS) ist das primäre Speichersystem, das von Hadoop-Anwendungen verwendet wird. HDFS erstellt mehrere Replikate von Datenblöcken und verteilt sie auf Rechenknoten in einem Cluster, um zuverlässige, extrem schnelle Berechnungen zu ermöglichen. ___ answer13553742 ___

Obwohl ich mit pinsz einer kleinen Änderung zustimme, müssen Sie die Tabelle nicht fallen lassen. Ersetzen Sie einfach die externe hdfs-Datei durch die neue Datei, die Sie möchten (die Struktur der ersetzten Datei sollte dieselbe sein), und wenn Sie * in der vorherigen Tabelle auswählen, werden Sie feststellen, dass sie die neuen Daten und nicht die alten enthält eins.

Externe Tabellen bezeichnen grundsätzlich nur das Schema der Daten und den Speicherort der Datei. Sie können viele Dateien zum selben Speicherort hinzufügen, und Ihre Tabelle enthält automatisch alle Daten, die sich auf diese Dateien beziehen. In ähnlicher Weise können Sie alle Daten ersetzen und Ihre Tabelle wird dies automatisch widerspiegeln.

    
___ tag123drogtable ___ Der SQL-Befehl zum Löschen einer ganzen Tabelle. ___ answer49652016 ___

Sie müssen die externe in die interne Tabelle ändern, bevor Sie sie löschen:

Beispiel

%Vor%

und dann:

%Vor%     
___ tag123hive ___ Hive ist ein Data Warehouse-System für Hadoop, das eine einfache Datenzusammenfassung, Ad-hoc-Abfragen und die Analyse großer Datasets ermöglicht, die in Hadoop-kompatiblen Dateisystemen gespeichert sind. Hive bietet einen Mechanismus zum Projizieren der Struktur auf diese Daten und Abfragen der Daten mithilfe einer SQL-ähnlichen Sprache namens HiveQL. ___ answer13542024 ___

Keine Notwendigkeit, das Verzeichnis in hdfs zu entfernen, außer Sie brauchen mehr hdfs Speicherplatz.

Wenn Sie neue Daten ersetzen möchten, müssen Sie nur die Datei in hdfs ersetzen.

Wenn Sie den Tabellennamen für andere Zwecke verwenden möchten, löschen Sie die Tabelle und entfernen Sie das Verzeichnis in hdfs.

Tatsächlich ist dies ein sehr praktisches Feature, dass Sie das Schema Ihrer Tabelle ändern können (zB wenn Sie den Feldnamen ändern oder zwei Felder in ein Feld umwandeln möchten), ohne Daten zu verlieren.

    
___
6
Antworten

hive - Wie man eine externe Hive-Tabelle zusammen mit Daten löscht

Ich verwende %Vor% Wenn ich die Tabelle mit demselben Schema und demselben Namen neu erzeuge, bekomme ich die alten Daten zurück. Sollte ich das Tabellenverzeichnis aus dem hdfs-Dateisystem entfernen, um die Daten vollständig loszuwerden?  ...
24.11.2012, 13:53