全文检索及ElasticSearch框架学习

Posted aoyihuashao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了全文检索及ElasticSearch框架学习相关的知识,希望对你有一定的参考价值。

1.   全文检索的通用步骤:

1、建库步骤:   

  a 分词

  b 倒排索引   :  关键词和记录Id的对应关系,1对多。

2、查询步骤:   

  a 分词

  b 查索引

  c 取交集或并集

 技术分享图片

 

 技术分享图片

  

2.    产品使用全文检索的一种场景

 

 技术分享图片

 技术分享图片技术分享图片

 

 

如上图, 

由数据库或者应用软件生成数据,通过logstash导入elasticSearch系统。

Kibana提供了可视化界面或者命令模式可以查询分析系统数据。

当然,elasticSearch也提供了rest接口,可以在各种应用程序中自己调用。

当然了,elasticSearch最大的优点是他是天然分布式的。

下面简单介绍这几个组件。

3.   ElasticSearch介绍

这个之前看过了

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

 

详细看:https://es.xiaoleilu.com/

下载 https://www.elastic.co/downloads/elasticsearch  

 

安装好

 技术分享图片

 

 

4.   Kibana介绍

Kibana 是一个开源的分析和可视化平台,旨在与 Elasticsearch 合作。Kibana 提供搜索、查看和与存储在 Elasticsearch 索引中的数据进行交互的功能。开发者或运维人员可以轻松地执行高级数据分析,并在各种图表、表格和地图中可视化数据。

详细参考: https://www.cnblogs.com/moonlightL/p/7764919.html

官网 https://www.elastic.co/downloads/kibana

 

 

5.   Logstash介绍

Logstash 是一个开源的数据收集引擎,它具有备实时数据传输能力。它可以统一过滤来自不同源的数据,并按照开发者的制定的规范输出到目的地。

顾名思义,Logstash 收集数据对象就是日志文件。由于日志文件来源多(如:系统日志、服务器 日志等),且内容杂乱,不便于人类进行观察。因此,我们可以使用 Logstash 对日志文件进行收集和统一过滤,变成可读性高的内容,方便开发者或运维人员观察,从而有效的分析系统/项目运行的性能,做好监控和预警的准备工作等。

 

而且logstash还能主动从sql中去查数据,配置如下:

 技术分享图片

 

以上是关于全文检索及ElasticSearch框架学习的主要内容,如果未能解决你的问题,请参考以下文章

Elasticsearch全文检索工具入门

ELK在广告系统监控中的应用 及 Elasticsearch简介

ElasticSearch的应用

Elasticsearch-基础介绍及索引原理分析

干货 |《从Lucene到Elasticsearch全文检索实战》拆解实践

干货 |《从Lucene到Elasticsearch全文检索实战》拆解实践