【问题标题】:Pig Script useHCatalog flag?猪脚本使用HCatalog标志?
【发布时间】:2015-12-15 13:17:04
【问题描述】:

我编写了简单的 pig 脚本来从 hive 表中读取数据。

A = LOAD 'default.movie' USING org.apache.hive.hcatalog.pig.HCatLoader();
DUMP A;

当我通过 hue pig 用户界面运行时,它正在工作。但它使用标志useHCatalog

当我使用命令行使用相同的标志运行它时,它正在工作

pig -useHCatalog sample.pig

但是我如何在没有这个标志的情况下通过在 pig 脚本中提供所需的 jar 文件和配置来运行。我试过这个。但是不行

REGISTER /usr/lib/hive/lib/*.jar
REGISTER /usr/lib/hive-hcatalog/share/hcatalog/*.jar
REGISTER /usr/lib/hive-hcatalog/share/hcatalog/storage-handlers/hbase/lib/*.jar

当我在没有标志的情况下运行时会引发错误

2015-12-15 05:05:55,379 [main] 错误 org.apache.pig.PigServer - 解析时异常:解析时出错。找不到表: 未找到 default.movi​​e 表解析失败:无法检索架构 来自加载程序 org.apache.hive.hcatalog.pig.HCatLoader@25bdba7a 在 org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:198) 在 org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1678) 在 org.apache.pig.PigServer$Graph.access$000(PigServer.java:1411) 在 org.apache.pig.PigServer.parseAndBuild(PigServer.java:344) 在 org.apache.pig.PigServer.executeBatch(PigServer.java:369) 在 org.apache.pig.PigServer.executeBatch(PigServer.java:355) 在 org.apache.pig.tools.grunt.GruntParser.executeBatch(GruntParser.java:140) 在 org.apache.pig.tools.grunt.GruntParser.processDump(GruntParser.java:769) 在 org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:372) 在 org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:198) 在 org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:173) 在 org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:84)

我只想知道,useHCatalog 标志后面是什么。我必须注册什么才能正常工作?

【问题讨论】:

  • 上次我使用 pig 和 hive,我什至没有使用 flag,它无需手动注册任何东西就可以工作......
  • 无论如何,您的错误显示“未找到表”,看起来 HCatLoader 加载正确,否则您会收到不同的错误,说明在类路径中找不到它。

标签: hadoop hive apache-pig


【解决方案1】:

您还必须传递配置单元配置,即文件hive-site.xml,它将指向猪的元存储。否则 pig 不知道去哪里找表信息。

此页面可能会有所帮助:https://cwiki.apache.org/confluence/display/Hive/HCatalog+LoadStore

【讨论】:

  • 您好,您知道如何将该文件指向 pig。我无法从那个文档中弄清楚?
  • 应该是这样的:export PIG_OPTS=-Dhive.metastore.uris=thrift://: 然后启动 pig
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-07-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多