安装完成以后,咱们该开始学习关于ElasticSearch最基本的CURD操做了。html
ElasticSearch做为一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,其接口也是RESTful 风格。文档储存类型也是json格式。那么咱们就能够像操做webapi同样简单的操做ElasticSearch进行CRUD了。web
在Linux服务器上咱们能够经过curl命令操做。可是做为window用户,咱们大都不太熟悉curl命令。下面我将介绍一款基于chrome的插件Sense。经过Sense扩展插件咱们能够很方便的操做ElasticSearch。chrome
一、安装Sense数据库
二、使用Sense CRUDjson
URL的格式:api
http://localhost:9200/<index>/<type>/[<id>]服务器
其中index、type是必须提供的。curl
id是一条数据(文档)的惟一标识,若是重复 则覆盖已经存在的。elasticsearch
index、type将信息进行分层,利于管理。index能够理解为数据库,type理解为数据表。分布式
PUT /db_news/news/1 { "title":"第一条新闻", "author":"wangyunpeng", "content":"根据中的的最新调查显示" } PUT /db_news/person/5 { "name":"jack", "age":53, "intro":"jack可是的是个乖孩子" }
Sense操做如图:(PUT须要顶头写,json字段名称须要加引号)
修改就是将id置为和存在的记录一致。
DELETE /db_news/news/1
查询全部库,全部表的文档
GET /_search { "query": { "match_all": {} } }
查询指定库指定表的一条文档
GET /db_news/person/5
在全部库全部表中查找某个字段等于某个值的文档
GET /_search { "query": { "query_string": { "query": "jack" } } }
在指定库指定表中查找某个字段等于某个值的文档
POST /db_news/person/_search { "query": { "query_string": { "query": "jack" } } }
在指定库指定表中查找指定个字段等于某个值的文档
POST /db_news/person/_search { "query": { "query_string": { "fields": ["age"], "query": 53 } } }
多条件并列条件查询
POST /db_news/person/_search { "query": { "filtered": { "filter": { "term": { "age": 53 } } } } }
详细CRUD命令请参考官方:
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/index.html
部份内容摘抄自:
http://joelabrahamsson.com/elasticsearch-101/