Невозможно загрузить данные в таблицу улья - PullRequest
0 голосов
/ 24 января 2020

В CDH 5.13 я использовал оболочку Hive для создания внутренней таблицы. Но когда я пытаюсь загрузить в него данные, я получаю следующую ошибку:

hive> LOAD DATA INPATH '/user/tom/data.txt' INTO TABLE managed_table;
Loading data to table demo.managed_table
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask. org.apache.hadoop.hive.ql.metadata.HiveException: Access denied: Unable to move source hdfs://quickstart.cloudera:8020/user/tom/data.txt to destination hdfs://quickstart.cloudera:8020/user/hive/warehouse/demo.db/managed_table: Permission denied: user=cloudera, access=WRITE, inode="/user/tom":hdfs:supergroup:drwxr-xr-x

Я пытался сделать следующее, все еще не смог загрузить файл.

[cloudera@quickstart /]$ sudo -u hdfs hadoop fs -chmod 777 /user/tom/data.txt
[cloudera@quickstart /]$ hdfs dfs -ls /user/tom/
Found 1 items
-rwxrwxrwx   1 hdfs supergroup         64 2020-01-24 00:57 /user/tom/data.txt

и

[cloudera@quickstart /]$ sudo -u hdfs hadoop fs -chmod 777 /user/hive/warehouse/demo.db/managed_table
[cloudera@quickstart /]$ hdfs dfs -ls /user/hive/warehouse/demo.db/
Found 1 items
drwxrwxrwx   - cloudera supergroup          0 2020-01-24 05:28 /user/hive/warehouse/demo.db/managed_table

1 Ответ

0 голосов
/ 25 января 2020

Из-за ошибки похоже, что доступ требуется на уровне каталога /user/tom

Permission denied: user=cloudera, access=WRITE, inode="/user/tom":hdfs:supergroup:drwxr-xr-x

Из описания похоже, что chmod 777 был выполнен для файл .txt в каталоге /user/tom, а не в самом каталоге.

Попробуйте выполнить приведенное ниже и посмотрите, решит ли это проблему.

sudo -u hdfs hadoop fs -chmod -R 777 /user/tom/

...