开发者学堂课程【ElasticSearch 最新快速入门教程:ES 工作原理】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/642/detail/10589
ES 工作原理
内容介绍:
一、ES 定义
二、ES 工作原理
一、ES 定义
ES 是 ElastiSearch 的缩写,ES 是一款基于 Apache Lucene 构建的开源搜索引擎,它采用 Java 编写并使用 Lucene 构建索引、提供搜索功能,
ElasticSearch 的目标是让全文搜索变得简单,开发者可以通过它简单明了的 RestFul API 轻松地实现搜索功能,而不必去面对 Lucene 的复杂性。
ES 能够轻松的进行大规模的横向扩展,以支撑PB级的结构化和非结构化海量数据的处理。
一言以蔽之:
ElasticSearch 是一款基于 Lucene 的实时分布式搜索和分析引擎。
ElasticSearch 设计主要用于云计算中,能够达到实时搜索、稳定、可靠、快速,安装使用也非常方便。
官网: www.elastic.co
打开官网查看一下,
Elastic 里面包含各种技术,Kibana 是进行数据的可视化,Elasticsearch 是进行数据的索引的搜索引擎,Logstash 是进行数据的采集,后面会对这些框架进行详细的说明。
二、ES 工作原理
首先要搭建一个索引库,一个 ES 集群,这个 ES 的集群里会放很多索引信息,假如百度后台是使用 ES 服务器,那么怎么在这个集群里搜索数据呢?
首先由多个爬虫从互联网上源源不断的抓取数据,再存在百度的索引库中,后台建一个网站进行数据的录入,在网页中输入关键字,然后百度检索相关的数据会送到客户端,然后再通过浏览器把他显示出来。
比如说我们现在搜索的是 elasticsearch 这个关键字,我百度一下,
就这一瞬间后台检索到了11500000个关键信息,为什么这么快呢?
具体步骤 :
1.录入待检索的关键字
2.点击按钮【百度一下】
3.像百度后台的 ES 集群发送请求
4.百度索引库集群针对用户传过来的检索关键进行搜索,将搜索后的结果分页反馈给客户端。
5.浏览器收到了来自远程 ES 服务器反馈的结果,将其解析后显示在页面上。
除此以外还有两个前提:
前提1:ES 集群实现已经搭建完毕。
前提2:使用网络爬虫的技术从网络上抓取海量的数据,存入到百度的索引库集群中。