2016-11-04 4 views
0

Загружая файл с мейнфрейма в Hadoop в формате ORC, некоторые данные загружаются с помощью Single Quotes (') и остаются с двойными кавычками ("). Но полный источник файл находится в одиночную кавычку (') Чтобы задать пользовательские разделители, используемые Hive Cobol SerdeДанные (одинарные кавычки и котировки Doube) Несоответствие в улье

Пример:..

Источник данных:

First_NameLast_nameАдрес

Rev 'Хар' O'Amy 4031 'B' Ave

Загруженный в Hadoop, как некоторые данные с правильным форматом (') и некоторые двойные кавычки ("), как показано ниже:

First_NameLast_nameАдрес

Rev "хар" O "Эми 4031 "B" Ave

что может быть проблема и как решить эту проблему?

ответ

0

один возможный вопрос может быть разделителем дано в то время как ваше создание таблицы

поэтому попробуйте ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' С SERDEPROPERTIES («serialization.encoding» =» UTF-8 '); создавая таблицу hive и загружая данные.

также попробуйте использовать udf, приведенные в этой ссылке, чтобы удалить все специальные символы, если вы хотите, чтобы ваши данные были чистыми. https://github.com/ogrodnek/csv-serde