为什么选择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.rhkb.cn/news/108159.html

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

相关文章

C语言之函数题

目录 1.乘法口诀表 2.交换两个整数 3.函数判断闰年 4.函数判断素数 5.计算斐波那契数 6.递归实现n的k次方 7.计算一个数的每位之和(递归) 8.字符串逆序(递归实现) 9.strlen的模拟(递归实现) 10.求…

基于springboot学生社团管理系统/基于Java的高校社团管理系统的设计与实现

摘 要 随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息。为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时代&…

蚂蚁 SOFAServerless 微服务新架构的探索与实践

赵真灵(有济) 蚂蚁集团技术专家 Serverless 和微服务领域专家曾负责基于 K8s Deployment 的应用发布运维平台建设、K8s 集群的 Node/pod 多级弹性伸缩与产品建设。当前主要负责应用架构演进和 Serverless 相关工作。同时也是 SOFAArk 社区的开发和维护者…

搭建开发环境-WSL+Ubuntu(一键搭建开发环境)

概述 所谓工欲善其事必先利其器,搭环境往往是开发过程中卡出很多初学者的拦路虎。 对于很多老鸟来说,很多东西都已经习惯成自然,也就没有刻意和初学者说。但对于很多初学者,却是受益良多。 这个系列,先从操作系统开始…

fegin实现方法级别注解超时配置

fegin实现方法级别注解超时配置 测试的3.18新版本已经支持方法中参数带有Options 也可以自定义配置, Options options findOptions(argv);; 使用该注解方式需配合AOP使用! 原理是包装自己的client客户端, 替换框架的客户端! 应用到生产环境需自己充验证测试 1.0 注解 Target(…

C# .aspx网页获取RFID读卡器HTTP协议提交的访问文件Request获得卡号、机号,Response回应驱动读卡器显示响声

本示例使用的设备:RFID网络WIFI无线TCP/UDP/HTTP可编程二次开发读卡器POE供电语音-淘宝网 (taobao.com) 服务端代码: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.…

【QT】重写QAbstractLIstModel,使用ListView来显示多列数据

qt提供了几个视图来进行信息的列表显示,QListView可以用来显示继承QStractListModel的字符串列表中的字符串,默认的模型里面只包含一列的内容: 这里以qml为例子,先新建一个qml的项目,示例代码如下: 先创建一…

深度学习3. 强化学习-Reinforcement learning | RL

强化学习是机器学习的一种学习方式,它跟监督学习、无监督学习是对应的。本文将详细介绍强化学习的基本概念、应用场景和主流的强化学习算法及分类。 目录 什么是强化学习? 强化学习的应用场景 强化学习的主流算法 强化学习(reinforcement learning) …

产品经理的六步路线图:快速制定你的产品计划

2023年的软件世界比以往任何时候都发展得更快,并充满了各种变量。而这将会以各种方式影响产品路线图的落地执行与实现。随着问题越来越多,世界需要不断发展的解决方案。因此,本文结合产品路线图当前存在的共性问题,借鉴企业的成功…

wxpython:wx.html2 是好用的 WebView 组件

wxpython : wx.html2 是好用的 WebView 组件。 wx.html2 是wxPython扩展模块中封装得干净漂亮的模块之一,它被设计为允许为每个端口创建多个后端,尽管目前只有一个可用。它与wx.html.HtmlWindow 的不同之处在于,每个后端实际上都是一个完整的…

图像检索,目标检测map的实现

一、图像检索指标Rank1,map 参考:https://blog.csdn.net/weixin_41427758/article/details/81188164?spm1001.2014.3001.5506 1.Rank1: rank-k:算法返回的排序列表中,前k位为存在检索目标则称为rank-k命中。 常用的为rank1:首…

官方项目《内容示例》中Common UI部分笔记: 1.1 Activatable Widgets

本文主要面向UMG以及Common UI的初学者 文章目录 效果展示概要Activate和Deactivate可见性绑定UI动画设置Common Activatable Widget的默认焦点 效果展示 概要 这个例子非常简单,定义了13个Common Activatable Widget CommonUI_ActivatableWidgets相当于一个容器包…

UITableView自定义TableHeader和TableFooter

UITableView自定义TableHeader和TableFooter 我猜你希望的效果是这样的 我猜你希望的效果是这样的 自定义页眉视图 让我们创建一个文件名 UITableViewHeaderFooterView 的 CustomerHeaderView 子类。 现在让我们创建视图的 Xib 文件并将其命名为 CustomHeaderView。 更改高度标…

第 360 场 LeetCode 周赛题解

A 距离原点最远的点 串中的 “_” 处要么都向左走要么都向右走 class Solution { public:int furthestDistanceFromOrigin(string moves) {int t 0;for (auto x: moves)if (x ! R)t--;elset;int res abs(t);t 0;for (auto x: moves)if (x ! L)t;elset--;res max(res, abs(t…

C语言基础之——指针(下)

前言:本篇文章将继续讲解有关指针的剩余基础知识。 学无止境,一起加油叭!! 目录 一.指针运算 1.指针 - 整数 2.指针的关系运算 3.指针 - 指针 二.指针与数组 三.二级指针 四.指针数组 总结 一.指针运算 指针运算包括以下三…

可解释性的相关介绍

一、可解释性的元定义(Meta-definitions of Interpretability) The extent to which an individual can comprehend the cause of a model’s outcome. [1]The degree to which a human can consistently predict a model’s outcome. [2] 可解释性&am…

小研究 - Java虚拟机垃圾收集器的性能分析与调节

垃圾收集器是Java虚拟机(JVM)的核心组成部分之一,对Java虚拟机的性能有非常重要的影响。本文将介绍&#xff2…

十几款拿来就能用的炫酷表白代码

「作者主页」:士别三日wyx 「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」:小白零基础《Python入门到精通》 表白代码 1、坐我女朋友好吗,不同意就关机.vbs2、坐我女朋友好吗&…

<八> objectARX开发:动态拖动Jig创建自定义实体

1、介绍 接上一篇文章,在某些情况下,CAD中的实体对象初始参数并不是固定的,我们需要通过jig动态拖动方式来绘制自定义实体,下面就用一个简单的例子来介绍一下自定义实体动态绘制。   实体形状:包括实体夹点和文字夹点拖动实现。 2、效果 3、源码 static void RYMyGrou…

CAN总线学习——物理层、数据链路层、CANopen协议

1、CAN总线介绍 1.1、CAN总线描述 (1)CAN总线支持多节点通信,但是节点不分区主从,也就是不存在一个节点来负责维护总线的通信;这点可以和I2C总线对对比,I2C是一主多从模式; (2)是差分、异步、串行总线,采用…