跳到主要内容

十三、Elasticsearch 教程: 文档 API

Elasticsearch 提供了单一文档 API 和多文档 API

索引 API

使用指定的映射请求相应的索引,对在索引中添加或更新 JSON 的帮助是很大的。

例如下面的请求会将 JSON 对象添加到 user_admin 索引和 user 映射下

POST http://localhost:9200/user_admin/user/4?pretty

请求正文

{"nickname":"飞仙","description":"天外飞仙","street":"苏州大学","city":"Suzhou","state":"Jiangsu","zip":"215006","location":[120.65426,31.30797],"money":10485,"tags":["iOS", "Android"],"vitality":"3.4"}

响应内容

{
"_index" : "user_admin",
"_type" : "user",
"_id" : "4",
"_version" : 1,
"result" : "created",
"_shards" : {
"total" : 2,
"successful" : 1,
"failed" : 0
},
"_seq_no" : 1,
"_primary_term" : 1

自动创建索引

当发起一个请求将 JSON 对象添加到特定索引时,如果该索引不存在,则此 API 会自动创建该索引以及创建此 JSON 对象的基础映射

可以通过在 elasticsearch.yml 配置文件中将以下参数的值更改为 false 来禁用此功能

action.auto_create_index:false   禁止自动创建索引
index.mapper.dynamic:false 禁止动态映射

我们还可以限制自动创建索引,只能通过更改以下参数的值来允许具有特定模式的索引名称

action.auto_create_index:+acc*,-bank*

其中+索引 表示允许, -索引 表示不允许

版本化

Elasticsearch 提供版本控制功能