繁体   English   中英

在python中为Hadoop Map Reduce创建自定义可写键/值类型?

[英]Create custom writable key/value type in python for Hadoop Map Reduce?

我从事Hadoop MR已有一段时间,并且创建和使用了自定义(扩展) Writable类,包括MapWritable 现在,我需要将用Java编写的MR转换为Python。 我没有python的经验,现在正在探索相同的各种库。 我正在研究PydoopMrjob之类的选项。 但是,我想知道这些库是否包含创建类似的自定义Writable类的选项以及如何创建它们。 如果没有,那么有什么可能的替代方法可以做到这一点?

在Pydoop中,对自定义Hadoop类型的显式支持仍然是WIP 换句话说,目前我们并没有为用户简化事情,但是可以通过一些工作来完成。 几个指针:

  • Pydoop已经包含自定义Java代码,该代码与Python软件包一起自动安装为pydoop.jar 我们根据需要将此额外的jar传递给Hadoop。 添加更多Java代码只需将源代码放在src/并将其JavaLib.java_filessetup.py中的JavaLib.java_filesJavaLib.java_files

  • 在Python方面,您需要为新类型使用反序列化器。 例如,请参见LongWritableDeserializer中的pydoop.mapreduce.pipes

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM