初识ElasticSearch


一、ElasticSearch是什么?

ElasticSearch 是分布式搜索和分析引擎。

它具有分析日志的功能,通常与Logstach和Kibana联合使用。

ElasticSearch将多台机器中出现的日志信息进行了集中分析,分析后对数据进行了展示,在Kibana中可以直接看到日志情况,再接入一些实时计算模块,可以做实时报警功能。

ElasticSearch核心功能是反向索引功能,根据其反向所以可以查询到关键的日志信息。

Logstach 是什么?

Logstach 具有搜集数据的功能,是日志收集系统。

Kibana 是什么?

Kibana是数据可视化平台,可以用图表的方式来展示数据。


二、关键概念的引入

1、什么是搜索?

(1)常见的网页中都会有一个搜索框,可以用来搜索内容,这些搜索我们通常都能够根据关键字进行相关查询,比如搜索游戏,会出现‘手机游戏’、‘PC游戏’、‘主机游戏’等等。

(2)系统中的文件搜索,在windows操作系统中查询文件。

这些例子都属于搜索,搜索就是通过一些关键字,查询出来根这些关键字相关的信息。

2、全文检索

全文检索是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的的检索方式。这个过程类似于通过字典中的检索字表查字的过程。

全文检索的方法主要分为按字检索和按词检索。

按字检索是指对于文章中的每一个关键字都建立索引,检索时将词分解为字的组合。

按词检索指对文章中的词,即语义单位建立索引,检索时按词检索,并且可以处理同意项等。英文等西方文字由于按照空白切分词,因此实现上于按字处理类似,添加同义处理也更容易。中文等东方文字则需切分字词,以达到按词索引的目的。

3、倒排索引

按照数据库中学到的内容,我们为每个表的id都建立索引,按照最理想的情况我们根据id来对值进行查找。

而倒排索引是根据内容查找id,再根据id查询真正的内容。

再倒排索引中,我们采用全文检索中的字或词作为关键字,为其绑定和该关键词有关的信息或内容。

例如倒排索引的表为:

关键字ID
游戏1、2、3、4
手机2
switch1
PS43
PC4

MySQL等数据库信息。

IDMessage
1switch游戏
2手机游戏
3PS4游戏
4PC游戏

通过上述两个表,我们看出,倒排索引就是将关键字作为关键字索引信息,查询到具有该信息的ID值,再根据该ID值查询出具体的内容。

4、Lucene

Lucene是一个jar包,包含各种建立倒排索引的方法。

ElasticSearch能够请搜访问建立在Lucene上的全套搜索能力。

ElasticSearch是分布式的,在Lucene的非分布式的基础上可以检索到更多的信息,同时也由于其是分布式的,可以将数据在多台服务器上进行备份,提高了数据的安全性。


三、ElasticSearch的优点

1、分布式的功能
2、数据高可用性
3、API更简单
4、支持多种语言
5、支持PB级的数据
6、完成搜索的功能和分析功能
7、基于Luncene,隐藏了Luncene的复杂性


四、搜索引擎原理

1、搜索引擎的原理就是建立倒排索引。
2、采用倒排索引,将文章中内容的关键字建立索引。
3、在Luncene的基础上进行了封装,实现了分布式搜索引擎。
4、ElasticSearch中的索引、类型和文档概念类似于Mysql中的数据库、表和行。
5、ElasticSearch采用Master-slave架构,实现了数据库的分片和备份。


总结

总结一下,ES是一个基于倒排索引的分布式的分析工具,即提供了分布式的副本提高了安全性,又高性能的分析了关键词内容。是用来分析的必备。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值