Elasticsearch 简介
Elasticsearch 是一款搜索引擎,目前首选的全文检索方案。
- Elasticsearch 是用 Java 实现的,开源的搜索引擎。
- 它可以快速地储存、搜索和分析海量数据。*、Stack Overflow、Github等都采用它。
- Elasticsearch 的底层是开源库 Lucene。但是 django 没法直接使用 Lucene,需要写代码调用它的接口。
elasticsearch-analysis-ik 扩展
Elasticsearch 不支持对中文进行分词建立索引,需要配合扩展 elasticsearch-analysis-ik 来实现中文分词处理。
分词:
搜索引擎在对数据构建索引时,需要进行分词处理。
分词是指将一句话拆解成多个单字 或 词,这些字或词便是这句话的关键词。
比如:我是中国人。分词后: 我 、 是 、 中 、 国 、 人 、 中国 等等都可以是这句话的关键字。
docker 安装 elasticsearch-ik
1、拉取镜像 delron/elasticsearch-ik:2.4.6-1.0
# 先搜索,再拉取。
sudo docker search elasticsearch-ik
sudo docker pull delron/elasticsearch-ik:2.4.6-1.0
2、修改配置
点击下载配置文件 elasticsearch
将配置文件 elasticsearch.tar.gz 复制到 /home/目录下并解压
sudo tar -zxvf elasticsearch.tar.gz
修改 /elasticsearch/config/elasticsearch.yml 文件第54行: network.host: 本机ip地址
gedit ~/elasticsearch/config/elasticsearch.yml
# 或者,如果会使用 vim
vi ~/elasticsearch/config/elasticsearch.yml
3、启动服务
sudo docker run -dit --name=esik --network=host -v ~/elasticsearch/config:/usr/share/elasticsearch/config delron/elasticsearch-ik:2.4.6-1.0
结束
django 对接 Elasticsearch 服务端的方案:Haystack介绍和安装