Выберите запрос, не работающий во внешней таблице

У нас есть небольшой массив кластера Greenplum. В нем мы установили Hadoop. и пытаемся получить доступ к внешней таблице по протоколу GPHDFS.

Окружающая среда

  • ВЕРСИЯ ГПБД 4.3.10
  • HDP ВЕРСИЯ 2.3.6
  • JAVA ВЕРСИЯ 1.8 через master/segments

Получение ошибки

prod=# select count (*) from schemaname.filename;
ERROR: external table gphdfs protocol command ended with error. Error: A JNI error has occurred, please check your installation and try again (seg1 slice1 datanaodehostname:40001 pid=8221)
DETAIL:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/mapreduce/TaskAttemptContext
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
at java.lang.Class.getMethod0(Class.java:3018)
at java.lang.Class.getMethod(Class.java:1784)
at sun.launcher.LauncherHelper.validateMain
Command: 'gphdfs://hadoop/file/path?profile=HdfsTextSimple'
External table ext_tableneme, file gphdfs://hadoop/file/path?profile=HdfsTextSimple

Любая помощь в этом будет высоко оценена?


person vs0731    schedule 31.07.2017    source источник
comment
gphdfs не имеет такого синтаксиса, как profile=HdfsTextSimple в pxf. Обратитесь к документу gphdfs в Pivotal   -  person Sung Yu-wei    schedule 31.07.2017
comment
Извините, это моя ошибка, я добавил сюда профиль hawq pxf, Я УДАЛИЛ И попытался удалить профиль = HdfsTextSimple. он все еще дает ту же ошибку.   -  person vs0731    schedule 31.07.2017


Ответы (1)


в psql запустите «show gp_hadoop_home». Вы должны увидеть, что он указывает на ваш дом HDP. Если нет, используйте gpconfig -c gp_hadoop_home -v "'/usr/hdp/current", чтобы сбросить домашний адрес hadoop в gpdb.

person Sung Yu-wei    schedule 31.07.2017