当前位置 : 主页 > 网络编程 > 其它编程 >

elasticsearch一款高扩展性的分布式全文检索引擎

来源:互联网 收集:自由互联 发布时间:2023-07-02
什么是ElasticSearch Elaticsearch,简称为es, es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数

什么是ElasticSearch

Elaticsearch,简称为es, es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。es也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。

什么是全文检索

我们生活中有两种数据 ①结构化数据,这类数据通常有一定的格式,长度,例如MySQL ,Oracle等关系型数据库 ②非结构化数据,这类数据通常没有固定的格式,也没有特定的长度,如word 文档,文章等。

什么是全文检索 将非结构化数据中的一部分信息提取出来,重新组织,使其变得有一定结构,然后对此有一定结构的数据进行搜索,从而达到搜索相对较快的目的。这部分从非结构化数据中提取出的然后重新组织的信息,我们称之索引。

例如:字典。字典的拼音表和部首检字表就相当于字典的索引,对每一个字的解释是非结构化的,如果字典没有音节表和部首检字表,在茫茫辞海中找一个字只能顺序扫描。然而字的某些信息可以提取出来进行结构化处理,比如读音,就比较结构化,分声母和韵母,于是将读音拿出来按一定的顺序排列,每一项读音都指向此字的详细解释的页数。我们搜索时按结构化的拼音搜到读音,然后按其指向的页数,便可找到我们的非结构化数据——也即对字的解释。

这种先建立索引,再对索引进行搜索的过程就叫全文检索

虽然创建索引的过程也是非常耗时的,但是索引一旦创建就可以多次使用,全文检索主要处理的是查询,所以耗时间创建索引是值得的。

全文检索的应用场景

对于数据量大、数据结构不固定的数据可采用全文检索方式搜索 一些大型的电商平台,搜索引擎 如百度 谷歌

索引和搜索流程图

elasticsearch 一款高扩展性的分布式全文检索引擎 ①获得原始文档内容 ②创建文档对象 ③利用分词器分析文档 ④创建索引并放进索引库 ⑤用户查询接口创建查询,执行查询,到索引库查询索引,并返回结果,渲染结果并返回给用户

用Postman进行Restful接口访问

1 ElasticSearch的接口语法elasticsearch 一款高扩展性的分布式全文检索引擎 2 操作索引indexelasticsearch 一款高扩展性的分布式全文检索引擎

1.先创建索引后设置Mappingelasticsearch 一款高扩展性的分布式全文检索引擎 2. 删除索引indexelasticsearch 一款高扩展性的分布式全文检索引擎 3. 创建文档documentelasticsearch 一款高扩展性的分布式全文检索引擎

4.修改文档documentelasticsearch 一款高扩展性的分布式全文检索引擎

5.查询文档-根据id查询elasticsearch 一款高扩展性的分布式全文检索引擎

6.查询文档-querystring查询elasticsearch 一款高扩展性的分布式全文检索引擎 7.查询文档-term查询elasticsearch 一款高扩展性的分布式全文检索引擎 8.关键字搜索数据elasticsearch 一款高扩展性的分布式全文检索引擎 9.DSL 查询elasticsearch 一款高扩展性的分布式全文检索引擎 10.高亮显示elasticsearch 一款高扩展性的分布式全文检索引擎 11.聚合elasticsearch 一款高扩展性的分布式全文检索引擎 12.指定响应字段elasticsearch 一款高扩展性的分布式全文检索引擎 13.批量操作elasticsearch 一款高扩展性的分布式全文检索引擎 14._bulk操作elasticsearch 一款高扩展性的分布式全文检索引擎

15.分页elasticsearch 一款高扩展性的分布式全文检索引擎

上一篇:vue后端返回数字回显成汉字写法
下一篇:没有了
网友评论