
海量数据处理
tianmo2010
这个作者很懒,什么都没留下…
展开
-
海量数据处理学习网站
常见海量数据处理:http://www.cnblogs.com/pkuoliver/archive/2010/10/02/mass-data-topic-1.html原创 2011-12-11 21:48:54 · 890 阅读 · 0 评论 -
在大容量数据集中查找前N个数的算法
因工作原因,前阵子看了MTK中关于FM搜频的代码,其中记忆犹新的是一种比较实用的查找算法,我依据它的思想对这个算法做了小小的改动。该算法的作用是在容量加大的数据集中查找前N个最大(也可以是最小,最大和最小不是算法的关键)数字,当然,这里的N一般比较小,如在100,000,000个数中查找前10个最大的数字。传统的算法是先对这100万个数排序,再取前10个,但对这么多的数字排序相当慢,由于只需取转载 2011-12-11 21:25:44 · 2433 阅读 · 1 评论 -
提取出某日访问百度次数最多的那个IP
问题描述:海量日志数据,提取出某日访问百度次数最多的那个IP。方法: 计数法 假设一天之内某个IP访问百度的次数不超过40亿次,则访问次数可以用unsigned表示.用数组统计出每个IP地址出现的次数, 即可得到访问次数最大的IP地址. IP地址是32位的二进制数,所以共有N=2^32=4G个不同的IP地址, 创建一个unsigned count[N];的数组,即可统计出转载 2011-12-11 20:58:51 · 3231 阅读 · 1 评论 -
教你如何迅速秒杀掉:99%的海量数据处理面试题
前言 一般而言,标题含有“秒杀”,“99%”,“史上最全/最强”等词汇的往往都脱不了哗众取宠之嫌,但进一步来讲,如果读者读罢此文,却无任何收获,那么,我也甘愿背负这样的罪名,:-),同时,此文可以看做是对这篇文章:十道海量数据处理面试题与十个方法大总结的一般抽象性总结。 毕竟受文章和理论之限,本文将摒弃绝大部分的细节,只谈方法/模式论,且注重用最通俗最直白的语言阐述相关问题。最后转载 2012-03-27 19:47:08 · 1715 阅读 · 1 评论 -
关于从大量数据中查找唯一数据的几个问题
常见的问题有以下几类:问题一.有101个数,为[1,100]之间的数,其中一个数是重复的,如何寻找这个重复的数,其时间复杂度和空间复杂度是多少?方法:利用和sum1=1+2+3+.....99;sum2=a[0]+a[1]+.....a[99];sum2-sum1=重复的那个值int OnlyOneRepeate(int *iArray,int length){原创 2012-02-28 16:43:23 · 1724 阅读 · 0 评论 -
从海量数据查找有或者没有出现的数据
现在有1千万个随机数,随机数的范围在1到1亿之间。现在要求写出一种算法,将1到1亿之间没有在随机数中的数求出来。 解决办法:一)用一个32位的整数32位表示32个数,1亿/32 = 3125000,使用3.125 * 4M byte空间即可保存1亿个数,即index[3125000].二)对于数n,(n-1) / 32 为其在数组中的下标,table[(n - 1) % 32]与数组原创 2011-10-04 00:21:18 · 8144 阅读 · 23 评论 -
海量数据中寻找中位数
题目:在一个文件中有 10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。只写出思路即可(内存限制为 2G的意思就是,可以使用2G的空间来运行程序,而不考虑这台机器上的其他软件的占用内存)。 关 于中位数:数据排序后,位置在最中间的数值。即将数据分成两部分,一部分大于该数值,一部分小于该数值。中位数的位置:当样本数为奇数时,中位数= (N+1)/2 ; 当样本数为偶数时,中位数为N转载 2012-09-10 11:34:29 · 1321 阅读 · 0 评论 -
常见的海量数据处理方法
一 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url? 方案1:可以估计每个文件安的大小为50G×64=320G,远远大于内存限制的4G。所以不可能将其完全加载到内存中处理。考虑采取分而治之的方法。 s 遍历文件a,对每个url求取 ,然后根据所取得的值将url分别存储到1000个小文件(记为 )中。这样每个小文件的大约为30转载 2011-12-11 21:30:47 · 976 阅读 · 0 评论 -
Bloom Filter概念和原理
Bloom Filter概念和原理 Bloom Filter是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合,并能判断一个元素是否属于这个集合。Bloom Filter的这种高效是有一定代价的:在判断一个元素是否属于某个集合时,有可能会把不属于这个集合的元素误认为属于这个集合(false positive)。因此,Bloom Filter不适合那些“零错误”的转载 2013-01-14 20:37:34 · 1176 阅读 · 0 评论