搜索|图解 ElasticSearch 原理,你可收好了!( 三 )
节点分配与 Shard 优化:
为更重要的数据索引节点,分配性能更好的机器。
确保每个 Shard 都有副本信息 Replica。
文章插图
路由 Routing:每个节点,每个都存留一份路由表,所以当请求到任何一个节点时,ElasticSearch 都有能力将请求转发到期望节点的 Shard 进一步处理。
文章插图
# 一个真实的请求
如下图:
文章插图
Query
如下图:
文章插图
Query 有一个类型 filtered,以及一个 multi_match 的查询。
Aggregation
如下图:
文章插图
根据作者进行聚合,得到 top10 的 hits 的 top10 作者的信息。
请求分发
这个请求可能被分发到集群里的任意一个节点,如下图:
文章插图
上帝节点
如下图:
文章插图
这时这个节点就成为当前请求的协调者(Coordinator),它决定:
根据索引信息,判断请求会被路由到哪个核心节点。
以及哪个副本是可用的。
等等。
路由
如下图:
文章插图
在真实搜索之前
ElasticSearch 会将 Query 转换成 Lucene Query,如下图:
文章插图
然后在所有的 Segment 中执行计算,如下图:
文章插图
对于 Filter 条件本身也会有缓存,如下图:
文章插图
但 Queries 不会被缓存,所以如果相同的 Query 重复执行,应用程序自己需要做缓存。
文章插图
所以:
Filters 可以在任何时候使用。
Query 只有在需要 Score 的时候才使用。
返回
搜索结束之后,结果会沿着下行的路径向上逐层返回,如下图:
文章插图
文章插图
文章插图
文章插图
文章插图
- 红米手机|全球搜索引擎市场份额:谷歌搜索92.54%,百度搜索1.08%
- 龚俊数字人走进搜索框
- 地址栏|Win10/Win11 学院:如何高效地使用搜索引擎
- se2021 年了,还有搜索引擎比 Google 更懂我?
- 剧本|线上推理你玩过吗?360搜索上线《推理档案局》线上推理项目
- 齐鲁在线网|中国搜索推出“5G融媒搜索” 将为5G全面商用带来全新体验
- 齐鲁在线网|中国搜索“多模态机器狗”亮相中国网络媒体论坛
- s开源神经搜索公司“Jina AI”完成3000万美元A轮融资
- 使用率|进一步打通视频号,微信的大搜索远望
- |千万别在手机上搜索见不得人的东西!真的是太尴尬了...