Kibana实现增删改查
ElasticSearch类似于关系型数据库,可以使用Kibana对ElasticSearch进行增删改查。
关系型数据库与ES对比:
关系型数据库 | ElasticSearch |
---|---|
数据库(DB) | 索引(Index) |
表(Table) | 类型(type) |
行(Row) | 文档(Docments) |
列(Columns) | 字段(Fields) |
在Kibana的管理界面,可以进行数据的增删改查:
1. 新增索引(注意不能出现大写):
PUT /user_dao
2. 查询索引:
GET /user_dao
3. 添加文档 /索引名称/类型/id:
PUT /user_dao/user_table/1
{
"name":"ylw",
"sex":0,
"age":22
}
4. 查询文档:
GET /user_dao/user_table/1
5. 修改文档:
PUT /user_dao/user_table/1
{
"name":"ylw666",
"sex":0,
"age":22
}
查询:
6. 删除索引:
DELETE /user_dao
Elasticsearch版本控制
1.为什么要进行版本控制?
答:为了保证数据再多线程操作下的准确性
2.悲观锁和乐观锁
悲观锁:假设会发生并发冲突,屏蔽一切可能违反数据准确性的操作
悲观锁:假设不会发生并发冲突,只在提交操作是检查是否违反数据完整性。
3.内部版本控制和外部版本控制
- 内部版本控制:_version自增长,修改数据后,_version会自动的加1
- 外部版本控制:为了保持_version与外部版本控制的数值一致,使用
version_type=external
检查数据当前的version值是否小于请求中的version值。