Elasticsearch 简介
Elasticsearch是一个基于Lucene搜索服务器。基于分布式多用户能力的全文搜索引擎RESTful web接口。Elasticsearch是用Java并作为语言开发Apache开放源代码发布在许可条款下,是一种流行的企业级搜索引擎。Elasticsearch用于云计算,可实现实时搜索,稳定、可靠、快速、安装使用方便。官方客户端在Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby它可以用于许多其他语言。根据DB-Engines排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr,也是基于Lucene。(简单理解:分布式搜索引擎可以为用户提供企业全文搜索)。
Elasticsearch 使用Java语言开发,使用 Elastic 全文搜索和分析引擎实时分布式开源协议。
Elasticsearch 通过 RESTful Web 访问并使用服务界面 JSON 存储数据的文档。
Elasticsearch 使用 Java 作为一种开发语言,它可以跨平台运行,用户可以快速探索大量数据
Elasticsearch 由于 2010 现在的最新版本是年创, 2018 年 6 月 13 日发布的 6.3.0
Elasticsearch 官网
Elasticsearch 官方网站为:Elasticsearch: The Official Distributed Search & Analytics Engine | Elastic
Elasticsearch 下载地址如下:https://www.elastic.co/downloads/elasticsearch
Elasticsearch 优点
-
Elasticsearch 使用 Java 作为一种开发语言,它可以在任何平台上运行
-
Elasticsearch 这是实时的。换句话说,添加文档后,您可以立即搜索刚刚添加的文档
-
Elasticsearch 它是分布式的,可以很容易地扩展和集成到任何大型组织中
-
通过使用 Elasticsearch 中间的网关概念很容易创建完整的备份
-
与 Apache Solr 相比,Elasticsearch 很容易处理多租户
-
Elasticsearch 使用JSON对象作为响应,是目前最流行的数据交换格式
-
Elasticsearch 除了几乎所有的文档类型,但不能渲染的文本,如二进制数据
Elasticsearch 缺点
-
与 Apache Solr 不同,Elasticsearch 各种数据格式不支持处理请求和响应数据,即只支持 JSON
Apache Solr 支持多种数据传输格式,如 CSV,XML 和 JSON 格式
-
Elasticsearch 也存在脑裂 ( Split-Brain ) 但发生的可能性很小
Split-Brain,中文一般翻译成, 脑裂问题就是产生了两个 leader,导致集群行为不一致。
Elasticsearch 安装部署
提前做好准备
安装JAVA环境
因为 Elasticsearch 对 Java 要求版本,最低版本必须是 Java 7 ,因此,您可以在命名行中提示符 ( Windows ) 或 Powere Shell ( Windows ) 或终端 ( Linux、macOS ) 使用下面的命令来检查你的 Java 版本。
我安装的路径在C盘下,但没有配置环境变量。
添加JAVA环境变量方法:https://jingyan.baidu.com/article/e8cdb32bfa4b2f37052bad07.html
下载 Elasticsearch
Elasticsearch 官方下载地址为https://www.elastic.co/downloads/elasticsearch,截止 2018 年 6 月 27 日本最新版本是 6.3.0
从下载页面可以看出,官方提供了丰富的下载包
包 | 说明 |
---|---|
ZIP 或 TAR | 两个跨平台的通用压缩格式 |
DEB | Debian 软件包,是 Ubuntu 和 Debian 系统下的软件安装包格式 |
RPM | Redhat 和 CentOS 下一般软件安装包格式 |
MSI | Windows 系统下软件安装包的格式 |
您可以根据自己的操作系统类型选择合适的安装包
- windows 系统下载 ZIP
- UNIX 系统下载 TAR
- Debian 系统和 Ubuntu 系统下载 DEB
- Red Hat 与其他衍生系统,如 CentOS 下载 RPN
本教程采用跨平台通用原则ZIP
的包
点击ZIP
,将开始下载名称elasticsearch-6.3.0.zip
的 Elasticsearch 压缩包
我这里演示7.10.1版本的elasticsearch包
Elasticsearch 安装 ( Windows )
Windows 上安装 Elasticsearch 过程很简单
下载安装包后,解压进入程序包目录
找到程序包elasticsearch的bin目录,一般程序的启动bin下面。
导航栏输入CMD进入windown的DOS指令界面。
敲打elasticsearch等待程序的启动。
输入浏览器localhost:9200 进行访问,响应出现以下字符串即为成功界面。【字符串中介绍elasticsearch版本、构造类型、构造期等。同时,这也是典型的成功响应JSON界面。
停止elasticsearch进程,只需要用Ctrl+C即可中止程序,输入y停止P处理。
扩展一下:这里给大家介绍一下制作一个全局变量的方法,将Elasticsearch这个指令扩展到任何计算机路径地方都可以使用,每次登陆在路径下面点击启动有点烦恼。
首先找到Elasticsearch的bin路径
在系统路径Path中加入Elasticsearch的路径。
比如我这样:C:\Program Files\Common Files\Oracle\Java\javapath;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x64;
设定完参数后,重新启动一下系统。在任何的路径下面启动Elasticsearch都可以启动服务,可以在尝试访问localhost:9200地址,JSON的数据还是正常访问。
总结:Elasticsearch相当于一个搜索引擎服务器,是可以提供在业务系统里面的第三方开源工具。开发者可以利用到这个搜索服务器,分布式搜索相对应的内容展示给用户,Elasticsearch承担这方面的工作。