我是新来的Pig和有困难只是试图加载一个xml文件。导入或解析流式xml加载程序似乎有问题。我需要什么来正确配置或导入解析器?
data = LOAD './data/small.xml'
USING org.apache.pig.piggybank.storage.StreamingXMLLoader(
'Document',
'test'
) AS (
test: {(attr:map[], content:chararray)}
);
这就是错误
org.apache.pig.PigServer - exception during parsing: Error during parsing. Could not resolve org.apache.pig.piggybank.storage.StreamingXMLLoader using imports: [, java.lang., org.apache.pig.builtin., org.apache.pig.impl.builtin.]
Failed to parse: Pig script failed to parse:
更新:我注册了piggybank,现在它可以解析xmloader,但是找不到streamingxmloader
ERROR 1070: Could not resolve org.apache.pig.piggybank.storage.StreamingXMLLoader using imports: [, java.lang., org.apache.pig.builtin., org.apache.pig.impl.builtin.]
4条答案
按热度按时间irlmq6kh1#
就连我也有类似的问题。我首先通过反编译工具jdgui验证了类streamingxmloader的存在。您可以在提供的屏幕截图中找到相同的内容。
此后,我遵循以下示例:http://www.sppavankumar.com/xmlloader-for-pig-big-data/
它对我有用。
ehxuflar2#
看起来流式xml加载器只在mortar版本的pig上可用。
以下是迫击炮的回复:
streamingxmloader目前只在mortar版本的pig中可用,尽管我们确实希望将来能提供它。对于在迫击炮外使用pig,xmlloader可能是最好的选择。
ubof19bj3#
既然你用的是
StreamingXMLLoader
是的,你需要在脚本开始时导入。例如
axkjgtzd4#
转到pig lib并检查apache pig xmloader master,如果没有下载,则将其放入pig lib位置
我的是:
/usr/local/hadoop/pig/lib/apache pig xmloader主程序