Map Reduce及其方法之一:分布式索引构建方法

分布式索引构建方法

》大规模的索引构建必须使用一个分布式的计算机集群,比如Web
》利用集群中的主控节点来指挥索引构建工作
》将索引构建过程分解成一组并行的任务
》主控计算机从集群中选取一台空闲的机器并将任务分配给它
在这里插入图片描述
文档集分割:基于词项,文档
在这里插入图片描述
分析器Parsers .
主节点将一个数据片分配给一台空闲的分析服务器
分析器依次读取文档并生成<词项,文档>对
分析器将这些<词项,文档>对分成j个段
每一段是按照词项首字母划分的一个区间,例如: a-f, g-p, q-z,这里j=3
然后可以进行索引的倒排

倒排器:
对于一个词项分区,倒排器收集所有的<词项,文档>对(也就是“倒排记录")排序,并写入最终的倒排记录表

在这里插入图片描述
在这里插入图片描述
MapReduce
 Google索引系统由各个不同的阶段组成,每个阶段都是MapReduce的一个应用,索引构建只是其中的一个阶段,另一个阶段是:将基于词项划分的索引表转换成基于文档划分的索引表
 ■基于词项划分的:一台机器处理所有词项的一个子区间
 ■基于文档划分的:一台机器处理所有文档的一个子区间
大部分搜索引擎都是采用基于文档划分的索引表-为什么?
更好的负载平衡

Map和Reduce函数的架构
■Map:输入->list(k,v) Reduce:(k,list(v))->输出
 索引构建中上述架构的实例化
■Map: Web文档集—> list(词项,文档1D)
■Reduce: (<词项1 ,list(文档ID)>,<词项2,list(文档1D)…)—> (倒排记录表1,倒排记录表2…)
在这里插入图片描述
MAP:
在这里插入图片描述
Reduce:
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心灵排骨汤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值