我们有一个场景,我们希望单个 Hadoop 作业创建/管理多个映射器任务,其中每个映射器任务将查询关系数据库表中的列子集。我们研究了 DataDrivenDBInputFormat,但这似乎只是为了促进分区,其中每个映射器任务可以查询关系数据库表中的行子集。
感谢这方面的任何建议。谢谢。
最佳答案
我建议您编写一个映射器来读取两组列的并集。您可以在同一个映射器中执行多个映射器任务,或者只是将数据转储到一个顺序文件中,多个后续映射器仅使用该文件中所需的内容。这取决于两组映射器输出之间的相关程度,以及它们在流程后期输入到同一 hadoop 步骤的速度(如果有的话)。
关于hadoop - 在不同的数据库列集上工作的映射器任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13570931/