Filtern von Daten, die in Tabellen unter Impala gespeichert sind, unter Data Refinery
Verfeinern Sie die in Tabellen in „ Impala “ auf dem „ Hadoop “-Cluster gespeicherten Daten.
Voraussetzung
Stellen Sie eine Verbindung zum Cluster „ Hadoop “ her. Siehe „ Impala via Execution Engine for Hadoop “-Verbindung.
Einschränkungen
Die Quell- und Zielinstanz von „ Data Refinery “ sowie die Umgebung von „ Hadoop “ müssen auf dasselbe „ Hadoop “-System verweisen.
Sie müssen eine „ Hadoop “-Umgebung verwenden, um „ Data Refinery “-Jobs auf einem „ Hadoop “-Cluster auszuführen.
Unter Impala unterstützt Data Refinery nur Jobs, die in Tabellen mit Dateien im Parquet-Format schreiben.
Wenn Sie den Zieldatensatz überschreiben oder neu erstellen möchten, benötigen Sie
writedie Berechtigung (insbesondere diedeleteBerechtigung) für das Datenverzeichnis „ HDFS “ der Tabelle „ Impala “.Wenn beispielsweise das Datenverzeichnis „ HDFS “ der Tabelle „ Impala “ lautet
/user/hive/warehouse/table_nameund Sie keinedeleteBerechtigung für die Datendateien in diesem Verzeichnis haben, führen Sie diesen Befehl aus, um den Eigentümer zu ändern:hdfs dfs -chown -Rnew_owner:hive /user/hive/warehouse/table_nameWenn Sie die Aktion „Tabelle ersetzen“ mit einer externen Tabelle als Ziel verwenden möchten, muss diese externe Tabelle leer sein.
Vorgehensweise
Erstellen Sie einen verknüpften Datenbestand für die Quelle (Daten, die Sie aufbereiten möchten):
- Gehe zur Projektseite.
- Klicken Sie auf „Assets“ > „Asset importieren“ > „Verbundene Daten “.
- Klicken Sie auf „Quelle auswählen “.
- Wählen Sie die Verbindung „ Impala via Execution Engine for Hadoop “ aus. Navigieren Sie zu den gewünschten Daten und klicken Sie auf „Auswählen “.
- Geben Sie einen Namen und eine Beschreibung ein.
- Klicken Sie auf Erstellen. Das Asset wird auf der Seite „Assets“ des Projekts angezeigt.
Wiederholen Sie Schritt 1, um ein verknüpftes Datenobjekt für die Zieldatei der Ausgabe des „ Data Refinery “-Ablaufs zu erstellen.
Erstellen Sie einen „ Data Refinery “-Ablauf:
- Klicken Sie auf das verknüpfte Datenobjekt für die Quelle, die Sie in Schritt 1 erstellt haben.
- Klicken Sie auf „Daten vorbereiten“, um „ Data Refinery “ zu öffnen.
- Wende Operationen an, um die Daten zu verfeinern.
Ändern Sie den Speicherort für die Ausgabedatei:
- Klicken Sie auf das
Symbol „Flow-Einstellungen“ in der Symbolleiste. Wechseln Sie zur Registerkarte „Zieldatensatz “ und klicken Sie auf „Ziel auswählen “. - Klicken Sie auf „Datenobjekt“, wählen Sie dann das verbundene Datenobjekt für die Z ieldatei aus und klicken Sie auf „Weiter “.
- Wählen Sie im Fenster „Ziel und Formatierungseigenschaften auswählen “ einen Schreibmodus und eine Tabellenaktion aus.
- Klicken Sie auf „Speichern“ und anschließend auf „Übernehmen “.
- Klicken Sie auf das
Erstellen Sie einen Job, der den „ Data Refinery “-Flow in der „ Hadoop “-Umgebung ausführt:
- Klicken Sie in der Symbolleiste von „ Data Refinery “ auf das Symbol
„Jobs“ und wählen Sie dann „Speichern und Job erstellen “. - Geben Sie einen Namen und eine Beschreibung ein. Wählen Sie die Umgebung „ Hadoop “ aus.
- Optional: Fügen Sie einen einmaligen oder wiederkehrenden Termin hinzu.
- Erstellen Sie den Auftrag und führen Sie ihn sofort aus, oder erstellen Sie den Auftrag und führen Sie ihn später aus.
- Klicken Sie in der Symbolleiste von „ Data Refinery “ auf das Symbol
Nachdem der Auftrag abgeschlossen ist, synchronisieren Sie die Metadaten von „ Impala “ erneut. Stellen Sie auf dem „ Hadoop “-Cluster eine Verbindung zur Impala-Shell der Datenbank her und führen Sie folgenden Befehl aus:
REFRESHtable_name