2020阿里(高德地图)P7面试之hash分治原理(大数据)
1.题目:是有一个1TB 的文件里面每行是一个ip 求IP出现的次数最多多少次?内存只有1G可用。
2.这个题目是我刚刚面试高德的高精度地图一位面试官问道的问题,我当时第一反应其实是知道分治的原理但是因为本人当时有点慌,再加上之前接触大数据的经验比较少,所以回答的很仓促,没有回答好,后面我仔细的研究了一下haddop 的基本原理后来发现了原来这道题就是考的hash 分治原理。
3.解决方案如下图所示
核心的思路就是通过对每一行数据做hashcode 值与n 取余数定位到小文件,然后在对小文件进行遍历得道ip 出现次数最多的ip 。