0. 背景
Shay Banon 当年跟随自己妻子来到伦敦,妻子想做一名厨师,而自己则想为妻子开发一个方便搜索菜谱的应用,所以接触到 Lucene。
而直接使用 Lucene 构建搜索有很多问题,包含大量重复性的工作,
所以 Shay Banon 便在 Lucene 的基础上不断地进行抽象,经过一段时间的打磨便诞生了他的第一个开源作品“Compass”。
之后,他找到了一份面对高性能分布式开发环境的新工作,于是决定重写 Compass,将它从一个库打造成了一个独立的 server,并创建了开源项目
1. 介绍
Lucene介绍:
在介绍Elasticsearch之前,先了解一下Elasticsearch的底层——Lucene
1、Lucene是一个全文检索引擎,全文检索即:对文章的每一个词都建立一个索引,指明该词在文章中出现的次数与位置(听起来很像word里查询功能)
2、Lucene并不是一个完整的工具,它只是一个java类库,提供了可以被调用的方法
Elasticsearch简述:
如果我们直接基于 Lucene 开发会比较麻烦, ElasticSearch 是基于 Lucene 开发的,封装了 Lucene 底层功能,在 Lucene 的基础上还提供了:
1、分布式的实时文件存储,每个字段都被索引并可被搜索
2、实时分析的分布式搜索引擎
3、可以扩展到上百台服务器,处理 PB 级结构化或非结构化数据
提供了对外访问的RestAPI,
2. Mac OS环境下下载及安装
官方下载地址:https://www.elastic.co/cn/downloads/elasticsearch
下载解压后,先在config/elasticsearch.yml文件中修改:
1、xpack.security.http.ssl:enable: false // 我没修改直接访问会报错,无法链接
2、xpack.security.enabled: false // 改成false后无需用户登陆
启动完成后,访问localhost:9200端口,出现下方内容就是启动成功