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 ...
随机推荐
- IIS 之 通过 Web.config 修改文件上传大小限制设置方法
在IIS 6.0中,不设置默认大小为4M,设置文件上传大小的方法,maxRequestLength(KB),executionTimeout(毫秒),配置如下节点: <system.web> ...
- java基础面试题-2
第一,谈谈final, finally, finalize的区别. final---修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承.因此一个类不能既被 ...
- Strom在本地运行调试出现的错误
1.错误日志 31385 [main] WARN backtype.storm.daemon.nimbus - Topology submission exception. (topology nam ...
- 001 Python中的基本类型初步介绍
这个但是根据书来整理的,显得有些多,也不够完整. 一:介绍 1.为什么使用内置对象 对象类型是语言的一个部分 内置对象构成了每个python程序的核心部分 二:数字 1.**是乘方 2.math数学模 ...
- 洛谷 P2440 木材加工【基础二分】
题目链接:https://www.luogu.org/problemnew/show/P2440 题目描述 木材厂有一些原木,现在想把这些木头切割成一些长度相同的小段木头(木头有可能有 剩余),需要得 ...
- IPv6升级改造包括什么?
关于IPv6技术升级具体做了什么,在我脑海里只是更换了域名解析的IP而已,所以找了这篇文章,帮助初步解惑. 原文地址:https://www.maczd.com/post/web-ipv6-upgra ...
- SQLite中的表达式
SQLite中的表达式 在SELECT的基本完整形式中,我们会看到几乎是所有的子句都会使用到表达式.以下是SQLite支持的表达式类型. expr binary-op expr | ...
- Python学习——迭代器&生成器&装饰器
一.迭代器 迭代器是访问集合元素的一种方式.迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后退迭代器的一大优点是不要求事先准备好整个迭代过程中所有的元素.迭代器仅 ...
- 洛谷.3834.[模板]可持久化线段树(主席树 静态区间第k小)
题目链接 //离散化后范围1~cnt不要错 #include<cstdio> #include<cctype> #include<algorithm> //#def ...
- error MSB3073 解决办法
发现拷贝命令编译错误,查看输出列表发现时无法找到相应的路径. 1.顺着这个思路第一个想到的是中文路径的问题,先修改了盘符的中文名称,发现还是无法解决具体的问题. 2.后来反复查阅网上的资料,发现帮助并 ...