索引:
一个索引类似于传统关系数据库中的一恶搞数据库,是一个存储关系文档的地方。
1.创建索引并添加内容,PUT
索引名称
megacorp
类型名称
emeployee
特定雇员的ID
1
curl -X PUT “localhost:9200/megacorp/employee/1?pretty” -H ‘Content-Type: application/json’ -d’
{
“first_name” : “John”,
“last_name” : “Smith”,
“age” : 25,
“about” : “I love to go rock climbing”,
“interests”: [ “sports”, “music” ]
}
’
2.检索文档,GET
curl -X GET “localhost:9200/megacorp/employee/1?pretty”
3.将HTTP命令由PUT改为GET可以用来检索文档,同样的,可以使用DELETE命令来删除文档,以及使用HEAD指令来检查文档是否存在,
如果想要更新以存在的文档,只需要再次PUT。
curl -i HEAD “localhost:9200/megacorp/employee/1?pretty”
curl -X DELETE “localhost:9200/megacorp/employee/1?pretty”
4.检索全文,_search
curl -X GET “localhost:9200/megacorp/employee/_search?pretty”
5.条件搜索
curl -X GET “localhost:9200/megacorp/employee/_search?q=first_name:Douglas&pretty”
6. 查询表达式搜索
curl -X GET “localhost:9200/megacorp/employee/_search?pretty” -H ‘Content-Type: application/json’ -d’
{
“query” : {
“match” : {
“last_name” : “Fir”
}
}
}
’
7.更复杂的搜索条件,使用过滤器filter,年龄大于30,gt大于
curl -X GET “localhost:9200/megacorp/employee/_search?pretty” -H ‘Content-Type: application/json’ -d’
{
“query” : {
“bool”: {
“must”: {
“match” : {
“last_name” : “smith”
}
},
“filter”: {
“range” : {
“age” : { “gt” : 30 }
}
}
}
}
}
’
curl -X GET “localhost:9200/megacorp/employee/_search?pretty” -H ‘Content-Type: application/json’ -d’
{
“query”: {
“match”: {
“last_name”: “smith”
}
}
}
’
7.集群健康查看
curl -X GET “localhost:9200/_cluster/health?pretty”
status 字段指示着当前集群在总体上是否工作正常。它的三种颜色含义如下:
green
所有的主分片和副本分片都正常运行。
yellow
所有的主分片都正常运行,但不是所有的副本分片都正常运行。
red
有主分片没能正常运行。
8.添加索引并设置字段类型。
curl -X PUT “localhost:9200/light_gateway?pretty” -H ‘Content-Type: application/json’ -d’
{
“mappings”: {
“default”: {
“properties”: {
“requestTime”: {
“type”: “date”,
“format”: “yyyy-MM-dd HH:mm:ss”
}
}
}
}
}
’