我可以在分区配置单元表上使用mrjob python库吗?

我可以在分区配置单元表上使用mrjob python库吗?,python,hadoop,streaming,hive,mrjob,Python,Hadoop,Streaming,Hive,Mrjob,我有一个用户访问hadoop服务器/集群的权限,其中包含的数据只存储在hive(avro)中的分区表/文件中。我想知道是否可以在这些表上使用python mrjob执行mapreduce?到目前为止,我一直在本地测试存储在CDH5上的文本文件的mrjob,开发的简单性给我留下了深刻的印象 经过一些研究,我发现有一个名为HCatalog的库,但据我所知,它不适用于python(仅适用于Java)。不幸的是,我没有太多时间学习Java,我想坚持使用Python 您知道在配置单元存储的数据上运行mrj

我有一个用户访问hadoop服务器/集群的权限,其中包含的数据只存储在hive(avro)中的分区表/文件中。我想知道是否可以在这些表上使用python mrjob执行mapreduce?到目前为止,我一直在本地测试存储在CDH5上的文本文件的mrjob,开发的简单性给我留下了深刻的印象

经过一些研究,我发现有一个名为HCatalog的库,但据我所知,它不适用于python(仅适用于Java)。不幸的是,我没有太多时间学习Java,我想坚持使用Python

您知道在配置单元存储的数据上运行mrjob的方法吗


如果这是不可能的,有没有办法将python编写的mapreduce代码流式传输到hive?(我不想将mapreduce python文件上传到hive)

正如Alex所说,Job先生目前不使用avro格式的文件。然而,有一种方法可以直接在配置单元表上执行python代码(不需要Mr.Job,不幸的是失去了灵活性)。最后,我通过执行“addfilemapper.py”并使用TRANSFORM执行SELECT子句,成功地将python文件作为资源添加到配置单元中。。。使用…,将映射器的结果存储在单独的表中。配置单元查询示例:

INSERT OVERWRITE TABLE\u data\u new
挑选
转换(userid、movieid、rating、unixtime)
使用“python weekday_mapper.py”
AS(用户ID、电影ID、分级、工作日)
从u_数据


此处提供了完整示例(在底部):

Mr.Job当前不适用于Avro文件。如果你想使用Job先生,你可以先对数据进行反汇编。Michael Noll有一篇关于Avro工具的好博客: