file
segment(段,多个document组成)
document(一条记录,一个对象实例)
field(对象的属性)
term(项,分词之后的词条)
-------------------------对index索引库的创建删除---------------
# yes 创建索引库(数据库一个database)(index)hbase-phone-log
curl -XPUT http://192.168.152.3:9200/hbase-phone-log/
#删除索引库hbase-phone-log
curl -XDELETE http://192.168.152.3:9200/hbase-phone-log/
-------------------------POST方式新增---------------
#add document(一张表,json串中内容为字段) 新增
#创建表(document) bj_phone_logs -d是document的意思,没有指定ID号创建后,es会随机分配一个ID号 注意:嵌套json传中[],内容类型必须一致,不能有多种数据类型
curl -XPOST http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs -d '
{
"from_phone_num" : "13051552591",
"user":[ "东哥" , "28" ],
"calltime" : 300,
"calltype" : 1,
"to_phone_num": "13051552592"
}'
#add document 新增
##创建表(document) bj_phone_logs,会新增一条,没有给定ID号,es分配ID号
curl -XPOST http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs -d '
{
"from_phone_num" : "13051552591",
"user":[ "东哥" , "28" ,"河北衡水" ],
"calltime" : 260,
"calltype" : 1,
"to_phone_num": "13051552592",
"phonetype":"小米MAX3毛豆"
}'
#add document 新增 给定ID123456,则使用给定的ID,不给定,则自动分配
curl -XPOST http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs/123456 -d '
{
"from_phone_num" : "13051552591",
"user":[ "毛豆" , "21" ,"河北冀州" ],
"calltime" : 19,
"calltype" : 2,
"to_phone_num": "13051552593",
"phonetype":"小米MAX2"
}'
-------------------------PUT方式新增---------------
#put:yes
#需给定ID,若不给定ID则会新增失败
curl -XPUT http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs/654321-d '
{
"from_phone_num" : "13051552599",
"user":[ "毛豆" , "21" ,"河北冀州2" ],
"calltime" : 180,
"calltype" : 2,
"to_phone_num": "13051552594",
"phonetype":"小米MAX22"
}'
#给定已有ID,则会覆盖,也就是update
curl -XPUT http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs/654321-d '
{
"from_phone_num" : "13051552599",
"user":[ "毛豆3" , "21" ,"河北冀州2" ],
"calltime" : 99,
"calltype" : 1,
"to_phone_num": "13051552595",
"phonetype":"小米MAX23"
}'
-------------------------重点:查询---------------
#根据document的id来获取数据:(without pretty) pretty标准格式化
curl -XGET http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs/123456?pretty
#根据field来查询数据: 模糊查询,所有field字段中全量模糊查询,一般不用,而且查询条件暴露
curl -XGET http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs/_search?q=user="毛豆"
#根据field来查询数据:match 隐藏查询条件,只在user中模糊查找毛豆
curl -XGET http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs/_search?pretty -d '
{
"query":
{"match":
{"user":"毛豆"}
}
}'
#对多个field发起查询:multi_match
curl -XGET http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs/_search?pretty -d '
{
"query":
{"multi_match":
{
"query":"毛豆",
"fields":["user","phonetype"],
"operator":"and"
}
}
}'
#多个term对多个field发起查询:bool(boolean)
# 组合查询,must,must_not,should
# must + must : 交集
# must +must_not :差集
# should+should : 并集
curl -XGET http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs/_search?pretty -d '
{
"query":
{"bool" :
{
"must" :
{"match":
{"phonetype":"毛豆"}
},
"must" :
{"match":
{"calltime":19}
}
}
}
}'
curl -XGET http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs/_search?pretty -d '
{
"query":
{"bool" :
{
"must" :
{"match":
{"user":"河北冀州2"}
},
"must_not" :
{"match":
{"calltime":19}
}
}
}
}'
curl -XGET http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs/_search?pretty -d '
{
"query":
{"bool" :
{
"must_not" :
{"match":
{"user":"河北冀州2"}
},
"must_not" :
{"match":
{"calltime":19}
}
}
}
}'
##查询user=毛豆,或者calltime在150到300之间的
curl -XGET http://192.168.152.3:9200/hbase-phone-log/bj_phone_logs/_search -d '
{
"query":
{"bool" :
{
"must" :
{"term" :
{ "user" : "毛豆" }
}
,
"must_not" :
{"range":
{"calltime" : { "from" : 150, "to" : 300 }
}
}
}
}
}'
#修改配置 集群模式 三个es节点,默认提供15个lucene切片
curl -XPUT 'http://192.168.152.3:9200/test2/' -d'{"settings":{"number_of_replicas":2}}' 创建index,1主2从,15 of 15 15个健康切片of一共15个切片
curl -XPUT 'http://192.168.152.3:9200/test3/' -d'{"settings":{"number_of_shards":3,"number_of_replicas":3}}' 创建index,3主3从,9 of 12 9个健康切片of一共12个切片
curl -XPUT 'http://192.168.152.3:9200/test4/' -d'{"settings":{"number_of_shards":6,"number_of_replicas":4}}'
curl -XPOST http://192.168.9.11:9200/hbase-phone-log/person/_mapping -d'
{
"person": {
"properties": {
"content": {
"type": "string",
"store": "no",
"term_vector": "with_positions_offsets",
"analyzer": "ik_max_word",
"search_analyzer": "ik_max_word",
"include_in_all": "true",
"boost": 8
}
}
}
}'