Konvertieren Sie das Feld Leer, NULL Hive
Ich versuche zu konvertieren, leere Werte in der Quell-Datei auf NULL in der hive-Tabelle durch das setzen der Eigenschaft 'serialization.null.format' = ''
. Die Abfrage die ich geschrieben habe, in hive ist:
create table test(a int, b string) stored as parquet TBLPROPERTIES('serialization.null.format'='');
Und dann Werte einfügen in durch diese impala so etwas wie dieses:
insert overwrite table test values (1, ''), (2, 'b');
Das Ergebnis dieser zeigt so etwas wie dies:
| a | b |
| 1 | |
| 2 | b |
Kann mir jemand helfen hier, warum ist die leere nicht immer zu NULL umgewandelt ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das problem ist das Parkett SerDe. Siehe das Problem bei https://issues.apache.org/jira/browse/HIVE-12362.
Die Beschreibung ist wie folgt:
Könnten Sie versuchen, das einfügen in die Tabelle mit einer Anweisung wie dieser: