У меня есть CSV, где у меня есть несколько строковых столбцов. Я создал свою структуру таблицы улья, как показано ниже.
Когда я использую команду load in path для загрузки данных в таблицу кустов, она автоматически добавляет двойные кавычки вокруг строковых столбцов, даже если их нет (ссылка на скриншот csv для ссылки).
В моем случае это добавляет двойные кавычки вокруг склада и столбца процесса. Я попытался использовать CSVSerde, но после его использования он преобразует все столбцы в строку по умолчанию.
Есть ли свойство Hive, которое я могу использовать, чтобы избежать этих ненужных кавычек? Почему они входят в таблицу, когда их нет в CSV.
Структура таблицы улья:
**create table if not exists epo.temp
(
asof_period string
,period string
,item_id string
,stockroom string
,process string
,tot_qty decimal(11,2)
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
STORED AS TEXTFILE
TBLPROPERTIES ("skip.header.line.count"="1");
LOAD DATA INPATH 'Path_to_csv_file' into table epo.temp;**
РЕДАКТИРОВАТЬ - Найден обходной путь
Я работаю с одним из обходных путей, где я загружаю данные с помощью CSVserde в одну временную таблицу, а затем загружаю в фактическую таблицу путем приведения столбцов для желаемых типов данных. Но я был бы признателен, если бы кто-нибудь помог мне поставить более чистый подход.