Ich versuche, eine CSV-Datei in eine Hive Tabelle zu laden, wie so:Hive Last CSV mit Komma in Anführungszeichen gesetzten Feldern
CREATE TABLE mytable
(
num1 INT,
text1 STRING,
num2 INT,
text2 STRING
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ",";
LOAD DATA LOCAL INPATH '/data.csv'
OVERWRITE INTO TABLE mytable;
Die csv durch ein Komma begrenzt wird (,) und sieht wie folgt aus:
1, "some text, with comma in it", 123, "more text"
Dies wird beschädigte Daten zurückgeben, da in der ersten Zeichenfolge ein ',' vorhanden ist.
Gibt es eine Möglichkeit, einen Textbegrenzer festzulegen oder Hive das ',' in Strings zu ignorieren?
Ich kann das Trennzeichen des CSV nicht ändern, da es von einer externen Quelle gezogen wird.
Danke das hat den Trick gemacht! –
sed -i 's/"// g" Ihr_Dateiname übernimmt die Vorverarbeitung durch Entfernen des zitierten Textes. Sie MÜSSEN jedoch sicher sein, dass keine anderen beabsichtigten (") Zeichen entfernt werden. – ekta