当前位置: 首页 > news >正文

EelasticSearch是什么?及EelasticSearch的安装

一、概述

Elasticsearch 是一个基于 Apache Lucene 构建的开源分布式搜索引擎和分析引擎。它专为云计算环境设计,提供了一个分布式的、高可用的实时分析和搜索平台。Elasticsearch 可以处理大量数据,并且具备横向扩展能力,能够通过增加更多的硬件资源来应对数据和查询量的增长。

Elasticsearch 的核心特点包括:

  1. 全文搜索:支持对各种类型的数据(包括结构化、半结构化和非结构化文本数据)进行快速高效的全文本搜索。

  2. 分布式:数据在集群中的多个节点间分布和复制,确保高可用性和容错性,同时也支持水平扩展,以应对更大的数据量和更高的并发访问。

  3. 实时性:数据一旦写入 Elasticsearch,几乎可以立即被搜索到,提供近乎实时的搜索体验。

  4. 分析能力:内置丰富的数据分析工具,包括聚合分析(Aggregations)和其他统计功能,便于用户对数据进行深入挖掘和洞察。

  5. 多租户:支持索引级别的隔离,每个索引可以配置分片数量和副本数量,以满足不同业务场景的需求。

  6. RESTful API:通过 HTTP/HTTPS 协议提供 JSON 格式的 REST API 接口,易于与其他系统集成,支持多种开发语言调用。

  7. 灵活的文档模型:无需预定义严格的表结构,而是采用动态 schema 或映射,可以根据文档内容自动识别数据类型和结构。

Elasticsearch 被广泛应用在日志分析、监测数据、企业搜索、电子商务搜索、实时分析等多个领域,并常与 Logstash(日志收集和处理工具)、Kibana(数据可视化平台)共同构成 Elastic Stack(原 ELK Stack),形成一套完整的日志管理和数据分析解决方案。

二、什么场景会用到Elasticsearch

  1. 全文搜索

  2. 电商搜索:快速查找商品信息,支持模糊匹配、关键词高亮显示、过滤、排序等功能。

  3. 站内搜索:网站内部的页面、文章、博客等内容的搜索,提供类似Google的搜索体验。

  4. 文档管理系统:企业级文档搜索,如办公文档、合同、法律文件等的高效检索。

  5. 论坛和社交媒体:用户发表的内容搜索,如帖子、评论、话题等。

  6. 日志分析与监控

  7. 服务器日志:收集、索引和分析服务器产生的各类日志,用于故障排查、性能优化、安全审计等。

  8. 应用日志:跟踪应用程序的行为,帮助开发人员迅速定位错误、诊断问题。

  9. 运维监控:收集系统指标、网络流量数据,实时或历史数据分析,可视化展示系统状态和趋势。

  10. 数据分析

  11. 业务分析:实时或批量分析业务数据,生成报表,进行趋势分析、关联分析等。

  12. 时序数据分析:存储和分析时间序列数据,例如设备传感器数据、用户行为数据等。

  13. NoSQL JSON文档数据库

  14. 作为JSON文档数据库使用,存储和检索半结构化数据,支持地理位置查询和混合查询。

  15. 搜索推荐

  16. 实现个性化搜索和推荐功能,根据用户的搜索历史和行为模式,智能推荐相关内容。

  17. 地理信息系统

  18. 存储和查询带有地理位置信息的数据,构建地图应用、位置服务等相关功能。

  19. 大规模监控系统

  20. 结合Logstash和Kibana,搭建ELK Stack,进行大规模分布式环境下的日志集中管理、实时分析和可视化展示。

总之,Elasticsearch 适合那些需要对大量数据进行快速检索、实时分析和可视化展现的应用场景,特别是在处理非结构化或半结构化数据方面表现尤为出色。随着功能的不断丰富和完善,Elasticsearch 已经成为现代数据驱动型企业不可或缺的基础架构组件之一。

es分布式特点 :

三、Elasticsearch的安装

1.Docker安装

-e:参数是用来设置环境变量的。这个参数允许你在启动容器时定义或覆盖容器内部的环境变量。由于ES安装启动时默认占用全部内存,使用-e用来限制Elasticsearch容器内Java进程的初始堆大小(-Xms)和最大堆大小(-Xmx)。这意味着Elasticsearch启动时,其Java虚拟机将使用256MB作为最小和最大内存。

docker run -d --name es7 -e ES_JAVA_POTS="-Xms256m -Xmx256m" -e "discovery.type=single-node" -v /opt/es7/data/:/usr/share/elasticsearch/data  -p 9200:9200 -p 9300:9300 elasticsearch:7.14.0

查看容器 

查看容器日志

 如果出现权限不足的错误,修改权限重新运行容器

 再次查看容器日志,显示正常,安装成功

 2.客户端UI工具,Edge浏览器扩展

 新增数据索引(类似于数据库中的表)

 

 ES的分词器不支持中文需要我们另外安装分词器

四、分词器安装

参考网址:https://blog.51cto.com/u_15116285/6100979

官方插件下载地址:(下载和使用要用同一版本,多版本可能不兼容)

https://github.com/medcl/elasticsearch-analysis-ik/releases

#第一步 copy 插件到容器
docker cp /opt/es7/elasticsearch-analysis-ik-7.14.0.zip 容器id:/usr/share/elasticsearch#第二步进入你的容器
docker exec -it 容器id /bin/bash#第三步执行如下命令,安装插件,中间会提示 Y or N,直接写 Y ,回车即可
elasticsearch-plugin install file:\/usr/share/elasticsearch/elasticsearch-analysis-ik-7.14.0.zip#第四步退出容器
exit#第五步重启容器
docker restart 容器ID

测试:

post _analyze
{"analyzer": "ik_smart","text": "大学生自习室视频爆火鼻祖"
}

 

post _analyze
{"analyzer": "ik_max_word","text": "大学生自习室视频爆火鼻祖"
}

 

分词器原理:

 

 

相关文章:

EelasticSearch是什么?及EelasticSearch的安装

一、概述 Elasticsearch 是一个基于 Apache Lucene 构建的开源分布式搜索引擎和分析引擎。它专为云计算环境设计,提供了一个分布式的、高可用的实时分析和搜索平台。Elasticsearch 可以处理大量数据,并且具备横向扩展能力,能够通过增加更多的…...

Python机器学习项目开发实战:如何进行语音识别

注意:本文的下载教程,与以下文章的思路有相同点,也有不同点,最终目标只是让读者从多维度去熟练掌握本知识点。 下载教程:Python机器学习项目开发实战_语音识别_编程案例解析实例详解课程教程.pdf 在Python机器学习项目…...

2024年五一杯数学建模C题思路分析

文章目录 1 赛题思路2 比赛日期和时间3 组织机构4 建模常见问题类型4.1 分类问题4.2 优化问题4.3 预测问题4.4 评价问题 5 建模资料 1 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 2 比赛日期和时间 报名截止时间:2024…...

【代码】Python3|Requests 库怎么继承 Selenium 的 Headers (2024,Chrome)

本文使用的版本: Chrome 124Python 12Selenium 4.19.0 版本过旧可能会出现问题,但只要别差异太大,就可以看本文,因为本文对新老版本都有讲解。 文章目录 1 难点解析和具体思路2 注意事项2.1 PDF 资源获取时注意事项2.2 Capabiliti…...

JAVA程序设计-对象设计

无论是根据某马还是某谷的适配教程做项目时候,发现了大部分都是重复的crud,大部分只要做好笔记复习即可,但是却往往忘记了编码设计,所以这里开始复习编码设计,对象设计中,长期使用Mp的那一套导致就是Service Mapper,一套梭哈完了,这样很容易忘记基本功夫 POJO: 简单…...

蓝桥杯2024年第十五届省赛真题-R 格式

找到规律后如下&#xff0c;只需要用高精度加法和四舍五入&#xff08;本质也是高精度加法就能做&#xff09;&#xff0c;如果没有找到规律&#xff0c;就得自己写高精度乘法和加法&#xff0c;不熟练很容易错。 //#include<bits/stdc.h> #include<iostream> #i…...

Linux服务器硬件及RAID配置

一、服务器硬件 塔式服务器&#xff1a;最初的服务器形态之一&#xff0c;类似于传统的台式电脑&#xff0c;但具有更强的处理能力和稳定性&#xff0c;适合小型企业或部门使用。 机架式服务器&#xff1a;设计为可安装在标准化机架内的模块化单元&#xff0c;可以有效地节省空…...

前端 vue单页面中请求数量过多问题 控制单页面请求并发数

需求背景&#xff1a; 页面中需要展示柜子&#xff0c;一个柜子需要调用 详情接口以及状态接口 也就是说有一个柜子就需要调用两个接口&#xff0c;在项目初期&#xff0c;接手的公司项目大概也就4-5个柜子&#xff0c;最多的也不超过10个&#xff0c;但是突然进来一个项目&a…...

HarmonyOS开发实例:【分布式手写板】

介绍 本篇Codelab使用设备管理及分布式键值数据库能力&#xff0c;实现多设备之间手写板应用拉起及同步书写内容的功能。操作流程&#xff1a; 设备连接同一无线网络&#xff0c;安装分布式手写板应用。进入应用&#xff0c;点击允许使用多设备协同&#xff0c;点击主页上查询…...

Unity TMP Inputfield 输入框 框选 富文本 获取真实定位

一、带富文本标签的框选是什么 UGUI的InputField提供了selectionAnchorPosition和selectionFocusPosition&#xff0c;开始选择时的光标下标和当前光标下标 对于未添加富文本标签时&#xff0c;直接通过以上两个值&#xff0c;判断一下框选方向&#xff08;前向后/后向前&…...

如何在原生项目中集成flutter

两个前提条件&#xff1a; 从flutter v1.17版本开始&#xff0c;flutter module仅支持AndroidX的应用在release模式下flutter仅支持一下架构&#xff1a;x84_64、armeabi-v7a、arm6f4-v8a,不支持mips和x86;所以引入flutter前需要在app/build.gradle下配置flutter支持的架构 a…...

【设计模式】策略模式

目录 什么是策略模式 代码实现 什么是策略模式 策略模式是一种行为型设计模式&#xff0c;它定义了一系列算法&#xff0c;将每个算法封装成一个独立的对象&#xff0c;使得它们可以相互替换。 在策略模式中&#xff0c;通常有三个角色&#xff1a; 环境类&#xff08;Cont…...

Java面试八股之Iterator和ListIterator的区别是什么

Iterator和ListIterator的区别是什么 这道题也是考查我们对迭代器相关的接口的了解程度&#xff0c;从代码中我们可以看出后者是前者的子接口&#xff0c;在此基础上做了一些增强&#xff0c;并且只用于List集合类型。 定义与基本概念 Iterator&#xff1a; 定义&#xff1a…...

服务器中毒怎么办?企业数据安全需重视

互联网企业&#xff1a; 广义的互联网企业是指以计算机网络技术为基础&#xff0c;利用网络平台提供服务并因此获得收入的企业。广义的互联网企业可以分为:基础层互联网企业、服务层互联网企业、终端层互联网企业。 狭义的互联网企业是指在互联网上注册域名&#xff0c;建立网…...

k8s使用harbor私有仓库镜像 —— 筑梦之路

官方文档: Secret | Kubernetes ImagePullSecrets的设置是kubernetes机制的另一亮点&#xff0c;习惯于直接使用Docker Pull来拉取公共镜像&#xff0c;但非所有容器镜像都是公开的。此外&#xff0c;并不是所有的镜像仓库都允许匿名拉取&#xff0c;也就是说需要身份认证&…...

tcp bbr pacing 的对与错

前面提到 pacing 替代 burst 是大势所趋&#xff0c;核心原因就是摩尔定律逐渐失效&#xff0c;主机带宽追平交换带宽&#xff0c;交换机不再能轻易吸收掉主机突发&#xff0c;且随着视频类流量激增&#xff0c;又不能以大 buffer 做带宽后备。因此&#xff0c;主机必须 pacing…...

MySQL学习-非事务相关的六大日志、InnoDB的三大特性以及主从复制架构

一. 六大日志 慢查询日志:记录所有执行时间超过long_query_time的查询&#xff0c;方便定位并优化。 # 查询当前慢查询日志状态 SHOW VARIABLES LIKE slow_query_log; #启用慢查询日志 SET GLOBAL slow_query_log ON; #设置慢查询文件位置 SET GLOBAL slow_query_log_file …...

【软件测试】MIL/HIL/PIL/SIL测试

V字型开发流程 引用文章&#xff1a;汽车行业V模型开发详解 V模型开发&#xff08;V-Model Development&#xff09;是一种广泛应用于汽车行业的系统开发方法。它以字母“V”形状的图表形式展示了开发过程中不同阶段之间的关系&#xff0c;从需求分析到系统整合和验证&#x…...

WebKit结构深度解析:打造高效与安全的浏览器引擎

WebKit结构深度解析&#xff1a;打造高效与安全的浏览器引擎 在现代网络世界中&#xff0c;浏览器作为连接用户与互联网信息的桥梁&#xff0c;其背后的技术架构至关重要。WebKit&#xff0c;作为当今最流行的开源浏览器引擎之一&#xff0c;其结构设计和功能实现对于提升浏览…...

SQLSERVER对等发布问题处理

问题1&#xff1a; 无法对 数据库Sast_Business 执行 删除&#xff0c;因为它正用于复制。 (.Net SqlClient Data Provider) 处理&#xff1a; USE [master]; GO EXEC sp_replicationdboption dbname NSast_Business, optname Npublish, value Nfalse; EXEC sp_replica…...

MxRadioRF2xx库:ARM Mbed平台RF2xx射频驱动开发指南

1. MxRadioRF2xx 库概述 MxRadioRF2xx 是一个专为 ARM Mbed OS 平台设计的 Atmel&#xff08;现 Microchip&#xff09;RF2xx 系列射频收发器驱动库。该库并非对底层寄存器操作的简单封装&#xff0c;而是面向嵌入式无线应用开发者的工程化抽象层&#xff0c;其核心目标是&…...

告别加班!3个Word神技巧,文档处理快人一步

如影随形地跟着那堆积如山的文档&#xff0c;像学生名单&#xff0c;课程表&#xff0c;教学计划&#xff0c;家长通知等等&#xff0c;这些重复性工作着实耗费了大量精力。事实上&#xff0c;Word当中蕴含着好些能够让你达成事半功倍效果的技巧&#xff0c;一旦将它们掌握住&a…...

PdfiumAndroid完全指南:从集成到高级应用

PdfiumAndroid完全指南&#xff1a;从集成到高级应用 【免费下载链接】PdfiumAndroid 项目地址: https://gitcode.com/gh_mirrors/pd/PdfiumAndroid PdfiumAndroid是一款专为Android开发打造的PDF渲染库&#xff0c;基于Pdfium原生库提供API级别14及以上设备的PDF文件处…...

ArcGIS Pro模型构建器实战:从零搭建自动化地理处理工作流

1. 初识ArcGIS Pro模型构建器 第一次接触ArcGIS Pro的模型构建器时&#xff0c;我完全被它的可视化操作界面惊艳到了。这就像搭积木一样&#xff0c;不需要写一行代码&#xff0c;就能把复杂的地理处理流程串起来。记得当时有个项目需要批量处理上百个乡镇的耕地数据&#xff0…...

深入解析NAND Flash基础操作与系统集成——从阵列结构到多Die协同

1. NAND Flash基础结构与工作原理 NAND Flash存储器是现代存储系统的核心组件&#xff0c;从U盘到企业级SSD都依赖这项技术。要理解它的强大之处&#xff0c;得先从它的物理结构说起——想象一个巨大的立体停车场&#xff0c;每个停车位就是一个存储单元&#xff0c;而控制电路…...

SQLite.Interop.DLL加载失败的3种修复方案 - 从运行库到项目配置全搞定

SQLite.Interop.DLL加载失败的终极解决方案&#xff1a;从运行环境到项目配置深度解析 当你正在开发一个依赖SQLite数据库的C#项目时&#xff0c;突然遇到"无法加载DLLSQLite.Interop.DLL"的错误提示&#xff0c;这绝对是一个令人头疼的问题。作为一名有多年.NET开发…...

IPD实战指南:CBB模块化设计如何加速产品创新与资源整合

1. CBB模块化设计的本质与价值 第一次接触CBB这个概念时&#xff0c;我正负责一款智能家居产品的研发。当时团队为了赶进度&#xff0c;每个新产品都从零开始设计电路板&#xff0c;结果发现80%的功能模块都是重复的。这种低效的开发方式让我开始思考&#xff1a;能不能像搭积木…...

如何用Python爬取全国空气质量监测站数据(附完整代码与避坑指南)

Python实战&#xff1a;构建高稳定性的空气质量监测数据爬虫系统 清晨打开天气应用时&#xff0c;那些跳动的PM2.5数值背后&#xff0c;是遍布全国的空气质量监测站在持续工作。作为数据分析师或环境研究者&#xff0c;直接获取这些原始监测数据往往能发现更有价值的规律。但当…...

别再手动拖拽了!用Mermaid语法+draw.io,5分钟搞定系统设计流程图

从文本到图表&#xff1a;Mermaid与draw.io的高效设计工作流革命 每次系统设计会议后&#xff0c;你是否也经历过这样的场景&#xff1a;白板上密密麻麻的逻辑草图需要转化为电子版&#xff0c;而传统拖拽式绘图工具让你在调整箭头和对齐方框上耗费半小时&#xff1f;作为经历…...

【PAT甲级真题】- Is It a Binary Search Tree (25)

题目来源 Is It a Binary Search Tree (25) 题目描述点击链接自行查看 注意点&#xff1a; 这里的二叉搜索树大于等于插到右边 思路简介 一道二叉树模板题&#xff08;6202年了应该不会还有人不会写二叉树吧bushi &#xff09; 一开始想到前序遍历不可能确定一棵树还以为题目…...