我们有小的gpdb群集。当我试图从gpdb master使用'gphdfs'
协议读取外部表时。 环境Greenplum错误 - 输入路径不存在
产品版本 枢纽的Greenplum(GPDB)4.3.8.2 OS的Centos 6.5
四处错误:
prod=# select * from ext_table; ERROR: external table gphdfs protocol command ended with error. 16/10/05 14:42:51 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable (seg0 slice1 host.domain.com:40000 pid=25491)
DETAIL:
Exception in thread "main" org.apache.hadoop.mapreduce.lib.input.InvalidInputException: Input path does not exist: hdfs://path/to/hdfs
at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.listStatus(FileInputFormat.java:285)
at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.getSplits(FileInputFormat.java:340)
at com.
Command: 'gphdfs://path/to/hdfs'
External table tableame, file gphdfs://path/to/hdfs
我们尝试: 继Greenplum的主计算机 上链接https://discuss.pivotal.io/hc/en-us/articles/219403388-How-to-eliminate-error-message-WARN-util-NativeCodeLoader-Unable-to-load-native-hadoop-library-for-your-platform-with-gphdfs
命令结果
按照链接中的建议更改“Hadoop-env.sh”中的内容后,它不起作用。仍然抛出相同的错误。我是否需要重新启动gpdb以影响更改“Hadoop-env.sh”。
或
是否有替代方法来处理gphdfs协议错误?
任何帮助,将不胜感激?
附件是失败的外部表
create external table schemaname.exttablename(
"ID" INTEGER,
time timestamp without time zone,
"SalesOrder" char(6),
"NextDetailLine" decimal(6),
"OrderStatus" char(1),
)
location('gphdfs://hadoopmster.com:8020/devgpdb/filename.txt') FORMAT 'text'
加载本机库仅仅是一个警告,它不应该停止工作。我认为例外情况中令人担忧的消息是:'输入路径不存在:hdfs:// path/to/hdfs' –
感谢您的指导。我要检查路径。 – NEO
我刚才观察到一个症状:https://discuss.pivotal.io/hc/en-us/articles/202635496-How-to-access-HDFS-data-via-GPDB-external-table-with-gphdfs-protocol当我检查能够从Hadoop/tmp f目录读取数据的步骤时。但我正在Hadoop上创建新的dir/dev。它抱怨输入路径不存在:hdfs:// path/to/hdfs – NEO