我正在使用Apache MapReduce来解析原始数据并将其加载到数据库中。
My Mapper从文本文件中解析原始数据行 - 每行获取一个唯一的数字ID(键)和一组键值对(值)。
我的Reducer为每个行ID保存数据库中的键值对。
我想通过最左边的两位数字对线路ID进行分组 - 以便减速器将处理以10开头,然后是11,12等的ID。 在处理以11开头的IDS的所有Reducer完成之前,我不希望任何Reducer在以12开头的ID上运行。
可以使用Apache MapReduce实现吗?
谢谢!
答案 0 :(得分:0)
根据我的理解,您可以为每个ID 10,11,12确定减速器的数量和一个减速器。但是,由于Map Reduce是为并行处理而设计的,因此我们无法让12等待11,我们无法做到具有基于数据的依赖性与单个地图减少作业。
您可能会尝试多个MAP减少作业。
希望它能给出一条出路。