【水分高高】

ElasticSearch具备水平伸缩性、分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。

一、核心概念
节点(node):单个Elasticsearch实例,通常一个节点运行在一个隔离的容器或虚拟机中。
集群(Cluster):ES集群是一个或多个节点的集合,它们共同存储了整个数据集,并提供了联合索引以及可跨所有节点的搜索能力。
主节点:主节点的主要职责是和集群操作相关的内容,如创建或删除索引,跟踪哪些节点是群集的一部分,并决定哪些分片分配给相关的节点。
数据节点:存储数据。
Mapping: 相当于数据库中的schema,用来约束字段的类型。

其它概念:

【骗驸马、库表行列;引泪文字】

分片(shard): 分布在不同节点的数据就是分片. ES自动管理和组织分片, 并在必要的时候对分片数据进行再平衡分配, 所以用户基本上不用担心分片的处理细节. (同一个索引在物理上可以切多个分片,分布到不同的节点上。)

副本(replica): ES默认为一个索引创建5个主分片, 并分别为其创建一个副本分片. 也就是说每个索引都由5个主分片成本, 而每个主分片都相应的有一个copy。

Mapping字段类型:  text、keyword、数字类型(integer、float)、array(数组类型,不需要定义)、boolean、date、binary

ElasticSearch知识精华总结 ElasticSearch口诀诀窍_数据

二、Restful Api

【GDPP  读删更新】 

核心概念:
           Restfull API:通俗的理解就是用URL定位资源,用HTTP动词来表达对资源的操作。

实例:
                资源描述(用名词):http://api.example.com/v1/user //表示用户信息

                资源操作(用动词):

    GET:读取(Read)

              POST:新建(Create)

              PUT:更新(Update)

              DELETE:删除(Delete)

例如:

用GET请求http://api.example.com/v1/user 表示获取用户信息

用POST请求http://api.example.com/v1/user表示新增用户

用PUT请求http://api.example.com/v1/user表示更新用户信息

用DELETE请求http://api.example.com/v1/user表示删除用户信息

三、请求
         curl与ElasticSearch交互请求格式:curl -X<VERB> '<PROTOCOL>://<HOST>/<PORT>?<QUERY_STRING>' -d '<BODY>'

VERB:HTTP协议的请求方法,常用的有GET、POST、PUT、HEAD以及DELETE;
PROTOCOL:协议类型,http或https;
HOST:ES集群中的任一主机的主机名;
PORT:ES服务监听的端口,默认为9200;
QUERY_STRING:查询参数,例如?pretty表示使用易读的JSON格式输出;
BODY:JSON格式的请求主体;
      实例:

【存储 索引 检索、查询 编码 算法 分析】 7剑下天山

.store 底层IO操作

.index 索引建立、删除

.search  根据查询条件,检索得到结果

.queryParser  实现查询语法,支持关键词间的运算,如与、或、非

.codecs 自定义编码和结构

.util 公用的算法类

 .analysis 对索引的文档和查询词进行切词,支持中文扩展此类