分布式搜索elasticsearch

1、什么是elasticsearch?

        elasticsearch是一个非常强大的开源搜索引擎,可以帮助我们从海量数据库中快速找到需要的内容。如:百度、京东商城,所有关键字都会高亮显示。

elasticsearch具备下列优势:

  • 支持分布式,可水平扩展
  • 提供Restful接口,可被任何语言调用

2、正向索引和倒排索引

        正向索引

传统数据库(如MySQL)采用正向索引,例如给下表(tb_ goods)中的id创建索引:

如果表中的字段特别多的话,这种逐表进行搜索性能就会很低。

         倒排索引

elasticsearch采用倒排索引:

倒排索引存储时,它先把文档中的内容分成词条存储,如果有重复的词条,记录文档的ID即可。elasticsearch的底层就是基于倒排索引。

  • 文档( document) :每条数据就是一个文档。
  • 词条(term) :对文档的内容进行分词,得到的词语就是词条。

3、文档

elasticsearch是面向文档存储的,可以是数据库中的一条商品数据,一个订单信息。

文档数据会被序列化为json格式后存储在elasticsearch中。

相关文章

TCP/IP套接字登录方法是MySQL在一切服务平台都提供的一种登录...
easy-rule规则引擎最佳落地
Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分...
最近壹哥的一个学生,在利用spring-data-elasticsearch访问E...
java 操作elasticsearch详细总结
原文链接:http://www.ruanyifeng.com/blog/2017/08/elastic...