You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
yellow open question_index sunRjkjmRYGuwg5-CLJokA 5 1 0 0 1.1kb 1.1kb
{
"acknowledged":true
}
shellbye@localhost:~$ curl "localhost:9200/_cat/indices?v"
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
可以看到此时已经没有任何索引了。🙂
The text was updated successfully, but these errors were encountered:
ES安装好之后(参考 #5 ),可以使用以下命令进行简单的操作。
创建索引
ES的索引,在6.x之后,可以初略的理解为相当于关系型数据库概念里面的表。与关系型数据库不一样的地方在于ES的索引并不强制要求结构化。所以最简单的一个存储题目的索引(question_index)就可以创建如下:
以下为输出
创建完成之后可以通过以下命令查看索引列表(相当于MySQL里面的
show tables
):以下为输出
有了索引之后,写下来就可以向索引里面写入数据(增)了。
写入数据(增)
以下为输出
通过返回数据里面的
"result" : "created"
我们可以看到这个新的条目创建成功了,这里需要注意以下请求url里面的1
、我输入的数据里面的{"id": "1001"}
,和返回的"_id" : "1"
。其中输入的url里面的1表示我指定了这个新增的题目在ES内部的id,我输入的数据里面的{"id": "1001"}
则是数据本身的一个标志id,对于ES来说,它和别的字段都是一视同仁的,那么返回的"_id" : "1"
,即对应请求url里面的1
。做个实验会更加明白:
以下为输出
好了,添加数据之后,我们就可以进行接下来的修改数据(改)了。
修改数据(改)
通过修改数据,也可以更加清晰的理解前面的url里面的和返回的
_id
了.以下为输出
如上所示,只要提供的id是已经有的,那么就是相当于是一次更新操作(
"result" : "updated",
)。当然也可以显示的在请求的url后面加上_update
,但是这个时候要注意和不加_update
的操作的http方法不一样,而且参数外面也多了一层doc
,如下所示:以下为输出
查找数据(查)
ES里的“查找”,有两层含义
以下为输出
以下为输出
以下为输出
如上所示的搜索,输入的关键字是
calculate
,正确的返回了包含该关键字的数据。删除数据(删)
最后是删除数据,之所以最后写删除数据,是因为一旦删除了之后,还得重新添加,比较麻烦,所以就把删除数据的demo写到最后了。
以下为输出
删除数据之后可以通过查看总数来确认删除:
以下为输出
可以看到我们创建并添加了两条数据、删除了一条数据的索引目前只有一条数据了。
删除索引
删除索引和删除数据的接口基本一致,就是末尾少了几个参数
以下为输出
可以看到此时已经没有任何索引了。🙂
The text was updated successfully, but these errors were encountered: