1 什么是ES

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

2 ES的相关概念

2.1 cluster

  cluster集群。ElasticSearch集群由一或多个节点组成,其中有一个主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的。ElasticSearch的一个概念就是去中心化,字面上理解就是无中心节点,这是对于集群外部来说的,因为从外部看ElasticSearch集群,在逻辑上是个整体,你与集群中的任何一个节点通信和与整个ElasticSearch集群通信是等价的。也就是说,主节点的存在不会产生单点安全隐患、并发访问瓶颈等问题。

 

2.2 shards

  primary shard:代表索引的主分片,ElasticSearch可以把一个完整的索引分成多个primary shard,这样的好处是可以把一个大的索引拆分成多个分片,分布存储在不同的ElasticSearch节点上,从而形成分布式存储,并为搜索访问提供分布式服务,提高并发处理能力。primary shard的数量只能在索引创建时指定,并且索引创建后不能再更改primary shard数量(重新分片需要重新定义分片规则)。es5.x之后默认为5,es7.x默认为1。

 

2.3 replicas

  replica shard:代表索引主分片的副本,ElasticSearch可以设置多个replica shard。replica shard的作用:一是提高系统的容错性,当某个节点某个primary shard损坏或丢失时可以从副本中恢复。二是提高ElasticSearch的查询效率,ElasticSearch会自动对搜索请求进行负载均衡,将并发的搜索请求发送给合适的节点,增强并发处理能力。可取值为0~n,默认为1。

 

2.4 Index

  索引。相当于关系型数据库中的表。其中存储若干相似结构的Document数据。如:客户索引,订单索引,商品索引等。ElasticSearch中的索引不像数据库表格一样有强制的数据结构约束,在理论上,可以存储任意结构的数据。但了为更好的为业务提供搜索数据支撑,还是要设计合适的索引体系来存储不同的数据。

 

2.5 Type

  类型。每个索引中都必须有唯一的一个Type,Type是Index中的一个逻辑分类。ElasticSearch中的数据Document是存储在索引下的Type中的。

  注意:ElasticSearch5.x及更低版本中,一个Index中可以有多个Type。ElasticSearch6.x版本之后,type概念被弱化,一个index中只能有唯一的一个type。且在7.x版本之后,删除type定义。

 

2.6 Document

  文档。ElasticSearch中的最小数据单元。一个Document就是一条数据,一般使用JSON数据结构表示。每个Index下的Type中都可以存储多个Document。一个Document中可定义多个field,field就是数据字段。如:学生数据({"name":"张三", "age":20, "gender":"男"})。

 

2.7 反向索引(倒排索引)

  对数据进行分析,抽取出数据中的词条,以词条作为key,对应数据的存储位置作为value,实现索引的存储。这种索引称为倒排索引。倒排索引是Document写入ElasticSearch时分析维护的。

 

3 es和kibana在windows安装

  转到

 

4 ELASTICSEARCH-HEAD-MASTER安装

  转到

 

5 文档

  ES官网

  ES文档

  KIBANA文档

  ES中文社区

 

6 ES的数据结构

  ES的数据结构

 

7 ES的字段类型

  ES的字段类型

 

8 ES的元数据

  ES的元数据

 

9 ES分词和ik中文分词器

  ES分词

   ES的IK中文分词器

 

10 ES的mapping

  ES的mapping

 

11 ES的语法

  ES语法

 

12 ES的运行时数据类型

  ES运行时数据类型

 

13 ES的评分机制及如何自定义查询分数机制

  ES评分机制及自定义查询分数机制

 

14 ES的脚本语言paniless

  ES脚本语言painess

 

15 ES的模糊查询、前缀查询、通配符查询、正则表达式查询

  ES模糊查询、前缀查询、通配符查询、正则表达式查询

 

16 ES深度分页deep paging

  ES深度分页deep paging

 

17 ES的正排索引和倒排索引和FieldData

  ES的正排索引和倒排索引和FieldData

 

18 ES集群简单搭建

  ES集群简单搭建

19 ES的配置文件介绍

  ES的配置文件介绍

 

20 logstash简要介绍

  logstash简要介绍

 

21  logstash配置文件及常用插件配置

    LOGSTASH配置文件介绍及常用插件的配置