青岛达内的小编总结,正向索引开发出来用来存储每个文档的单词的列表。正向索引的查询往往满足每个文档有序频繁的全文查询和每个单词在校验文档中的验证这样的查询。在正向索引中,文档占据了中心的位置,每个文档指向了一个它所包含的索引项的序列。也就是说文档指向了它包含的那些单词,而反向索引则是单词指向了包含它的文档,很容易看到这个反向的关系。
扩展:
问题实例:文档检索系统,查询那些文件包含了某单词,比如常见的学术论文的关键字搜索。
秘技五 外排序
适用范围
大数据的排序,去重
基本原理及要点
外排序的归并方法,置换选择败者树原理,最优归并树
1G大小的一个文件,每一行一个词,词大小不超过16B,内存限制大小是1M.返回频数最高的100词
这个数据具有很明显的特点,词的大小为16B,但内存只有1M,做hash明显不够,所以可以用来排序。内存可以当输入缓冲区使用。

秘技六 MapReduce
计算模型,简单的说就是将大批量的工作(数据)分解(MAP)执行,然后再将结果合并成最终结果(REDUCE)。这样做的好处是可以在任务被分解后,可以通过大量机器进行并行计算,减少整个操作的时间原理就是一个归并排序。
适用范围
数据量大,但是数据种类小可以放入内存
基本原理及要点
将数据交给不同的机器去处理,数据划分,结果归约给读者看最后一道题,如下:
非常大的文件,装不进内存。每行一个int类型数据,现在要你随机取100个数。
发现上述这道题,无论是以上任何一种模式/方法都不好做,那有什么好的别的方法呢?我们可以看看:操作系统内存分页系统设计(说白了,就是映射+建索引)。
Windows 2000使用基于分页机制的虚拟内存。每个进程有4GB的虚拟地址空间。基于分页机制,这4GB地址空间的一些部分被映射了物理内存,一些部分映射硬盘上的交换文 件,一些部分什么也没有映射。
以上就是青岛达内给大家做的内容详解,更多关于UI的学习,请继续关注青岛达内