Выполнение файла SQL Hive

Я использую Cloudera Quickview VM 5.10

Ниже приведена моя реализация, которая не работает.

  1. Создал новый файл (sample.sql) в "пользователь / улей / склад" с помощью Hue. Расширение sql.
  2. В режиме редактирования я написал код SQL (используйте testdb; выберите * from sometable;)
  3. Сохранил изменения. В терминале HDFS введена следующая команда
hive -f /user/hive/warehouse/sample.sql

Он говорит, что файл не найден. Если я изменил расположение файла на "/user/cloudera/sample.sql", то возникнет та же проблема. Если я изменю расположение файла на "/home/cloudera/sample.sql", то он вызовет Hive и будет работать должным образом.

Кажется, это проблема с разрешением. Как это решить? Пожалуйста помоги.

1 ответ

Решение

Неясно, какой файл вы пытаетесь запустить: в HDFS или в локальной файловой системе.

hive -f <filename>команда запускает локальный файл, а не в HDFS.

Убедитесь, что файл находится на компьютере, на котором запущен улей (используйте ls -l <path>)

Если вы хотите запустить файл, расположенный в HDFS, вам нужно сначала загрузить его на локальный компьютер (используя hdfs dfs -get) или используйте эту команду:

hive -f <(hdfs dfs -cat /path/in_HDFS/sample.sql)
Другие вопросы по тегам