Elasticsearch——介绍与安装(二)

前言

很多时候我们是搜索引擎的使用者,而不是自己去实现。业内已经有成熟的开源解决方案。

很早以前,业内有一个叫 Lucene 的库,用它我们可以很方便的建立倒排索引。但是 lucene 还是需要懂得搜索引擎的原理的人才能用好。

所以后来又有人基于 Lucene 进行封装,写出了 Elasticsearch。

优点

  • Elasticsearch将搜索引擎的封装都做成了RestFul的api,通过http请求就能对其进行操作。
  • 同时对于海量数据,它还实现了分布式,是一个分布式搜索引擎。

基本概念

  1. Node 与 Cluster

    Elastic 本质上是一个分布式数据库,允许多台服务器协同工作,每台服务器可以运行多个 Elastic 实例。

    单个 Elastic 实例称为一个节点(node)。一组节点构成一个集群(cluster)。

  2. 索引

    此索引并非上文中我们讲的索引,elasticsearch中的索引是存放数据的地方。相当于mysql的数据库。

  3. 类型

    用来定义数据结构的,相当于数据库的一张表。

  4. 文档

    文档是存放最终数据的地方,可以相当于表中的一行。

比如一首诗,有诗题、作者、朝代、字数、诗内容等字段,那么首先,我们可以建立一个名叫 Poems 的索引,然后创建一个名叫 Poem 的类型,类型是通过 Mapping 来定义每个字段的类型。

比如诗题、作者、朝代都是 Keyword 类型,诗内容是 Text 类型,而字数是 Integer 类型,最后就是把数据组织成 Json 格式存放进去了。

Elasticsearch——介绍与安装(二)_2020-07-20-14-17-18.png

注意:Keyword 类型是不会分词的,直接根据字符串内容建立反向索引,Text 类型在存入 Elasticsearch 的时候,会先分词,然后根据分词后的内容建立反向索引。

安装

ubuntu 安装ES

linux 安装ES

linux 集群搭建

参考文档

Elasticsearch 最佳运维实践 - 总结(一)

Elasticsearch 最佳运维实践 - 总结(二)

文章目录
  1. 1. 前言
  2. 2. 优点
  3. 3. 基本概念
  4. 4. 安装
  5. 5. 参考文档
|