MapReduce算法设计:计算百万酒店周边一公里地标.pdfVIP

  • 0
  • 0
  • 约1.24千字
  • 约 4页
  • 2026-03-21 发布于北京
  • 举报

MapReduce算法设计:计算百万酒店周边一公里地标.pdf

现有100万酒店坐标和20亿地标,里面记录地标的,请设计mapreduce计

算所有酒店1公里范围内的地标。

我放弃纬度经度了,直接用一个欧式二维平面图来解这道题目。

把坐标换成X和Y,最小单位米,没有小数点。

有两种办法,但都需要2个MR来解决。

1、算法:

第一个MR:在MAP阶段穷举出100万个酒店的所有坐标(单位米),这样酒店

数据会被冗余成

1000000*(999*4+2)=4,998,000,000=49亿条酒店数据。

格式是Key=X,YValue=酒店/地标ID,类型(酒店/地标)。

把聚合出来KEYCount1的数据放到HDFS--〉tmpfile

输出格式是酒店ID数量。

第二个MR:tmpfile根据酒店ID聚合加法得到最果

这个算法最大的就是酒店被穷举的太多,导致MAP至Reduce输出数据太

庞大。

所以了第二个办法,在第一个算法的基础上,实现降维。

降维算法:

第一个MR:

1、根据每个酒店的坐标,找到4个新坐标(X/Y根据半径做+/-法),看蓝线,把

蓝线旋转45度得到新的4

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档