Elasticsearch 是一个为云而打造的基于RESTful风格的分布式搜索引擎
这里列举几个特性:
分布式高可用的搜索引擎
多样调用API
面向文档
接近实时查询
构造在Lucene之上
操作一致性
开源
一、安装要求:
Java版本:Elasticsearch 使用Java 构建,运行至少要求Java 8。
推荐安装JDK1.8.0_131或者Java 8 发布系列之后的版本。
二、安装
下载: Window系统下载.msi 安装包。
这里提供 Elasticsearch v6.2.1下载链接
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.1.msi
图形化安装:
双击下载后的.msi安装包,启动图形化安装向导
1、选择安装目录,默认安装到C:\Program Files目录下
2、作为Window服务安装(可选)
3、安装插件(可选),
4、配置X-pack插件,上一步不选择X-Pack,不出现此界面。X-pack是Elastic Stack的一个扩展产品,是一个收费产品,有30天的试用期。
5、安装中
6、看到此界面,恭喜你,Elasticsearch已经成功安装!
7、检查Elasticsearch 是否正在运行。
在浏览器输入:http://localhost:9200,如果返回如下信息则表示节点正在运行。
接下来介绍如何使用Elasticsearch ·1、建立索引:
这里使用HTTP RESTful API,除此之外还可以使用Native Java API。
调用index(索引) API 建立或者更新一个json类型的文档到具体的index(索引),下面的例子插入一个JSON文档到一个id为1的类型叫"_doc"下的index(索引),索引名称叫"twitter" 。
这里利用Postman工具做演示:
注意红色框框的内容
以上索引操作返回的结果为:
通过get API 返回刚才创建的索引信息
以上结果包含我们希望取回的文档的_index
, _type
, _id
and _version
等信息
如果想直接得到_source的信息,可以在后面加上参数_source,像
2、更新索引,其实最简单的方法就是利用上面建立索引的方法,不同的把你的JSON文档内容改为你要更新的内容,比如,我这里把user修改为“liudehua”:
返回的结果:
大家注意结果中的“result”值已经由创建索引时的“created”变成“updated”。接着我们再次用get API 请求查看更新是否成功:
很显然,user值已经更新,这说明如果已经存在了该id的index,再次提交,会变成修改操作。
3、查询操作 匹配所有文档:通过_search 请求。
如果我要匹配某个字段的某个值,该如何做呢,比如我要查询user为“lingming”的文档,加上JSON形式的请求参数即可:
{
"query" : {
"term" : { "user" : "liming" }
}
}
返回的结果:
4、通配符查询:利用通配表达式查询文档的相关字段,支持*和?字符,*通配任意字符,包括空字符,?通配单一字符。比如,查询user字段,li开头的文档。
{
"query": {
"wildcard" : { "user" : "li*" }
}
}
返回结果:
最后说一下删除索引操作,很简单 ,如果要删除上面创建的“twitter”索引
请求 DELETE /twitter即可
再次请求获取该index信息,返回404错误,报告说没这个索引。
好了,以上就是Elasticsearch的一些基本操作,希望对于初学者来说有些小小的帮助。