Elasticesearch学习记录

本文涉及的产品
Elasticsearch Serverless通用抵扣包,测试体验金 200元
简介: 主要记录从自建安装,以及后期使用阿里云的Elasticesearch,相关过程中的一些常用命令(导出、导入等mapping结构)涉及到Elasticesearch5.4版本迁移Elasticesearch7版本过程中的一些步骤
一. Elasticsearch安装
1. 创建网络esnetwork
$ docker network create esnetwork
2. elasticsearch安装:
$ docker run -d --name elasticsearch --net esnetwork -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node elasticsearch-ik:1.0
3. 为了方便使用docker安装,没有做数据持久化
##todo:数据持久化
4. 安装分词(注意版本)
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.1.1/ elasticsearch-analysis-ik-7.1.1.zip
5. 在elasticsearch服务器配置文件种增加一下内容,避免跨域访问不到页面 
$ http.cors.enabled: true
$ http.cors.allow-origin:"*"
二. logstash安装
$ docker run -d--name=logstash--net esnetwork-p5044:5044 -V /data/lelastic/logstash:/usr/share/logstash -v 
/data/lelastic/test.txt:/var/log/messages logstash:7.1.1
##为了省事把logstash文件都映射出来了,其实只需要映射:/usr/share/logstash/config即可
##必须安装logstash input jdbc
##安装/usr/share/logstash/mysql-connector-java-5.1.44.jar
三. Kibana安装
##kibana功能太多,用不了这么多暂时,我用Elasticvue操作
$ docker run -d--name=kibana --network=esnetwork --restart=alwavs -v /data/elastic/kibana/config:/usr/share/kibana/config -p 5601:5601 kibana:7.1.1
#Elasticvue: elasticsearch客户端、edge浏览器产检,对标es-head,感觉比es-head好用
四. 常用命令(待补充) 
1. ES curl命令整理
$ curl -XPUT es.dev:9200/test_2001 #创建索引
$ curl -XDELETE es.dev:9200/test_2001 #删除索引
$ curl -XGET es.dev:9200/test_2001/_mapping #查看mapping结构
$ curl -XGET es.dev:9200/_cat/indices #查看所有索引
$ curl --user 用户:密码 -XGET IP:9200/索引名 #查看索引(阿里云)
$ curl -H "Content-Type: application/json" -XPUT http://es.dev:9200/idx_book?pretty -d '{mapping结构内容}' #创建mapping结构
#用可视化相关的工具会容易操作很多
五. ES5.4版本迁移到阿里云ES7版本
1. 首先导出相关索引的mapping结构
$ elasticdump --input=http://ip:9200/索引名 --output=索引名.json --type=mapping  #导出

$ elasticdump --input=索引名.json --output http://ip:9200/索引名 --type=mapping  #导入
2. 导出索引数据
$ elasticdump --input=http://ip:9200/索引名 --output=索引名.json --type=data  --timeout=40000 --limit=1000 --support-big-int #导出数据

$ elasticdump --input=索引名.json --output=http://用户:密码@IP:9200/索引名 --type=data --timeout=40000 --limit=1000 --support-big-int #导入数据,阿里云需要用户密码认证
3. 涉及以下几个需要注意的地方
3.1 因为版本的差异过大,迁移mapping的时候,会发现丢失分词,以及导入mapping的时候提示导入成功,查询却不显示mapping结构,阿里云分词是ik_max_word_stemme,5.4版本我们用的是ik_max_word和  ik_smart这两种
3.2 首先需要导出mapping后手动修改mapping结构里的分词类型,没有可视化工具的前提下,会出现上面所说的导入mapping结构不显示问题,需要用命令去创建mapping结构 curl -H "Content-Type: application/json" -XPUT http://es.dev:9200/idx_book?pretty -d '{mapping结构内容}'
3.3 mapping结构创建成功的前提下再去导入数据,就不会出现数据对不上的问题
相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
目录
相关文章
|
存储 缓存 算法
[转]分布式唯一ID生成方案
分布式唯一ID生成方案
443 0
[转]分布式唯一ID生成方案
|
SQL 关系型数据库 MySQL
flask中生成迁移脚本并将orm模型映射至MySQL
flask中生成迁移脚本并将orm模型映射至MySQL
360 0
|
存储 编解码 算法
凹凸贴图和法线贴图的区别
凹凸贴图适用于一些简单的凹凸效果,而法线贴图则更适合提供更高精度和真实感的凹凸纹理效果
758 1
|
7月前
|
机器学习/深度学习 编解码 自动驾驶
RT-DETR改进策略【模型轻量化】| 替换骨干网络为MoblieNetV1,用于移动视觉应用的高效卷积神经网络
RT-DETR改进策略【模型轻量化】| 替换骨干网络为MoblieNetV1,用于移动视觉应用的高效卷积神经网络
245 3
RT-DETR改进策略【模型轻量化】| 替换骨干网络为MoblieNetV1,用于移动视觉应用的高效卷积神经网络
|
6月前
|
云安全 数据采集 安全
阿里云热门云安全产品简介:Web应用防火墙与云防火墙产品各自作用介绍
在阿里云的安全类云产品中,Web应用防火墙与云防火墙是用户比较关注的两款安全产品,二者在作用上各有侧重,共同构成了阿里云强大的安全防护体系。本文将对Web应用防火墙与云防火墙产品各自的主要作用进行详细介绍。
|
6月前
|
人工智能 自然语言处理 搜索推荐
销售易CRM:深度赋能企业销售全流程
销售易CRM是国内领先的客户关系管理系统,助力企业实现销售全流程自动化、数据驱动精准决策、跨部门高效协作及个性化定制。通过智能线索培育、实时数据分析、无缝系统集成与灵活业务调整,大幅提升销售效率与客户体验。结合AI技术与全面服务支持,销售易CRM成为企业数字化转型的可靠伙伴,推动企业在竞争中脱颖而出。
|
XML Java Android开发
15. 【Android教程】按钮 Button/ImageButton
15. 【Android教程】按钮 Button/ImageButton
323 2
|
存储 编解码 监控
NAS设备推荐品牌?
【6月更文挑战第30天】NAS设备推荐品牌?
614 60
|
固态存储 Ubuntu Linux
Linux(29) 多线程快速解压缩|删除|监视大型文件
Linux(29) 多线程快速解压缩|删除|监视大型文件
1246 1
|
jenkins 持续交付 Docker
docker 升级后或者重装后,启动容器提示:Error response from daemon: Unknown runtime specified docker-runc...
docker 升级后或者重装后,启动容器提示:Error response from daemon: Unknown runtime specified docker-runc...
886 0
docker 升级后或者重装后,启动容器提示:Error response from daemon: Unknown runtime specified docker-runc...