Ich habe eine Tabelle in Oracle mit nur 4 Spalten ...Incrimental Update in HIVE Tabelle mit Sqoop
MemberID --- bigint
Uuid --- String
Insert --- Datum
updatedate --- Datum
ich diese Daten in HIVE Tabelle mit Sqoop importieren möchten. Ich schaffe entsprechende HIVE Tabelle mit
create EXTERNAL TABLE memberimport(memberid BIGINT,uuid varchar(36),insertdate timestamp,updatedate timestamp)LOCATION '/user/import/memberimport';
und Sqoop Befehl
sqoop import --connect jdbc:oracle:thin:@dbURL:1521/dbName --username ** --password *** --hive-import --table MEMBER --columns 'MEMBERID,UUID,INSERTDATE,UPDATEDATE' --map-column-hive MEMBERID=BIGINT,UUID=STRING,INSERTDATE=TIMESTAMP,UPDATEDATE=TIMESTAMP --hive-table memberimport -m 1
Seine einwandfrei funktioniert und in der Lage Daten in HIVE Tabelle zu importieren.
Jetzt möchte ich diese Tabelle mit inkrementellen Update mit updatete (letzter Wert des heutigen Tages) aktualisieren, so dass ich täglich Aktualisierung für diese OLTP-Tabelle in meine HIVE-Tabelle mit sqoop erhalten kann.
für inkrementellen Import Ich verwende folgenden Sqoop Befehl
sqoop import --hive-import --connect jdbc:oracle:thin:@dbURL:1521/dbName --username *** --password *** --table MEMBER --check-column UPDATEDATE --incremental append --columns 'MEMBERID,UUID,INSERTDATE,UPDATEDATE' --map-column-hive MEMBERID=BIGINT,UUID=STRING,INSERTDATE=TIMESTAMP,UPDATEDATE=TIMESTAMP --hive-table memberimport -m 1
Aber ich bin immer Ausnahme
„-Modus anhänge für hive Importen wird noch nicht unterstützt. Bitte entfernen Sie den Parameter --append-Modus“
Wenn ich den --hive-Import entferne es richtig laufen, aber ich habe diese neue Aktualisierung in der HIVE-Tabelle nicht gefunden, die ich in der OLTP-Tabelle habe.
Mache ich etwas falsch? Bitte schlagen Sie mir vor, wie ich ein inkrementelles Update mit Oracle - Hive mit sqoop ausführen kann.
Jede Hilfe wird angeeignet werden ..
Vielen Dank im Voraus ...