ElasticSearch的利用场景电商产物的搜刮github搜刮项目搜刮引擎的搜刮功用。。。。ElasticSearch次要功用

ElasticSearch次要是用于存储、搜刮、阐发数据。

ELK 手艺

ElasticSearch连系kibana、Logstash、Beats。也就是ELK,用于数据监控、日记阐发等范畴。

kibana: 数据可视化;

ElasticSearch: 存储数据、搜刮、阐发数据。

Logstash 、Beats: 数据抓取。

ElasticSearch底层

ElasticSearch底层是基于Lucene实现。

Lucene是java语言开发的一个类库。

ElasticSearch 核心倒排序正排序

检索数据都需要通过主键才气获取到完好的数据。

例如:查询数据时,若是通过主键查询,能够间接获取到对应的数据。但是,若是查询的列不是主键列,那就会停止回表,通过主键获取对应的数据。

存在问题:

若是停止字符串的模糊查询,关于数据库来说工做量十分大,尤其是模糊查询某个关键字,一般城市是全表扫描。因而,需要一种新的数据构造来优化那个问题。

倒排序

两个根本概念: 文档(Document),关于关系型数据来说就是一条数据。

词条(Trem),通俗一点的意思就是把一条语句,朋分成有意义的词条(组词)。

倒排序的素质就是:按照需要查询的列停止分词,分词完成后,同类的词联系关系对应的文档ID。查询对应的词组时,就能够获取到对应数据所在位置。

通俗一点来讲,倒排序就是按照词典,联系关系对应的文档ID,同时,再查下的时候,按照相关词,间接就能够找到对应的文档(数据)。

小结:

正排序:是给字段创建索引。

倒排序:是给词条创建索引,不是给字段。