问题
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
Then I tried
A = LOAD 'xyz' USING org.apache.hive.hcatalog.pig.HCatLoader();
This is also not working.
1070: Could not resolve org.apache.hive.hcatalog.pig.HCatLoader using imports: [, java.lang., org.apache.pig.builtin., org.apache.pig.impl.builtin.]
what is the problem? I am a novice in Hadoop.
回答1:
As stated by GoBrewers14 you must start pig with -useHCatalog. If you are running a Pig script an alternative is to determine the location of the HCatalog jar and add a REGISTER statement with the path of the jar to the top of your script
Example:
REGISTER /home/user/Installations/hive-0.11.0-bin/hcatalog/share/hcatalog/hcatalog-core-0.11.0.jar;
of course your path/version may be different.
回答2:
You can now launch pig shell just by using command to use HCatalog-
pig -useHCatalog
grunt> a = load 'table' using org.apache.hive.hcatalog.pig.HCatLoader();
回答3:
I was facing the same issue, fixed it as following: Start pig using "-useHCatalog" option.
pig -useHCatalog
then try : A = LOAD 'eventnew.txt' USING HCatalogLoader();
来源:https://stackoverflow.com/questions/31295980/getting-an-error-on-running-hcatalog