Elasticsearch 入门篇

一、Elasticsearch :分布式、高性能、高可用、可伸缩的搜索和分析系统;

特点: 分布式、搜索、数据分析;

一、Elasticsearch的功能

(1)分布式的搜索引擎和数据分析引擎

 

(2)全文检索,结构化检索,数据分析

 

(3)对海量数据进行近实时的处理

 

 

二、Elasticsearch的适用场景

(1)维基百科,全文检索,高亮,搜索推荐

(2)The Guardian(国外新闻网站),用户日志+社交网络数据,分析,新闻文章的公众反馈

(3)Srack Overflow(国外的程序异常讨论论坛),全文检索,搜索相关问题和答案

(4)

(5)

(6)

(7)

(8)

(9)

 

 

 

 

 

假设数据库里有100万条数据:

数据库查询

  按照之前的思路,需要扫描100万次,而且每次扫描,都需要匹配那个文本所有的字符,确认是否包含搜索的关键词,而且还不能将搜索词拆解开来进行检索

 

倒排索引:如果有100万条数据,拆解出来的词语,假设有1000万个词语,那么在倒排索引中,就有1000万行,我们可能并不需要搜索1000万次。

         很可能在第一次的时候,就可以找到这个搜索词对应的数据;也可能在第100次或在第1000次

Lucene:  就是一个jar包,里面包含了封装好的各种建立倒排索引,以及进行搜索的代码,包括各种算法。我们进行开发的时候,直接引入lucene的jar, 然后基于lucene进行开发就好;

    用lucene,我们就可以去将已有的数据建立索引,lucene会在本地磁盘上面,给我们组织索引的数据结构;另外,我们也可以用lucene提供的功能和api来针对磁盘上的索引数据,进行搜索;

 

es工作原理:

 

es文档管理:

 

es索引管理:

es搜索

 

es聚合分析:

 

es分词:

 

es数据建模:

 

posted @ 2022-03-31 11:50  IT6889  阅读(60)  评论(0编辑  收藏  举报