У меня есть задача проекта у моего руководителя, который утверждает, что можно использовать Hive в HDInsight (для Windows), чтобы запросить два разных типа файлов, а затем извлечь данные из них. Один из этих файлов - .xls, а другой - CSV-файл.Создайте таблицу Hive и вставьте данные из файла xls
Мне удалось загрузить оба этих файла в кластер Hadoop с помощью VS, а затем попытался создать таблицу Hive из файла .xls (я использовал обучающие материалы, прежде чем использовать файлы .csv, которые отлично работают с Hive), но с файлом .xls я постоянно получаю ошибку «Failed» при попытке.
Я попробовал следующий пример кода для создания таблицы, разграничения, завершения поля (из которых я пробовал несколько из них без успеха), типа файла (не уверен, что еще использовать здесь) и целевого местоположения.
DROP TABLE IF EXISTS table1;
CREATE EXTERNAL TABLE IF NOT EXISTS table1(id int, postcde int, city string)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ' '
STORED AS TEXTFILE LOCATION 'wasb://[email protected]/folder1/data.xls/'
Я не уверен, является ли это или нет вообще возможно, так как там, как представляется, противоречивые ответы на аналогичный вопрос здесь, но в соответствии с моим руководителем, должна быть возможность сделать это с улья - без необходимости конвертировать типы файлов в один формат перед загрузкой в Hadoop!
@ Yang Bryan Спасибо за ваш ответ. Я думаю, вы правы в том, что вы говорите. Я просто наткнулся на другую ссылку, указывающую два других варианта для чтения данных из формата .xls в таблицу Hive в этой [ссылке] (http://stackoverflow.com/questions/29429679/how-to-load-xls-data-from -multiple-xls-file-in-hive), но кажется, что нет «прямого» способа сделать это. Я попытался выправить ответ, но, поскольку у меня не хватает репутации, он не будет виден. Еще раз спасибо за ваше время и помощь. – themightyhulk
@th Вас приветствует J –