1

I am using Cloudera Quickview VM 5.10

The following is my implementation which is not working.

  1. Created a new file (sample.sql) in "user/hive/warehouse" using Hue. The extension is sql.
  2. In Edit mode, I wrote some SQL code (use testdb; select * from sometable;)
  3. Saved the changes. In the HDFS terminal entered the following command
hive -f /user/hive/warehouse/sample.sql

It says the file not found. If I changed the file location to "/user/cloudera/sample.sql" then also the same issue. If I change the file location to "/home/cloudera/sample.sql" then it is invoking Hive and working as expected.

Seems it is a permission issue. How to solve it? Please help.

leftjoin
  • 36,950
  • 8
  • 57
  • 116
Onlydocs
  • 79
  • 7
  • Ask unix admin or hive admin to grant read access to this folder /user/hive/warehouse/ and RWX permission to /user/hive/warehouse/sample.sql. – Koushik Roy Nov 27 '20 at 12:53

1 Answers1

1

It is not clear which file are you trying to execute: in HDFS or local filesystem.

hive -f <filename> command runs local file, not in HDFS.

Check the file is located on the machine on which you are running hive (use ls -l <path>)

If you want to run file located in HDFS, you need to load it to local machine first (using hdfs dfs -get) or use this command:

hive -f <(hdfs dfs -cat /path/in_HDFS/sample.sql)
leftjoin
  • 36,950
  • 8
  • 57
  • 116