ElasticSearch一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。它是用Java开发的,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
官网:https://www.elastic.co/
对于ES的特性,我是从官网翻译过来,如果有不妥的地方,希望大家提出宝贵的建议。
开源的(不解释)它是分布式和高度可用的搜索引擎。 每个索引根据配置分片的数量完成完全分片。每个碎片都可以有一个或多个副本。读/搜索操作可以在任何复制分片上执行。 支持多租户与多种类型。 支持一个以上的索引。支持一个以上的每个索引类型。指数级配置(数量的碎片,索引存储,…)。 各种组api HTTP RESTful API本地Java API。所有api执行自动从路由节点操作。 面向文档的可靠异步写操作长期持续。(附近)实时搜索。基于Lucene 每个碎片都是一个功能齐全的Lucene索引所有Lucene通过简单的配置/插件非常容易的暴露出来。 每个操作的一致性 单文档级别操作都是原子的、一致的、孤立的和持久的。对于ES了解一个大概情况就可以了。下面我们下载和安装ES:
下载地址:https://www.elastic.co/downloads/elasticsearch
Elasticsearch的所有版本都有四种打包格式:ZIP、TAR、DEB、RPM,我们使用ZIP就可以了。
bin:可以执行文件 config:配置文件 data:es存放数据的文件 lib:运行所需类库 logs:日志文件 modules:加载模块列表(其实是必要插件) plugins:插件文件(需要自定义安装)
注:刚解压的ES并没有这么多目录,只有bin、config、lib、modules,其他都是在第一次运行之后自动生成的。
Download and unzip the latest Elasticsearch distribution
下载最新Elasticsearch版本,解压到指定目录。
Run bin/elasticsearch on Unix or bin\elasticsearch.bat on Windows
在Unix上运行bin/elasticsearch或者在Windows上运行bin\elasticsearch.bat(命令行,进入 cd E:\ES\elasticsearch-2.3.1\bin 目录或者直接双击elasticsearch.bat运行)
Run curl -X GET http://localhost:9200/
在浏览器里测试一下:
如果你得到的status是200那它意味着所有的事情都ok啦…是不是很简单? 让我们看看JSON的每个字段代表的含义: Ok:当为true时,意味着请求成功。 Status:发出请求后的HTTP的错误代码。200表示一切正常。 Name:我们Elasticsearch实例的名字。在默认情况下,它将从一个巨长的名字列表中随机选择一个。 Version:这个对象有一个number字段,代表了当前运行的Elasticsearch版本号,和一个Snapshot_build字段,代表了你当前运行的版本是否是从源代码构建而来。 Tagline:包含了Elasticsearch的第一个tagline: “You Know, for Search.”