1. 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url? 方案1:可以估计每个文件安的大小为50G×64=320G,远远大于内存限制的4G。所以不可能将其完全加载到内存中处理。考虑采取分而治之的方法。 s 遍历文件a,对每个url ...
第一部分 十道海量数据处理面试题 海量日志数据,提取出某日访问百度次数最多的那个IP。 首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是 位的,最多有个 个IP。同样可以采用映射的方法,比如模 ,把整个大文件映射为 个小文件,再找出每个小文中出现频率最大的IP 可以采用hash map进行频率统计,然后再找出频率最大的几个 及相应的频率。然后再在这 个最大的I ...
2016-09-12 23:56 3 14020 推荐指数:
1. 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url? 方案1:可以估计每个文件安的大小为50G×64=320G,远远大于内存限制的4G。所以不可能将其完全加载到内存中处理。考虑采取分而治之的方法。 s 遍历文件a,对每个url ...
Hash表算法处理海量数据处理面试题 主要针对遇到的海量数据处理问题进行分析,参考互联网上的面试题及相关处理方法,归纳为三种问题 (1)数据量大,内存小情况处理方式(分而治之+Hash映射) (2)判断元素是否在集合中(布隆过滤器+BitMap) (3)各种TOPN ...
1. 海量数据处理常用数据结构 数据结构: 【Bloom Filter】 它实际上是一个很长的二进制向量和一系列随机映射函数 布隆过滤器可以用于检索一个元素是否在一个集合中 它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率和删除困难 ...
背负这样的罪名,:-),同时,此文可以看做是对这篇文章:十道海量数据处理面试题与十个方法大总结的一般抽 ...
随着现在数据量的不断增加,很多大数量的问题随之而来,就得需要我们想办法解决,我找了一些问题并首先思考,然后找到方法,在这里记录一下,未来有需要的同学可以拿走去用。 1. 在海量日志数据里,提取某天访问量最多的IP。 一般处理海量的思路都是分治处理,就是现将数据进行拆分,然后进行处理 ...
BAT、FLAG(Facebook,LinkedIn,Amazon/Apple,Google)这类涉及到大数据的公司面试的时候都喜欢问关于海量数据处理的问题,本文将对海量处理问题进行总结。 我买了July出的《编程之法》,对海量数据处理问题有总结。 问题介绍: 所谓海量数据处理,无非 ...
有这样一种场景:一台普通PC,2G内存,要求处理一个包含40亿个不重复并且没有排过序的无符号的int整数,给出一个整数,问如果快速地判断这个整数是否在文件40亿个数据当中? 问题思考: 40亿个int占(40亿*4)/1024/1024/1024 大概为14.9G ...
在实际的工作环境下,许多人会遇到海量数据这个复杂而艰巨的问题,它的主要难点有以下几个方面:一、数据量过大,数据中什么情况都可能存在。如果说有10条数据,那么大不了每条去逐一检查,人为处理,如果有上百条数据,也可以考虑,如果数据上到千万级别,甚至 过亿,那不是手工能解决的了,必须通过工具或者程序进行 ...