为什么选择elasticsearch分布式搜索引擎

文章目录

  • 🔭什么是elasticsearch
    • 🌠ELK技术栈
    • 🌠elasticsearch和lucene
    • 🌠为什么不是其他搜索技术?
  • 🔭总结

🔭什么是elasticsearch


elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据中快速找到需要的内容

例如:

  • 在CSDN上搜索代码
    在这里插入图片描述

  • 在电商网站搜索商品
    在这里插入图片描述

  • 在百度搜索答案
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ubxdwba6-1692588091119)(assets/image-20210720193641907.png)]

🌠ELK技术栈


elasticsearch结合kibana、Logstash、Beats,也就是elastic stack(ELK)。被广泛应用在日志数据分析、实时监控等领域:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-W8Z5NMyu-1692588383708)(assets/image-20210720194008781.png)]

而elasticsearch是elastic stack的核心,负责存储、搜索、分析数据。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OYOd3xcS-1692588383709)(assets/image-20210720194230265.png)]

🌠elasticsearch和lucene

elasticsearch底层是基于lucene来实现的。

Lucene是一个Java语言的搜索引擎类库,是Apache公司的顶级项目,由DougCutting于1999年研发。官网地址:https://lucene.apache.org/ 。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Hf9OnbLG-1692588383710)(assets/image-20210720194547780.png)]

elasticsearch的发展历史:

  • 2004年Shay Banon基于Lucene开发了Compass
  • 2010年Shay Banon 重写了Compass,取名为Elasticsearch。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Wv9pZ3Mj-1692588428316)(assets/image-20210720195001221.png)]

🌠为什么不是其他搜索技术?


目前比较知名的搜索引擎技术排名:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dSND62h9-1692588453858)(assets/image-20210720195142535.png)]

虽然在早期,Apache Solr是最主要的搜索引擎技术,但随着发展elasticsearch已经渐渐超越了Solr,独占鳌头:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PDtrHxB8-1692588453859)(assets/image-20210720195306484.png)]

🔭总结


什么是elasticsearch?

  • 一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能

什么是elastic stack(ELK)?

  • 是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch

什么是Lucene?

  • 是Apache的开源搜索引擎类库,提供了搜索引擎的核心API

为什么选择 Elasticsearch 分布式搜索引擎?

  • 选择 Elasticsearch 分布式搜索引擎有以下几个重要的原因:
    1. 强大的搜索和查询功能:Elasticsearch 是一个基于 Lucene 的搜索引擎,提供了强大而灵活的全文搜索和查询功能。它支持复杂的查询语法、多字段搜索、近实时搜索以及聚合分析等高级搜索特性,使得在大数据量下进行快速和精确的搜索变得轻松。
    2. 分布式架构:Elasticsearch 被设计为分布式的搜索引擎,可以水平扩展来处理大规模数据集和高并发的查询请求。通过将数据分散存储在多个节点上,并利用分布式索引和分片机制,Elasticsearch 可以提供高可用性和弹性扩展性,保证系统的稳定性和性能。
    3. 多种数据类型支持:Elasticsearch 不仅可以存储和搜索结构化数据,还支持非结构化和半结构化数据。它对 JSON 格式的文档具有天然的支持,使得存储和检索各种类型的数据变得简单和灵活。
    4. 实时性和可扩展性:Elasticsearch 提供了近实时的搜索和分析能力,能够在数据写入后几乎立即被索引和查询。它还支持动态添加或移除节点,无需停机即可扩容和缩容集群,保证系统的高可用性和可扩展性。
    5. 强大的生态系统:Elasticsearch 是开源软件,拥有庞大的社区支持和活跃的开发人员社群。它提供了丰富的插件和工具,如 Logstash、Kibana 和 Beats 等,构建了完整的 ELK(Elasticsearch、Logstash、Kibana)堆栈,用于数据采集、存储、搜索和可视化等方面。
  • 综上所述,Elasticsearch 提供了高效、可扩展和灵活的分布式搜索引擎解决方案,适用于各种场景,包括日志分析、全文搜索、实时监控、推荐系统等。它的强大功能和生态系统使得开发人员能够快速构建复杂的数据搜索和分析应用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/47063.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL有关表的左连接,右连接,以及内连接

首先我们需要想一下,我们为什么需要将表连接在一起呢?换种说法,即我们需要查询的数据不在同一张表里面,而是在A表中查出一部分,然后再去B表中查出一部分,然后两者结合在一起,才是我们需要的部分…

动漫3D虚拟人物制作为企业数字化转型提供强大动力

一个 3D 虚拟数字人角色的制作流程,可以分为概念设定-3D 建模-贴图-蒙皮-动画-引擎测试六个步骤,涉及到的岗位有原画师、模型师、动画师等。角色概念设定、贴图绘制一般是由视觉设计师来完成;而建模、装配(骨骼绑定)、渲染动画是由三维设计师来制作完成。…

R package org.Hs.eg.db to convert gene id

文章目录 install使用org.Hs.egENSEMBL将Ensembl id convert to gene idorg.Hs.egGENENAME 将Ensembl id convert to gene nameorg.Hs.egSYMBOL 将 gene symbol convert to gene id我现在有一些ensembl id 如何转为 gene name注意你会遇到一些record不全的情况,gtf文…

商业智能BI是什么都不明白,如何实现数字化?

2021年下半年中国商业智能软件市场规模为4.8亿美元,2021年度市场规模达到7.8亿美元,同比增长34.9%,呈现飞速增长的趋势。数字化时代,商业智能BI对于企业的落地应用有着巨大价值,逐渐成为了现代企业信息化、数字化转型中…

怎么借助ChatGPT处理数据结构的问题

目录 使用ChatGPT进行数据格式化转换 代码示例 ChatGPT格式化数据提示语 代码示例 批量格式化数据提示语 代码示例 ChatGPT生成的格式化批处理代码 使用ChatGPT合并不同数据源的数据 合并数据提示语 自动合并数据提示语 ChatGPT生成的自动合并代码 结论 数据合并是…

在Windows下安装PIP+Phantomjs+Selenium

最近准备深入学习Python相关的爬虫知识了,如果说在使用Python爬取相对正规的网页使用"urllib2 BeautifulSoup 正则表达式"就能搞定的话;那么动态生成的信息页面,如Ajax、JavaScript等就需要通过"Phantomjs CasperJS Selen…

【从零开始的rust web开发之路 二】axum中间件和共享状态使用

系列文章目录 第一章 axum学习使用 第二章 axum中间件使用 文章目录 系列文章目录前言一、中间件是什么二、中间件使用常用中间件使用中间件使用TraceLayer中间件实现请求日志打印自定义中间件 共享状态 前言 上篇文件讲了路由和参数相应相关的。axum还有个关键的地方是中间件…

电工-学习电工有哪些好处

学习电工有哪些好处?在哪学习电工? 学习电工有哪些好处?在哪学习电工?学习电工可以做什么?优势有哪些? 学习电工可以做什么?学习电工有哪些好处? 就业去向:可在企业单位…

基于微信小程序的垃圾分类系统设计与实现(2.0 版本,附前后端代码)

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 1 简介 视频演示地址: 基于微信小程序的智能垃圾分类回收系统,可作为毕业设计 小…

PyCharm PyQt5 开发环境搭建

环境 python:3.6.x PyCharm:PyCharm 2019.3.5 (Community Edition) 安装PyQT5 pip install PyQt5 -i https://pypi.douban.com/simplepip install PyQt5-tools -i https://pypi.douban.com/simple配置PyCharm PyQtUIC Program :D:\Pytho…

Android kotlin 跳转手机热点开关页面和判断热点是否打开

Android kotlin 跳转手机热点开关页面和判断热点是否打开 判断热点是否打开跳转手机热点开关页面顺带介绍一些其他常用的设置页面跳转 其他热点的一些相关知识Local-only hotspot 参考 判断热点是否打开 网上方法比较多,我这边使用了通过WifiManager 拿反射的getWi…

从C语言到C++_33(C++11_上)initializer_list+右值引用+完美转发+移动构造/赋值

目录 1. 列表初始化initializer_list 2. 前面提到的一些知识点 2.1 小语法 2.2 STL中的一些变化 3. 右值和右值引用 3.1 右值和右值引用概念 3.2 右值引用类型的左值属性 3.3 左值引用与右值引用比较 3.4 右值引用的使用场景 3.4.1 左值引用的功能和短板 3.4.2 移动…

【javaweb】学习日记Day3 - Ajax 前后端分离开发 入门

目录 一、Ajax 1、简介 2、Axios (没懂 暂留) (1)请求方式别名 (2)发送get请求 (3)发送post请求 (4)案例 二、前端工程化 1、Vue项目-目录结构 2、…

第10步---MySQL的日志操作

第10步---MySQL的日志操作 错误日志 慢日志 1.查看错误日志 -- 查看日志信息 show VARIABLES like log_error%;2.查看binlog 高版本是默认开启的,低的是默认是不开启的 binlog日志文件是与事务相关 -- 查看binlog日志的格式 show variables like binlog_format;-- …

【Python机器学习】实验15 将Lenet5应用于Cifar10数据集(PyTorch实现)

文章目录 CIFAR10数据集介绍1. 数据的下载2.修改模型与前面的参数设置保持一致3. 新建模型4. 从数据集中分批量读取数据5. 定义损失函数6. 定义优化器7. 开始训练8.测试模型 9. 手写体图片的可视化10. 多幅图片的可视化 思考题11. 读取测试集的图片预测值(神经网络的…

qt中窗口的布局

qt中窗口的布局 常用的窗口布局方式使用拖拽控件的方式调用窗口布局使用Widget控件完成窗口布局布局中嵌套布局demo(制作登录页面) 如果不使用窗口布局,会带来的后果: 控件可能显示不出来不能按照期望的大小显示不能跟随窗口进行…

如何最简单、通俗地理解什么是机器学习?

那就究竟什么是学习呢?诺贝尔经济学奖和图灵奖双料得主、卡耐基梅隆大学的赫伯特 西蒙 (Herbert Simon) 教授是这样定义的:“学习是系统通过经验提升性能的过程”。可以看到,学习是一个过程,并且这里有3个关键词,即经验、提升和…

CSS中如何实现文字溢出省略号(text-overflow: ellipsis)效果?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ CSS中如何实现文字溢出省略号(text-overflow: ellipsis)效果?⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 …

【云原生,k8s】Helm应用包管理器介绍

目录 一、为什么需要Helm? (一)Helm介绍 (二)Helm有3个重要概念: (三)Helm特点 二、Helm V3变化 (一)架构变化 (二)自动创建名…

STM32L151C8T6 芯片数据手册

1. 芯片型号含义 2. Flash: 64KB 3. keil 配置ST-Link 烧录程序 4. keil 选择Flash 烧录算法 5. 系统主频 32Mhz 6. 时钟树 clock tree