Ich habe folgende Daten in den rohen Protokolle kommen:Mehrere Zeichenbegrenzer in hadoop raw logs
America^|#|^Northern America^|#|^United States^|#|^Texas^|#|^Houston TX
Hier wird das Trennzeichen ist^| # |^
jedoch auf das Trennzeichen vorbei externe Tabelle erstellen , nur das erste Zeichen^wird als Trennzeichen betrachtet.
-Code verwendet wurde:
create external table xyz
(
col_name1 string,
col_name2 string,
col_name3 string,
col_name4 string,
col_name5 string,
)
row format delimited
fields terminated by '^!#!^'
lines terminated by '\n'
location '/data/raw/table;
Wurde eine Tabelle wie folgt erwartet:
col_name1 col_name2 col_name3 col_name4 col_name5
America Northern America United States Texas Houston TX
Statt der Ausgang ich bekam, war:
col_name1 col_name2 col_name3 col_name4 col_name5
America |#| Northern America |#| United States
Wer weiß, wie mehrere passieren Zeichen als Trennzeichen?
Jede Hilfe wird geschätzt!