elasticsearch (一) 初识

一、 elasticsearch是什么

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二流行的企业搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
—— 引用自百度百科

简而概之就是一个非常牛逼的搜索引擎。

二、相关概念

  1. 集群(cluster) & 节点(node)
    一个集群是有一个或多个节点组成,节点是集群中的一个服务器。节点会存储数据,参与集群的索引和搜索。默认情况下,节点会获取一个随机的名字来作为标识。与节点类似,集群也会默认获取一个名字,一般情况下这个名字为elasticsearch

  2. 索引(index) & 类型(type) & 文档(document) & 字段(field)

和关系型数据库类似,elasticsearch中也有类似库表行字段的含义。大致关系如下:

解释:

Elasticsearch集群可以包含多个索引(indices)(数据库),每一个索引可以包含多个类型(types)(表),每一个类型包含多个文档(documents)(行),然后每个文档包含多个字段(Fields)(列)。

三、安装

  1. 安装elasticsearch

官网下载最新版。

下载之后解压即可。无需安装使用方便。

  1. 安装Marvel

MarvelElasticsearch的管理和监控工具,在开发环境下免费使用。它包含了一个叫做Sense的交互式控制台,使用户方便的通过浏览器直接与Elasticsearch进行交互。

Marvel是一个插件,可在Elasticsearch目录中运行以下命令来下载和安装:

你可能想要禁用监控,你可以通过以下命令关闭Marvel:

四、运行

Elasticsearch已经准备就绪,执行以下命令可在前台启动:

如果想在后台以守护进程模式运行,添加-d参数。

打开另一个终端进行测试:

你能看到以下返回信息:

这说明你的ELasticsearch集群已经启动并且正常运行,接下来我们可以开始各种实验了。