2016-06-07 2 views
0

Ich habe eine Bilddatei als BLOB in Oracle-Datenbank gespeichert und die Datei auf HDFS übertragen unter Sqoop Befehl -Wie erhalten und betrachten Sie Oracle BLOB (Image) -Daten von HDFS zum lokalen System?

sqoop import --connect jdbc:oracle:thin:@hostname --username -password --m 5 --table table_name --target-dir '' --split-by id; 

Jetzt möchte ich die Image-Datei in meinem lokalen System anzuzeigen. Aber nachdem ich die Datei von HDFS auf mein lokales System übertragen habe, kann ich nur etwas Hexadezimalcode sehen, nicht das Bild.

Ich habe versucht, den Hexadezimal-Code in Base64 String mit Java-Code zu konvertieren. Aber erfolglos.

Probeneingang der Datei:

47 49 46 38 39 61 00 05 87 02 f7 00 00 00 00 00 00 00 33 00 00 66 00 00 99 00 00 cc 00 00 ff 00 2b 00 00 2b 33 00 2b 66 00 2b 99 00 2b cc 00 2b ff 00 55 00 00 55 33 00 55 66 00 55 99 00 55 cc ........ 

Gibt es einen Sqoop Befehl, mit dem ich direkt das BLOB von Oracle zu HDFS als Bild speichern (.jpg/.jpeg)? Oder wenn es eine alternative Lösung gibt?

+0

Haben Sie irgendwo mit meiner Antwort bekommen? – shainnif

Antwort