本文主要阐述利用ES、知识图谱(Neo4j)实现全文检索,并利用ElasticSearch Head开源项目进行全文检索测试。实验在图谱的帮助下如何开展全文检索功能,为后续的复杂查询或语义检索做准备。
一、运行环境
1.Linux 7.5
2.JDK 1.8.0_191
3.ElasticSearch 7.17.4,注意用ES自带的jdk,因为这个版本的ES需要JDK11以上,配置见第二条内容。
4.Neo4j 3.5.28
5.Elasticsearch-head:
GitHub - mobz/elasticsearch-head: A web front end for an elastic search cluster
二、ES和Neo4j的安装配置:
详细的安装配置本文略去,主要给出关键配置信息,可以参考其他安装配置,如大家需要,再咨询我。
1.
配置ES--java11环境:打开ES的bin下面elasticsearch和elasticsearch-cli文件,在最前面添加如下信息,将默认jdk调整为es自带的jdk,这样不改变整个系统的java环境,只是在运行ES时用指定的java环境。
#配置自己的jdk11
export JAVA_HOME=/home/es/elasticsearch-7.17.4/jdk
export PATH=$JAVA_HOME/bin:$PATH
#配置自己的jdk11
export JAVA_HOME=/home/es/elasticsearch-7.17.4/jdk
export PATH=$JAVA_HOME/bin:$PATH
2.配置ES--在config目录,打开
elasticsearch.yml,配置信息如下
node.master:true 或者 node.name: node-1
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
network.host: 0.0.0.0
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: "*"
#允许各种http请求
http.cors.allow-methods: OPTIONS,HEAD,GET,POST,PUT,DELETE
http.cors.allow-headers: Content-Type,Accept,Authorization,x-requested-with
#集群节点存储空间大小限制解决的配置选项
cluster.routing.allocation.disk.threshold_enabled: false
cluster.initial_master_nodes: ["node-1"]
#配置X-Pack,401问题解决的配置选项
xpack.security.enabled: false
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: true
3.启动ElasticSearch
前面配置完毕后,基本可以启动ES了,进入bin目录,运行
elasticsearch 或者
elasticsearch -d,后者表示后台启动,如果出现如下错误,请安装要求配置。
错误1:
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
root 用户:vi /etc/sysctl.conf 添加 vm.max_map_count=262144:保存退出之后,执行命令 sysctl -p
错误2:max number of threads is too low
root 用户:vi /etc/security/limits.conf 在文件最后添加
* soft nofile 65536
* hard nofile 65536
* soft nproc 4096
* hard nproc 4096
错误3:
max number of threads [1024] for user [elasticsearch] is too low, increase to at least [4096],该错误对应的配置文件,默认配置好了, 不需要单独配置。
vi /etc/security/limits.d/90-nproc.conf 改为4096
修改完记得退出es用户,再执行启动命令。
cp -r /home/hadoop/app/elasticsearch-7.17.4 /home/es/elasticsearch-7.17.4
4.查看ES运行情况(浏览器)
http://192.168.107.128:9200/ 查看可用情况
5.配置访问ES的用户密码,主要用于配置ElasticSearch-head和Kibana客户端访问ES的用户密码。
执行命令:elasticsearch-setup-passwords interactive
user:elastic/kibana_system/其他用户等
pwd:eses456
其他用户的密码同上。
6.安装plugin
安装IK分词器:elasticsearch-plugin install analysis-icu
elasticsearch-plugin install
https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.4/elasticsearch-analysis-ik-7.17.4.zip
查看安装的plugin
:
elasticsearch-plugin list
删除plugin:
整合ES与Neo4j:全文检索实战与Neo4j-ES配置教程

本文详细介绍了在Linux环境中通过Elasticsearch 7.17.4和Neo4j 3.5.28实现全文检索的过程,包括ES配置、Neo4j-elasticsearch集成、Elasticsearch-head测试以及利用ApoC API进行高级查询。重点展示了如何在图谱支持下进行复杂查询和语义搜索的准备工作。
最低0.47元/天 解锁文章
1966

被折叠的 条评论
为什么被折叠?



