2016-12-12 3 views
-1

Я пытаюсь загрузить таблицу в куст из hdfs. У меня есть следующие данные, упомянутые ниже. Пожалуйста, помогите мне, какие делиметры я могу использовать.Загрузка данных Проблема В улье из hdfs

104001;LOCAL CARD;LUXURY JEWELLERY CLASS (LJC) - TDFS;;;CANADA;CA;CAN;124 
104002;LOCAL CARD;LUXURY JEWELLERY CLASS (LJC) - TDFS;;;CANADA;CA;CAN;124 
104003;LOCAL CARD;LUXURY JEWELLERY CLASS (LJC) - TDFS;;;CANADA;CA;CAN;124 
104004;LOCAL CARD;LUXURY JEWELLERY CLASS (LJC) - TDFS;;;CANADA;CA;CAN;124 

ответ

0

Просмотрев ваши данные, ";" - полевой разделитель. Так что ваш пример HQL запрос для внешней таблицы в улье может выглядеть следующим образом:

CREATE EXTERNAL TABLE IF NOT EXISTS tablename 
(
col1 INT, 
col2 STRING, 
col3 STRING, 
col4 STRING, 
col5 STRING, 
col6 STRING, 
col7 STRING, 
col8 STRING, 
col9 INT 
) 
ROW FORMAT DELIMITED FIELDS TERMINATED BY ';' 
LOCATION '/user/username/input/'; 

Допущение: ваш входной файл на месте /пользователь/имя пользователя/вход/ в HDFS.

Пожалуйста, измените приведенное выше заявление create в соответствии с вашими потребностями.

Надеюсь, это поможет вам !!!

+0

создавать внешний TABLE IF NOT EXISTS имя_таблицы ( col1 INT, col2 СТРОКИ, col3 СТРОКИ, COL4 СТРОКИ, col5 СТРОКИ, col6 СТРОКИ, col7 СТРОКИ, col8 СТРОКИ, col9 INT ) строка с разделителями строк поля, завершенные '\ 073' stoed as textfile; – Rani

+0

Я использовал вышеприведенную команду для загрузки таблицы, но поскольку моя таблица не содержит каких-либо данных в некоторых столбцах, я получаю «» (двойные кавычки). Я хочу получить нуль в результатах. – Rani

+0

null означает, что я хочу, чтобы этот столбец был пустым – Rani

Смежные вопросы