【发布时间】:2019-08-05 16:24:30
【问题描述】:
我有一个数据集,其中包含来自世界各地 150 个国家/地区的地址,您的任务是验证它们,数据存储在 3 个字段中 - 地址行、城市、邮政编码。我也有每个国家的地址验证解决方案,但数据集不包括国家代码。任务是设计将处理数据并为每条记录查找国家/地区的逻辑,以便可以通过验证组件运行它们。什么是最有效的方法。
由于对每条记录运行所有 150 个地址验证组件被认为效率不高,我正在考虑并行处理并使用 map reduce。我的逻辑如下:
一种可能的解决方案需要在 map/reduce 框架中采用分布式方法和并行处理,例如:
可以将数据集分成相等的“块”,每个国家/地区将在不同的集群上并行处理。
在每个块上运行的映射函数可以将每个地址映射到其各自的国家代码。
- 洗牌阶段将按国家/地区汇总映射器函数的所有输出
- 最后,在每个国家块上运行的 reduce 函数将验证它们各自国家的地址,结果只有每个国家的有效地址。
我不知道这是否有意义,或者是否有可能使用 map/reduce 实现此功能。我之所以想到这个解决方案,是因为我记得我们在大学时代做过的一些关于云计算、并行处理和大数据的课程。任何建议或不同的方法都非常受欢迎......这是工作面试谢谢......
【问题讨论】:
-
我添加了
hadoop标签,因为它应该比其他标签吸引更多的关注。
标签: validation hadoop parallel-processing mapreduce