Elasticsearch是面向文档型数据库,一条数据在这里就是一个文档
倒排索引
正排(正向)索引:
| ID |
content |
| 01 |
my name is zhangsan |
| 02 |
my name is lisi |
倒排索引:
| keyword |
ID |
| name |
01,02 |
| zhang |
01 |
创建索引
创建索引等同于创建数据库
PUT具有幂等性,再次相同数据增加会报错

查询索引&删除
GET 获取信息
GET /shopping

1 2 3 4
| #获取所有索引得详细信息 GET /_cat/indices?v #删除当前索引 DELETE /shopping
|
文档创建
POST非幂等性
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| #根据索引创建文档内容 POST /shopping/_doc { "名字": "张三", "年龄": 30, "职业": "工程师", "邮箱": "zhangsan@example.com", "地址": { "国家": "中国", "城市": "北京" }, "爱好": ["阅读", "旅游"], "已婚": true }
|

1 2 3 4 5 6 7 8 9 10 11 12 13 14
| #根据索引创建文档内容,自定义id属性 POST /shopping/_doc/1001 { "名字": "张三", "年龄": 30, "职业": "工程师", "邮箱": "zhangsan@example.com", "地址": { "国家": "中国", "城市": "北京" }, "爱好": ["阅读", "旅游"], "已婚": true }
|

查询主键&全查询
GET
1 2 3 4
| #查询索引为shopping主键为1001得结果 GET /shopping/_doc/1001 #查询索引为shopping所有结果(会将创建时主键为1001和主键随机得信息都会列举出来) GET /shopping/_search
|
全量、局部修改&删除
PUT全量
POST 局部
DELETE
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| #全量数据覆盖,修改年龄为32 PUT /shopping/_doc/1001 { "名字": "张三", "年龄": 32, "职业": "工程师", "邮箱": "zhangsan@example.com", "地址": { "国家": "中国", "城市": "北京" }, "爱好": ["阅读", "旅游"], "已婚": true }
#局部数据修改,修改年龄为33岁 POST /shopping/_update/1001 { "doc": { "年龄": 33 } }
#删除索引主键为1001 DELETE /shopping/_doc/1001
|
