点击上方蓝色字体,选择“设为星标”
回复”资源“获取更多资源
![6a29a6f5e12bb88aa27cc39adbf077f5.png](https://i-blog.csdnimg.cn/blog_migrate/ab2a7a1f70fea4f653c05589f3083da5.jpeg)
![88973cefd76ff0fd2edb5379d425308b.png](https://i-blog.csdnimg.cn/blog_migrate/c9caa9b528ce84d8408be50a5982f044.jpeg)
大数据技术与架构 点击右侧关注,大数据开发领域最强公众号!
![33ba93b85141a9406d7f7beff104b8a6.png](https://i-blog.csdnimg.cn/blog_migrate/59dbc9dbf7647223f78a06bc84cb34ed.png)
大数据真好玩 点击右侧关注,大数据真好玩!
![472610459b4b8fa650c818d4e9e96121.png](https://i-blog.csdnimg.cn/blog_migrate/5c5c67204db5350f4fb8db3beaca3639.png)
ok,看了上面这么多的面试题,是否有点头晕。是的,需要一个总结。接下来,本文将简单总结下一些处理海量数据问题的常见方法。下面的方法对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能并不能完全覆盖所有的问题,但是这样的一些方法也基本可以处理绝大多数遇到的问题。下面的一些问题基本直接来源于公司的面试笔试题目,方法不一定最优,如果你有更好的处理方法,欢迎讨论。
一、Bloom filter
适用范围:可以用来实现数据字典,进行数据的判重,或者集合求交集基本原理及要点:对于原理来说很简单,位数组+k个独立hash函数。将hash函数对应的值的位数组置1,查找时如果发现所有hash函数对应位都是1说明存在,很明显这个过程并不保证查找的结果是100%正确的。同时也不支持删除一个已经插入的关键字,因为该关键字对应的位会牵动到其他的关键字。所以一个简单的改进就是 counting Bloom filter,用一个counter数组代替