扩展Hive:编写一个同时执行Map和Reduce操作的UDF

时间:2013-04-18 05:18:48

标签: hadoop mapreduce hive user-defined-functions

我正在开发一个项目来扩展Hive以支持一些图像处理功能。

要做到这一点,我们需要读入image,将其分解为多个文件,将每个文件传递到一个单独的Map任务,对其进行一些处理,然后将它们缩减回一个图像以便返回给用户。

为此,我们计划在Hadoop中实现一个UDF来调用MapReduce任务。但是,根据我们的理解,UDF只会运行either on the Map side OR the Reduce side of the HQL query,而我们需要在地图和减少方面之间理想地“bridge the gap”。

Hive documentation并不是最有帮助的,我正在寻找一些关于从哪里开始寻找更多相关信息的指示。 如果我对问题不够清楚,请随时提出更多问题。

2 个答案:

答案 0 :(得分:0)

研究HIPI(Hadoop图像处理接口)可能会给你一个开始。 特别是,计算一堆图像的主成分的例子可能很有用。

答案 1 :(得分:0)

使用UDF(用户定义的聚合函数)。这有一种地图和减少阶段。