在 运行 HCatalog 上出现错误

Getting an error on running HCatalog

A = LOAD 'eventnew.txt' USING HCatalogLoader();

2015-07-08 19:56:34,875 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1070: Could not resolve HCatalogLoader using imports: [, java.lang., org.apache.pig.builtin., org.apache.pig.impl.builtin.] Details at logfile: /home/KS5023833/pig_1436364102374.log

然后我试了

 A = LOAD 'xyz' USING org.apache.hive.hcatalog.pig.HCatLoader();

这也行不通。

1070: Could not resolve org.apache.hive.hcatalog.pig.HCatLoader using imports: [, java.lang., org.apache.pig.builtin., org.apache.pig.impl.builtin.]

有什么问题?我是Hadoop新手

正如 GoBrewers14 所述,您必须使用 -useHCatalog 启动 pig。如果您是 运行 Pig 脚本,另一种方法是确定 HCatalog jar 的位置,并将带有 jar 路径的 REGISTER 语句添加到脚本顶部

示例:

REGISTER /home/user/Installations/hive-0.11.0-bin/hcatalog/share/hcatalog/hcatalog-core-0.11.0.jar;

当然,您的 path/version 可能会有所不同。

您现在可以启动 pig shell 只需使用命令来使用 HCatalog-

pig -useHCatalog
grunt> a = load 'table' using org.apache.hive.hcatalog.pig.HCatLoader();

我遇到了同样的问题,解决方法如下: 使用“-useHCatalog”选项启动 pig。

pig -useHCatalog

然后尝试: A = 加载 'eventnew.txt' 使用 HCatalogLoader();