Elastic Search权威指南 第七章 分布式搜索
来源:互联网 发布:步态分析数据 编辑:程序博客网 时间:2024/06/01 09:48
1. 分布式搜索的基本概念
因为当一个CRUD操作发生时,我们会根据一个请求的元数据,_index,_type,_id来判断一个文档属于哪个分片。知道了哪个分片,但是还得搜索这个分片,来查找这个文档。
以上这个任务是找到了文档,接下来还有一个任务,将得到的结果放到一个有序列表中,然后返回给客户端。
以上就是在分布式搜索的两个基本过程:
查询和取回
2. 查询
1. 当一个查询请求请求到请求结点时,请求结点会跟查询请求中的from和size,来建立一个长度为from+size的空优先队列。
2. 根据请求中的信息,将请求转发(广播)到所有相关的分片中,分片也会根据请求中的from和size,创建一个长度为from+size的空优先队列,然后在分片中执行查询请求,将请求结果填充到这个有序优先队列中。排序的依据为_score的值。
3. 每个分片返回一个轻量级有序优先队列,只包含document_id和相应的_score值,请求结点将这些数据进行合并排序到自己的优先队列中,这就代表了最终的结果集。
4. 至此,查询结束。
3. 取回
查询阶段已经已经辨别出哪些document是需要返回给客户端的,在取回阶段就要根据_id,向各个分片取回这些document的_source
- 请求结点根据_id,向相应的分片发送GET请求
- 分片接收到GET请求后,会enrich这些document,然后返回给请求结点
- 请求结点搜集完毕后,会将所有数据放到同一个响应中返回给客户端
阅读全文
0 0
- Elastic Search权威指南 第七章 分布式搜索
- Elastic Search权威指南 第三章 搜索
- Elastic Search权威指南 第二章 分布式文档存储的过程
- Elastic Search权威指南 第四章 映射与分析
- Elastic Search权威指南 第五章 结构化查询
- Elastic Search权威指南 第一章 ES基础概念
- Hadoop权威指南第七章
- javascript权威指南--第七章
- Squid中文权威指南(第七章)
- Squid中文权威指南(第七章)
- JavaScript权威指南:数组(第七章)
- JavaScript权威指南__第七章:数组
- Elastic Search快速上手(3):搜索
- Squid中文权威指南 第七章(磁盘缓存基础 )
- 《HBase权威指南》读书笔记7:第七章 与MapReduce 集成
- JavaScript权威指南读书笔记——第七章 数组
- 初窥javaScrit权威指南,第七章 数组(1)
- 初窥javaScrit权威指南,第七章 数组(2)
- Elastic Search权威指南 第五章 结构化查询
- 不要62
- 设计模式之装饰者模式
- Oracle之使用proc查询多行数据
- opencv中findContours 和drawContours画图函数
- Elastic Search权威指南 第七章 分布式搜索
- ReentrantLock的lock-unlock流程详解
- Java设计模式之迭代器模式
- 老罗:我的奋斗
- 最近一段时间的计划(个人)
- 字典和选择器
- 二叉树的创建|非递归遍历
- python实现KD树模型
- java Console的用法