基本Rest命令说明:
method | url地址 | 描述 |
PUT(创建,修改) | localhost:9200/索引名称/类型名称/文档id | 创建文档(指定文档id) |
POST(创建) | localhost:9200/索引名称/类型名称 | 创建文档(随机文档id) |
POST(修改) | localhost:9200/索引名称/类型名称/文档id/_update | 修改文档 |
DELETE(删除) | localhost:9200/索引名称/类型名称/文档id | 删除文档 |
GET(查询) | localhost:9200/索引名称/类型名称/文档id | 查询文档通过文档ID |
POST(查询) | localhost:9200/索引名称/类型名称/文档id/_search | 查询所有数据 |
测试
1、创建一个索引,添加
PUT / test1 / type1 / 1 {
"name": "流柚",
"age": 18
}
2、字段数据类型
- 字符串类型
-
- text、keyword
-
-
- text:支持分词,全文检索,支持模糊、精确查询,不支持聚合,排序操作;text类型的最大支持的字符长度无限制,适合大字段存储;
- keyword:不进行分词,直接索引、支持模糊、支持精确匹配,支持聚合、排序操作。keyword类型的最大支持的长度为——32766个UTF-8类型的字符,可以通过设置ignore_above指定自持字符长度,超过给定长度后的数据将不被索引,无法通过term精确匹配检索返回结果。
-
- 数值型
-
- long、Integer、short、byte、double、float、half float、scaled float
- 日期类型
-
- date
- 布尔类型
-
- boolean
- 二进制类型
-
- binary
- 等等…
3、指定字段的类型(使用PUT)
类似于建库(建立索引和字段对应类型),也可看做规则的建立
PUT / test2 {
"mappings": {
"properties": {
"name": {
"type": "text"
},
"age": {
"type": "long"
},
"birthday": {
"type": "date"
}
}
}
}
4、获取建立的规则
GET test2
5、获取默认信息
_doc
默认类型(default type),type 在未来的版本中会逐渐弃用,因此产生一个默认类型进行代替
PUT / test3 / _doc / 1 {
"name": "流柚",
"age": 18,
"birth": "1999-10-10"
}
GET test3
如果自己的文档字段没有被指定,那么ElasticSearch就会给我们默认配置字段类型
扩展:
1. GET _cat/indices ○ 作用:列出集群中所有的索引。 ○ 输出:包括索引名、健康状态、文档数、删除文档数、索引大小、主分片数、副本分片数等信息。 2. GET _cat/aliases ○ 作用:列出集群中所有的别名及其对应的索引。 ○ 输出:包括别名、索引名、过滤器等信息。 3. GET _cat/allocation ○ 作用:显示集群的分片分配情况,包括哪些节点上分配了哪些分片。 ○ 输出:包括分片ID、索引名、分片类型(主或副本)、分配到的节点ID、是否为主节点、是否正在分配、是否处于初始化状态等信息。 4. GET _cat/count ○ 作用:提供集群中索引、文档、节点等的计数信息。 ○ 输出:包括索引数、文档数、删除文档数、节点数等统计信息。 5. GET _cat/fielddata ○ 作用:显示集群中字段数据的内存使用情况。 ○ 输出:包括节点ID、主机名、IP地址、字段数据使用的内存大小等信息。 6. GET _cat/health ○ 作用:显示集群的健康状态。 ○ 输出:包括集群名、健康状态(红、黄、绿)、节点数、分片数、活动分片数、初始化分片数、未分配分片数等信息。 7. GET _cat/master ○ 作用:显示当前集群的主节点信息。 ○ 输出:包括主节点的ID、IP地址、节点名等信息。 8. GET _cat/nodeattrs ○ 作用:列出集群中所有节点的属性。 ○ 输出:包括节点ID、属性名、属性值等信息。 9. GET _cat/nodes ○ 作用:列出集群中所有的节点及其详细信息。 ○ 输出:包括节点ID、主机名、IP地址、版本、角色(主、数据、客户端等)、内存使用情况、CPU使用情况等信息。 10. GET _cat/pending_tasks ○ 作用:显示集群中等待执行的任务列表。 ○ 输出:包括任务ID、任务类型、任务描述、源节点ID、任务开始时间、任务优先级等信息。 11. GET _cat/plugins ○ 作用:列出集群中所有节点上安装的插件。 ○ 输出:包括节点名、插件名、插件版本等信息。 12. GET _cat/recovery ○ 作用:显示集群中索引分片的恢复状态。 ○ 输出:包括索引名、分片ID、分片类型、源节点ID、目标节点ID、恢复阶段、恢复进度等信息。 13. GET _cat/repositories ○ 作用:列出集群中配置的快照仓库。 ○ 输出:包括仓库名、仓库类型等信息。 14. GET _cat/segments ○ 作用:显示索引的分段信息,包括每个分段的大小、文档数等。 ○ 输出:包括索引名、分片ID、分段名、是否为主分片、大小、文档数、删除文档数等信息。 15. GET _cat/shards ○ 作用:显示集群中所有分片的分配情况。 ○ 输出:包括索引名、分片ID、分片类型(主或副本)、分配的节点ID、状态等信息。 16. GET _cat/snapshots ○ 作用:列出快照仓库中的快照。 ○ 输出:包括仓库名、快照名、快照状态、开始时间、结束时间、持续时间、失败或成功状态等信息。 17. GET _cat/tasks ○ 作用:显示集群中当前正在执行的任务列表。 ○ 输出:包括任务ID、任务类型、任务描述、节点ID、任务开始时间等信息。 18. GET _cat/templates ○ 作用:列出集群中配置的索引模板。 ○ 输出:包括模板名、模板内容等信息。 19. GET _cat/thread_pool ○ 作用:显示集群中线程池的信息。 ○ 输出:包括线程池名、线程数、队列大小、拒绝执行的请求数等信息。
6、修改
两种方案
①旧的(使用put覆盖原来的值)
●版本+1(_version)
●但是如果漏掉某个字段没有写,那么更新是没有写的字段 ,会消失
PUT / test3 / _doc / 1 {
"name": "流柚是我的大哥",
"age": 18,
"birth": "1999-10-10"
}
GET / test3 / _doc / 1 // 修改会有字段丢失
PUT / test3 / _doc / 1 {
"name": "流柚"
}
GET / test3 / _doc / 1
②新的(使用post的update)
●version不会改变
●需要注意doc
●不会丢失字段
POST / test3 / _doc / 1 / _update {
"doc": {
"name": "post修改,version不会加一",
"age": 2
}
}
GET / test3 / _doc / 1
7、删除
GET /test1DELETE /test1
8、查询(简单条件)
GET /test3/_doc/_search?q=name:流柚 //都是满足模糊匹配的