elasticsearch 支持中英文搜索和混合搜索
环境: ubuntu16.04
安装: elasticsearch 5.22
1. 第一步,安装java
apt-get install default-jre
apt-get install default-jdk
2.第二步,安装elasticsearch. 5.22
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.deb
dpkg -i elasticsearch-5.2.2.deb
3.启动服务
systemctl daemon-reload
systemctl enable elasticsearch
systemctl restart elasticsearch
碰到问题:
[2018-07-02 18:36:32,700][INFO ][node ] [Captain Fate] version[1.7.3], pid[25545], build[NA/NA]
[2018-07-02 18:36:32,701][INFO ][node ] [Captain Fate] initializing ...
[2018-07-02 18:36:32,900][INFO ][plugins ] [Captain Fate] loaded [], sites []
[2018-07-02 18:36:32,930][INFO ][env ] [Captain Fate] using [1] data paths, mounts [[/ (/dev/vda1)]], net usable_space [27gb], net total_space [39.2gb], types [ext4]
[2018-07-02 18:36:35,634][WARN ][common.network ] failed to resolve local host, fallback to loopback
java.net.UnknownHostException: iZhp3ig1mh8lh6acp6sx0xZ: iZhp3ig1mh8lh6acp6sx0xZ: Name or service not known
at java.net.InetAddress.getLocalHost(InetAddress.java:1505)
at org.elasticsearch.common.network.NetworkUtils.<clinit>(NetworkUtils.java:55)
at org.elasticsearch.http.netty.NettyHttpServerTransport.<init>(NettyHttpServerTransport.java:165)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
修改etc/hosts文件,加上你自己的hostname里面的值
127.0.0.1 localhost iZhp3ig1mh8lh6acp6sx0xZ
4.验证是否成功
curl -XGET "http://localhost:9200"
5.注意的几点:
a.新建用户elasticsearch
useradd elasitcsearch
b.让上面的用户拥有目录:/usr/share/elasticsearch 的权限
chown elasitcsearch:elasitcsearch /usr/share/elasticsearch
chown -R 777 /usr/share/elasticsearch
sudo chown -R elsearch:elsearch /etc/elasticsearch
sudo chmod -R 775 /etc/elasticsearch/
6.添加支持中文分词的插件等,所有插件,必须和elasticsearch版本一致,下载解压到/usr/share/elasticsearch/plugins目录下面,名字如下=命名:

7.启动的时候可以切换到目录/usr/share/elasticsearch/bin/ . 直接执行./elasticsearch 就可以进行启动了
需要的插件地址都可以在这里找到:https://github.com/medcl
下载如下
elasticsearch-5.2.2.deb elasticsearch-analysis-stconvert-5.2.2.zip
elasticsearch-analysis-ik-5.2.2.zip kibana-5.2.2-amd64.deb
问题:
1、Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)
由于elasticsearch5.0默认分配jvm空间大小为2g,修改jvm空间分配
- # vim config/jvm.options
- -Xms2g
- -Xmx2g
修改为
- -Xms512m
- -Xmx512m
2.Exception in thread "main" org.elasticsearch.bootstrap.BootstrapException: java.nio.file.NoSuchF
ileException: /usr/share/elasticsearch/config
解决方法:cp -R /etc/elasticsearch/* ./config/
Likely root cause: java.nio.file.NoSuchFileException: /usr/share/elasticsearch/config
elasticsearch 支持中英文搜索和混合搜索的更多相关文章
- 在 Laravel 项目中使用 Elasticsearch 做引擎,scout 全文搜索(小白出品, 绝对白话)
项目中需要搜索, 所以从零开始学习大家都在用的搜索神器 elasiticsearch. 刚开始 google 的时候, 搜到好多经验贴和视频(中文的, 英文的), 但是由于是第一次接触, 一点概念都没 ...
- 《读书报告 – Elasticsearch入门 》----Part II 深入搜索(1)
Part II 深入搜索 搜索不仅仅是全文本搜索:数据的很大部分是结构化的值例如日期.数字.这部分开始解释怎样以一种高效地方式结合结构化搜索和全文本搜索. 第十二章 结构化搜索 结构化搜索_ 是指查询 ...
- ElasticSearch(四):基本搜索
ElasticSearch(四):基本搜索 学习课程链接<Elasticsearch核心技术与实战> URI Search 使用HTTP的GET方法,在URL中使用查询参数进行查询. GE ...
- Nebula 基于 ElasticSearch 的全文搜索引擎的文本搜索
本文首发于 Nebula Graph 公众号 NebulaGraphCommunity,Follow 看大厂图数据库技术实践. 1 背景 Nebula 2.0 中已经支持了基于外部全文搜索引擎的文本查 ...
- Elasticsearch(ES)的高级搜索(DSL搜索)(下篇)
1. 概述 之前聊了Elasticsearch(ES)的高级搜索(DSL搜索)的一部分内容,今天把剩下的部分聊完. 2. 场景说明 2.1 创建索引同时创建映射 PUT http://192.168 ...
- 【django】京东等大型网站的混合搜索是怎么实现的?
混合搜索在各大网站如京东.淘宝都有应用,他们的原理都是什么呢?本博文将为你介绍它们的实现过程. 混合搜索的原理,用一句话来说就是:关键字id进行拼接. 混合搜索示例: 数据库设计: 视频方向: cla ...
- javascript截取字符串(支持中英文混合)
javascript截取字符串(支持中英文混合) <script type="text/javascript"> var sub=function(str,n){ va ...
- 分布式搜索ElasticSearch构建集群与简单搜索实例应用
分布式搜索ElasticSearch构建集群与简单搜索实例应用 关于ElasticSearch不介绍了,直接说应用. 分布式ElasticSearch集群构建的方法. 1.通过在程序中创建一个嵌入es ...
- ElasticSearch 学习记录之ES高亮搜索
高亮搜索 ES 通过在查询的时候可以在查询之后的字段数据加上html 标签字段,使文档在在web 界面上显示的时候是由颜色或者字体格式的 GET /product/_search { "si ...
随机推荐
- [转] Nginx 配置 SSL 证书 + 搭建 HTTPS 网站教程
一.HTTPS 是什么? 根据维基百科的解释: 超文本传输安全协议(缩写:HTTPS,英语:Hypertext Transfer Protocol Secure)是超文本传输协议和SSL/TLS的组合 ...
- 使用拷贝文件测试(BufferedInputStream,FileInputStream)
package com.demo; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import ja ...
- python学习之集合
集合(set)是一个无序的不重复元素序列. 可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典. 创建格 ...
- zabbix 检测icmp参数
UserParameter=ICMPresult,ping -c 4 10.128.1.22 &> /dev/null;echo $?
- Redis数据结构之set
一:介绍 1.set结构 没有顺序 并且,不允许出现重复的元素. 二:Redis客户端的常用命令 1.添加 2.查看数据 3.删除数据 4.是否存在某个值 1代表有,0代表无. 5.查看差值 有key ...
- C++ 冒泡排序、选择排序、快速排序
#include<stdio.h> #define N 10 void swap(int *p1, int *p2); void BubbleSort(int *a); void Sele ...
- Unity报错 : BCE0004: Ambiguous reference 'preview': CameraMotionBlurEditor.preview, UnityEditor.Editor.preview.
建立项目版本为Unity4.6,改为5.3.4版本,运行项目报如下错误: “BCE0004: Ambiguous reference 'preview': CameraMotionBlurEditor ...
- P2393 yyy loves Maths II
P2393 yyy loves Maths IIlong double比如保留5位小数*1000000都变成整数最后再/1000000避免精度误差scanf("%Lf",& ...
- 初探和实现websocket心跳重连(npm: websocket-heartbeat-js)
提示:文章最下方有仓库地址 心跳重连缘由 websocket是前后端交互的长连接,前后端也都可能因为一些情况导致连接失效并且相互之间没有反馈提醒.因此为了保证连接的可持续性和稳定性,websocket ...
- BZOJ.3928.[CERC2014]Outer space invaders(区间DP)
BZOJ3928 双倍经验BZOJ4048 Codeforces GYM100543 L \(Description\) \(Solution\) 考虑出现时间在\([l,r]\)内的敌人,设最远的敌 ...