1.按照官网把Elasticsearch装好,可以是单节点,也可以装集群。然后装好kibana。在kibana 的devtools里面做查询
查询集群健康状态
GET /_cat/health?v
返回结果
获取集群列表节点 ,可以看出集群的机器IP 等使用情况,和master节点
GET /_cat/nodes?v
ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
192.168.1.6 46 82 0 0.24 0.06 0.06 mdi * node-6 (master节点)
192.168.1.5 77 89 1 0.00 0.01 0.05 mdi - node-5
192.168.1.7 67 91 0 0.00 0.03 0.05 mdi - node-7
2. 在 es 种 分别是 索引(index) 类型(type) 文档(document) 分别顺序对应(相当于mysql中的)
数据库 表 表中的记录 (这是前置条件)
3. 可以想象以下熟悉的mysql ,操作如下 1.)新建一个数据库名字叫 bank 然后建议一张表叫 _doc ,OK,接下来
就是插入数据了,然后就是CRUD操作。在es中增删改查分别对应 PUT DELETE POST GET 四种htpp请求方式
4.在es 中 首先新建一个 索引(相当于数据库)在kibana 的devtools 的console中输入如下命令
新建索引 + 新建类型 + 插入数据
PUT /bank/_doc/_bulk?pretty&refresh
{"index":{"_id":"1"}}
{"account_number":1,"balance":39225,"firstname":"Amber","lastname":"Duke","age":32,"gender":"M","address":"880 Holmes Lane","employer":"Pyrami","email":"amberduke@pyrami.com","city":"Brogan","state":"IL"}
{"index":{"_id":"6"}}
{"account_number":6,"balance":5686,"firstname":"Hattie","lastname":"Bond","age":36,"gender":"M","address":"671 Bristol Street","employer":"Netagy","email":"hattiebond@netagy.com","city":"Dante","state":"TN"}
以上操作就相当于即新建了索引也新建了type,同时插入了数据。返回结果如下,是一个json 字符串
解释jsoN中的意思 : took : 185 花费了185毫秒 items中包含的是成功插入了俩条数据的一些字段,里面可已清晰的看到
_index 是 bank type 是_doc 等一些信息。
查询数据
省略URL方式方式,直接是请求体查询, 在工具中GET 请求才可以携带body
GET /bank/_search
{
"query": { "match_all": {} },
"sort": [
{ "account_number": "asc" }
],
"size": 20,
"from": 0
}
以上操作是分页操作 相当于
select * from bank order by account_number limit 0,20
query 中没有任何查询条件, size 每页20条 ,从第0条开始,并且正序排序 account_number 字段
如果不想带任何请求体(条件)的话可以直接使用 GET /bank/_search 查询 ,默认是 返回 10 条
删除操作
使用delete ,可以删除索引和数据 ,以下是删除 id 为1 的记录
DELETE /bank/_doc/1
#相当于SQL delete _doc where id = 1