常见的四大搜索引擎区别

news2024/11/25 18:54:15

一般应用或网站的信息会存储在数据库中,而随着时间的推移,数据库中的信息量达到一个量级后会出现访问速度变慢的情况,例如用户在客户端搜索一个商品名称,系统可能加载了好几秒才显示数据,这个时候就需要进行一些优化处理。此时搜索引擎就应运而生,当用户输入关键词进行查询时,搜索引擎会从对应索引对应的海量数据中匹配到符合当前关键词的文档,然后按照一定的排序规则呈现给用户。

常见的搜索引擎有很多,比如Lucene、Sphinx、XunSearch、还有大名鼎鼎的Elasticsearch,我们可以根据项目需求,来选择合适的搜索引擎来优化我们的项目,下面来说说这几个搜索引擎的区别。

一、Sphinx

在这里插入图片描述

一款基于Python语言开发的支持SQL的全文搜索引擎,在github 上 start达到5k,提供MySQL数据库插件,可以很方便的监听数据库变动,方便数据库集成,也支持API调用,对接搜索引擎相对来说比较灵活,不会局限在开发语言上。
需要中文分词的话可以安装Coreseek插件,支持短语搜索,自动生成文档摘要等。默认支持分布式搜索。

二、XunSearch

在这里插入图片描述

采用C/C++开发,最大特色是:快,搜索响应快,开发上手快。支持海量数据,单库最多支持40亿条数据,在 5 亿网页大约 1.5TB 的数据中,非缓存情况下检索时间不超过 1 秒,中文分词是自主研发的 scws分词应用,搜索效果符合国人习惯。可能是官方比较青睐PHP的关系, 自带PHP插件,支持包括字段检索、结果高亮、字段排序、布尔语法、区间检索、聚合搜索、相关搜索、权重微调、拼音搜索、搜索建议等等专业搜索引擎具备的功能。

三、MeiliSearch

在这里插入图片描述

基于高性能编程语言RUST开发的RESTful API搜索服务,目前github上面star数量为31.1K,欢迎程度可想而知,为所有希望为最终用户提供快速且相关的搜索体验的人提供现成的解决方案。它安装方便,使用简单,特别适合中小型企业或者个人项目中使用,在某些场景下用来替代Elasticsearch 将是个不错的选择,由于其对接方式为API,可以很容易的进行对接,还可以基于此打造管理搜索引擎的操作平台,进行可视化管理。

四、Elasticsearch

在这里插入图片描述

支持海量数据的分布式搜索和分析引擎,支持集群,是当前主流的企业级搜索引擎,可以与Logstash 和 Kibana 结合使用堪称三剑客, 互联网大型项目中都有他们的身影,因为定位原因, 上手难度高,开发者需要熟悉很多理念才能使用,同时由于其资源占用多,中小型项目亲和度比较低,很少在中小型项目中见到。

那么大家猜猜CRMEB开源商城使用的是哪个搜索引擎呢,有兴趣的程序大佬可以下载研究:​ ​点此下载

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

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

相关文章

ET框架(三)

Model》数据 HotFix》行为 ET框架中的ECS和Unity的ECS无关 hotfix 静态类静态方法>行为 可以控制组件 Model》数据 继承Entity IAwake初始化 Scene实体的子实体类型 特殊: Unity.hotfixView : Unity相关的行为 Unity .modeView: Unity相关的数据 代码公用&a…

WSL_01 Windows WSL 安装并配置镜像与SSH

文章目录1 WSL介绍2 安装步骤2.1 启用适用于 Linux 的 Windows 子系统2.2 检查运行 WSL 2 的要求2.3 启用虚拟机功能2.4 下载 Linux 内核更新包2.5 将 WSL 2 设置为默认版本2.6 安装所选的Linux 分发解决无法打开微软商店2.6.1 配置网络2.6.2 使用官方教程的链接2.6.3 使用命令…

Redis实战——达人探店

目录 1、发布笔记 1.1 上传图片 1.2. 发表博文功能: 2. 查看探店笔记 3. 点赞功能的实现 4. 点赞排行榜的实现 1、发布笔记 笔记类似点评网站的评价,往往是图文结合。 对应的表有两个 tb_blog:探店笔记表,包含笔记中的…

java计算机毕业设计springboot+vue高校本科学生综评系统

项目介绍 通篇文章的撰写基础是实际的应用需要,然后在架构系统之前全面复习大学所修习的相关知识以及网络提供的技术应用教程,以远程教育系统的实际应用需要出发,架构系统来改善现高校本科学生综评系统工作流程繁琐等问题。不仅如此以操作者的角度来说,该系统的架构能够对多媒…

网络流量回溯分析助力企业实现高效率运维(二)

背景 汽车配件电子图册系统是某汽车集团的重要业务系统。业务部门反映,汽车配件电子图册调用图纸时,出现访问慢现象。 某汽车总部已部署NetInside流量分析系统,使用流量分析系统提供实时和历史原始流量。本次分析重点针对汽车配件电子图册系…

在Python里使用ChatGPT

前言 近来chatGPT挺火的,也试玩了一下,确实挺有意思。这里记录一下在Python中如何去使用chatGPT。 本篇文章的实现100%基于 chatGPT,我是搬运工无疑了!!! 本片文章比较简单,下一篇基于本文章来写…

景联文科技:推动智慧医疗进程,浅谈运用到的数据标注技术

“近年来,人工智能蓬勃发展,不断赋能医疗健康领域,改善患者的就医体验,有效提高医疗质量。智能医疗的实现需要许多专业且精准的标注数据不断对智慧医疗技术中包含的算法模型进行训练调优。” 从2015年至今,我国急性脑梗…

java+MySQL 002ssm病人健康档案管理系统#毕业设计

随着时代的发展,人们对健康越来越重视。如何呢能够更好的对病人的健康档案信息进行管理是当前很多人关心的一个问题。本期系统也是出于这样的目的而进行开发的。 研究内容 1.不同用户的登录问题:根据用户的类别;超级管理员、普通用户;实现用户操作权限的区分并显示不…

三、数据链路层(四)流量控制和可靠传输机制

目录 4.1流量控制和可靠传输机制 4.2三种传统ARQ方式 4.2.1单帧滑动窗口与停止-等待协议 4.2.2多帧滑动窗口与后退N帧协议(GBN) 4.2.3多帧滑动窗口与选择重传协议(SR) 4.2.4三种ARQ协议窗口大小问题 4.2.5信道利用率、信道…

视频号怎么做呢?如何发视频号?

视频号怎么做呢?如何发视频号? 视频号怎么做呢?如何发视频号? 1、明确方向 首先明确自己要做什么类型的账号,下面是常见的一些账号属性: 商品带货号美食号知识号影视号游戏号书单号音乐号家庭生活号医疗号…

JAVA开发(Redis中key的设计)

在使用redis存储数据中,我们可以使用任何限定长度的字符串。但是还是需要注意点规范。一般是使用树形结构 一、redis中key的设计 我总结一下几种: 1、使用系统结构命名法 会员系统: 如:member:service:save:user member:servi…

[附源码]Node.js计算机毕业设计高校党建信息平台Express

项目运行 环境配置: Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境:最好是Nodejs最新版,我…

2022年电商年,电商企业怎么从抖音直播带货的包围网中脱颖而出

对于电商企业来说,2022年是非常重要的一年。多元的内容创作、多平台的发展、建立内容矩阵等方面都在时刻考验着电商企业的决策智慧,如何获得确定性的增长和追求长期价值,才是电商企业们做出正确选择的关键所在。 11月23日, 2022抖…

基于jsp+mysql+ssm多用户新闻发布管理系统-计算机毕业设计

项目介绍 新闻发布系统又叫做内容管理系统,是一个基于新闻和内容管理的全站管理系统。新闻发布系统是基于B/S模式开发的系统,该系统可以将杂乱无章的信息(包括文字、图片和影片)经过预先组织编排,合理有序地呈现在大家…

MapReduce词频统计演练进阶

目录 创建词频统计映射器类 创建词频统计驱动器类 第一次测试运行 修改词频统计映射器类WordCoutMapper类 修改词频统计驱动器WordCountDriver类 第二次测试运行 创建词频统计归并器类 第三测试运行 修改词频统计归并器类 第四次测试运行 修改词频统计驱动器类&#…

模拟实现字符串相关函数

上篇的延续 assert #include <stdio.h> #include <string.h> #include <assert.h> void my_strcpy(char* dest, char* src) {assert(src!NULL);//断言 满足某个条件 不允许发生什么事情的时候用断言assert(dest!NULL);while (*dest *src)//非0为真 0为假…

一文搞懂Vue2源码实现原理~ 手写Vue2系列~

Iterator&#xff08;遍历器&#xff09;的概念 JavaScript 原有的表示“集合”的数据结构&#xff0c;主要是数组&#xff08;Array&#xff09;和对象&#xff08;Object&#xff09;&#xff0c;ES6 又添加了Map和Set。这样就有了四种数据集合&#xff0c;用户还可以组合使…

KEIL调试正在运行的程序

问题现象 有时程序跑着跑着就飞了&#xff0c;但此时却没有接仿真器&#xff0c;不能停下来看运行状态。如果重新启动调试&#xff0c;会破坏现场。有没有办法attach到应用程序上调试呢&#xff1f; 答案是肯定的。 解决措施 在调试选项中&#xff0c;取消以下选择项 Option…

vue使用docker+node+nginx+linux自动化部署

假定你已经有一个vue项目了&#xff0c;并且已经用github进行管理了&#xff0c; 假定你还有一台免费的linux服务器&#xff0c;想用自动化部署的方式解放双手&#xff0c; 假定你已经了解dockerhub使用&#xff0c;想玩转docker容器&#xff1a;docker构建vue项目镜像并发布…

【QT 5 学习笔记-学习绘图相关+画图形图片等+绘图设备+基础学习(2)】

【QT 5 学习笔记-学习绘图相关画图形图片等绘图设备基础学习&#xff08;2&#xff09;】1、说明2、实验环境3、参照连接4、自己的学习与理解5、学习与实践代码&#xff08;1&#xff09;移动图片测试实验&#xff08;1&#xff09;继续之前的工程&#xff08;2&#xff09;引入…