2016-08-02 13 views

Antwort

3

--append anhängen Daten an eine vorhandene Datenmenge in HDFS

--append 
--where "dpt_id >10" 

ist die gleiche wie: (nur die Daten zu bestehenden Datensätzen anhängt, auch Duplikate anhängen - Hinweis: Diese überschreiben NICHT wird die Daten aber anfügen):

--incremental append 
--check-column dpt_id 
--last-value 10 

aber NICHT folgenden Optionen (Hängt die neuen Daten und aktualisiert die vorhandenen Daten - keine Duplikate - Hinweis: das wird die Daten nicht überschrieben sondern aktualisieren oder anhängen)

--incremental lastmodified 
--check-column lastupdated 
--last-value 20160802000000 

Sqoop unterstützt zwei Arten von incremental Importe: append und lastmodified.

Mit dem Argument --incremental können Sie den Typ des auszuführenden inkrementellen Imports angeben.

append:

  • Sie sollten append Modus festlegen, wann eine Tabelle zu importieren, wo neue Zeilen ständig mit zunehmender Reihe ID-Werte hinzugefügt werden.
  • Sie geben die Spalte mit der ID der Zeile mit --check-column an.
  • Sqoop importiert Zeilen, bei denen die Prüffelder einen Wert größer als den mit --last-value angegebenen Wert aufweist.

LastModified:

  • Eine alternative Tabellenaktualisierungsstrategie von Sqoop unterstützt wird lastmodified Modus bezeichnet. Sie sollten dies verwenden, wenn die Zeilen der Quelltabelle aktualisiert werden können, und jede solche Aktualisierung wird den Wert einer zuletzt geänderten Spalte auf den aktuellen Zeitstempel setzen.
  • Zeilen, in denen die Prüffelder einen Zeitstempel enthält, der jünger ist als der mit --last-value angegebene Zeitstempel, werden importiert. Wenn Sie einen nachfolgenden Import ausführen, sollten Sie auf diese Weise --last-value angeben, um sicherzustellen, dass Sie nur die neuen oder aktualisierten Daten importieren.
  • Dies wird automatisch erledigt, indem ein inkrementeller Import als gespeicherter Job erstellt wird. Dies ist der bevorzugte Mechanismus zum Ausführen eines wiederkehrenden inkrementellen Imports.

read more about incremental_imports here. . .

1

Angeben

--incremental lastmodified 

Wird also die Update-Anweisungen generieren wird die Zeile aktualisieren, wenn es in Abhängigkeit von der in

--checkcolumn 

erwähnt Spalte existiert Während

Erwähnens
--incremental append 

fügt doppelte Datensätze ein, da nur

angefügt wird
Verwandte Themen