Ich versuche BLOB (Image) -Daten von Oracle in Hive zu importieren, indem ich den Sqoop-Befehl verwende.BLOB (Bild) von Oracle in Hive importieren
sqoop import --connect jdbc:oracle:thin:@host --username --password --m 3 --table tablename --hive-drop-import-delims --hive-table tablename --target-dir '' --split-by id;
Aber nicht erfolgreich. Denken Sie daran, BLOB-Daten, die in der Oracle-Datenbank als Hexadezimal gespeichert sind, und wir müssen diese in der Hive-Tabelle als Text oder Bianary speichern.
Was ist der mögliche Weg, das zu tun?
Vielen Dank für die Hilfe. Wenn wir versuchen, die hexadezimalen Daten (BLOB) zu HIVE als Binärdatei zu laden, funktioniert es gut. Aber als wir versuchten, die Daten mit Select-Abfrage anzuzeigen, fanden wir beschädigte Binärdaten (wie '?', ',' Usw.), die in der HIVE-Tabelle gespeichert waren. Ich habe auch beobachtet, dass nach dem Befehl sqoop, Hexadezimaldaten in HDFS speichern, aber wie HIVE Hexadezimaldaten nicht unterstützt, versucht es, die HEX-Daten in Binär-und alle Daten korrumpieren, wenn wir eine ausgewählte Abfrage ausführen. – Avijit
Die Daten wurden nicht beschädigt, es ist jedoch die Hive-Konsole, die es nicht richtig anzeigen kann. Exportieren Sie die gleichen Daten in RDBMS und wenden Sie dann select mit $ an, wobei Sie den entsprechenden Datensatz erhalten. –
Hallo, ich habe das gleiche Problem. Hast du das gelöst? Ich denke, dass der Export von Hive zu Rdbms nicht das ist, was die Leute machen wollen. Die meiste Zeit ist es von Rdbms zu Bienenstock .. – GwydionFR