elasticsearch
API命令
将操作用api的形式在postman的url地址栏实现
<HTTP Verb> /<Index>/<Endpoint>/<ID>
分片
-
索引比作数据库,那么分片就是所有数据的文件块,也是最小单元。在ES中,所有数据都会尽可能地存储在集群中各个节点地分片中。假设我们的索引有2个分片,那么当插入10条数据的时候,这10条数据会尽可能均匀地分配在2个分片中。
-
分片越多,在重新平衡时,开销就越大,但是经过平衡后,查询大量小分片的处理速度就更快,但是相应的开销是越大。
-
分片有主分片和副分片之分,副分片的作用是在于当主分片down的时候,可以顶替主分片的位置。
-
设置副本分片:
{ "settings": { "number_of_replicas": "1" } }
采用put方式到setting
集群
- 集群健康:绿色,黄色,红色
节点
- node.master、node.data、node.ingest、xpack.xm.enabled&node.ml
- 再设置多个节点的时候,不同功能作用的节点对应的上面的属性的bool值是不一样的,他们之间的搭配形成了不同功能的节点。有的节点用于数据处理,有的则不对数据进行输出,这就由node.data影响。
快照和还原
增删改查批处理
-
当需要更新document的时候,数据之类的,需要用到 _ update,因为如果么有用它,如用了_doc什么的,会被覆盖。
-
批处理(Batch Processing)
POST /customer/_bulk?pretty {"index":{"_id":"1"}} {"name": "John Doe" } {"index":{"_id":"2"}} {"name": "Jane Doe" }
POST /customer/_bulk?pretty {"update":{"_id":"1"}} {"doc": { "name": "John Doe becomes Jane Doe" } } {"delete":{"_id":"2"}}