Mapper任务可以处理不同的数据库列

时间:2012-11-26 18:29:45

标签: hadoop mapreduce

我们有一个场景,我们希望单个Hadoop作业创建/管理多个映射器任务,其中每个映射器任务将查询关系数据库表中的列子集。我们查看了DataDrivenDBInputFormat,但这似乎只是为了促进分区,每个映射器任务可以查询关系数据库表中的行子集。

赞赏这方面的任何建议。感谢。

1 个答案:

答案 0 :(得分:0)

我建议您编写一个映射器来读取两组列的并集。您可以在同一个映射器中执行多个映射器任务,或者只将数据转储到具有多个后续映射器的顺序文件中,仅使用该文件所需的内容。这取决于两组映射器输出相互之间的相关程度,以及它们在流程后期的相同hadoop步骤中输入的速度有多快。