java go c++ 开源全文搜索引擎

Apache Lucene Java 全文搜索框架

许可证:Apache-2.0 开发语言:Java 官网:https://lucene.apache.org/ Apache Lucene 是完全用 Java 编写的高性能、功能齐全的全文检索引擎架构,提供了完整的查询引擎和索引引擎、部分文本分析引擎。目的是为软件开发人员提供一个简单易用的工具包,以方便地在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。

Apache Lucene Java 全文搜索框架

Apache Solr 全文搜索服务器

许可证:Apache-2.0 开发语言:Java 官网:https://solr.apache.org/ Apache Solr 是基于 Lucene 的全文搜索服务器,也是最流行的企业级搜索引擎,其主要功能包括全文检索、命中高亮、分面搜索、动态聚类、数据库集成,以及对富文本(如 Word、PDF)的处理。Solr 高度可扩展,并提供了分布式搜索和索引复制,Solr 4 还增加了 NoSQL 支持。

Apache Solr 全文搜索服务器

Elasticsearch 分布式搜索引擎

许可证:Apache-2.0 开发语言:Java 官网:https://www.elastic.co/cn/elasticsearch/ Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。作为 Elastic Stack 的核心,Elasticsearch 会集中存储你的数据,让你飞快完成搜索,微调相关性,进行强大的分析,并轻松缩放规模。

Elasticsearch 分布式搜索引擎

Nutch 搜索引擎

许可证:Apache-2.0 开发语言:Java 官网:https://nutch.apache.org/ Nutch 是一个开源 Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和 Web 爬虫。 Nutch 的创始人是 Doug Cutting,他同时也是 Lucene、Hadoop 和 Avro 开源项目的创始人。

Nutch 搜索引擎

RediSearch 高性能全文搜索引擎

许可证:AGPL 开发语言:C/C++ 官网:https://redis.io/docs/stack/search/ RediSearch 是一个高性能的全文搜索引擎,可作为一个 Redis Module 运行在 Redis 上,是由 RedisLabs 团队开发的。 实现了Redis的查询、二级索引和全文搜索。这些功能在文本查询的基础上实现了多字段查询、聚合、精确短语匹配、数字过滤、地理过滤和矢量相似性语义搜索。

RediSearch 高性能全文搜索引擎

Sphinx Search 全文搜索引擎

许可证:GPL 开发语言:C/C++ 官网:http://sphinxsearch.com/ Sphinx 是一个开源的全文搜索服务器,从头开始设计时就考虑到了性能、相关性(又名搜索质量)和集成的简单性。它是用 C++ 编写的,适用于 Linux(RedHat、Ubuntu 等)、Windows、MacOS、Solaris、FreeBSD 和其他一些系统。 Sphinx 让你可以快速轻松地批量索引和搜索存储在 SQL 数据库、NoSQL 存储或文件中的数据,或者即时索引和搜索数据,使用 Sphinx 就像使用数据库服务器一样。各种文本处理功能可以根据你的特定应用程序要求微调 Sphinx,并且许多相关功能确保你也可以调整搜索质量。

Sphinx Search 全文搜索引擎

ftserver 轻量精准全文搜索服务器

开发语言:Java FTServer (FTS) 是一个轻量精准全文搜索服务器,使用英文规则处理英文,使用中文规则处理中文,不需要切割中文为单词,可以支持中文字的任意排列,精准搜索中文长句子,轻松处理古文古诗词,写意句子不影响搜索,不依赖词库,搜索中文不漏词。非常容易按需定制,直接编译就可以使用,无需额外配置,同时可以嵌入到各种应用内部。

Xapian C++检索引擎

许可证:GPL 开发语言:C/C++ 官网:https://xapian.org/ Xapian 是一个用 C++ 编写的全文检索程序,他的作用类似于 Java 的 lucene。尽管在 Java 世界 lucene 已经是标准的全文检索程序,但是 C/C++ 世界并没有相应的工具,而 Xapian 则填补了这个缺憾。 Xapian 是一个高度适应性的工具包,它允许开发人员轻松地将高级索引和搜索工具添加到他们自己的应用程序中。它内置支持多个权重模型系列,还支持一组丰富的布尔查询运算符。

Xapian C++检索引擎

Hibernate Search Hibernate搜索框架

许可证:LGPL 开发语言:Java 官网:https://hibernate.org/search/ Hibernate Search 的作用是对数据库中的数据进行检索的。它是 hibernate 对著名的全文检索系统 Lucene 的一个集成方案,作用在于对数据表中某些内容庞大的字段(如声明为 text 的字段)建立全文索引,这样通过 hibernate search 就可以对这些字段进行全文检索后获得相应的 POJO,从而加快了对内容庞大字段进行模糊搜索的速度(sql 语句中 like 匹配)。 Hibernate Search 自动从 Hibernate ORM 实体中提取数据,以将其推送到本地 Apache Lucene 索引或远程 Elasticsearch 索引。

Hibernate Search Hibernate搜索框架

MeiliSearch 轻量搜索引擎

许可证:MIT 开发语言:Rust 官网:https://www.meilisearch.com/ Meilisearch 是 Rust 实现的高性能开源搜索引擎,支持方便地集成到任何网站或应用程序,支持自托管 (self-hosting),可作为 Algolia 和 Elasticsearch 的轻量替代方案。Meilisearch 内置了许多实用功能,比如: 快速的输入即搜索 (search-as-you-type) 体验,也称作 “即时搜索” 支持冗错 / 纠错搜索 (typo tolerance) 支持多面搜索 (faceted search) 支持基于地理位置的搜索 (geosearch) 支持多租户 (multi-tenancy) Meilisearch 提供了一整套完整的 SDK 和库,让开发者便捷地将其连接到流行的编程语言和 Web 工具。Meilisearch 的搜索功能支持所有语言,对任何使用空格分隔单词的语言以及中文、日语、希伯来语、泰语和韩语都进行了特殊优化。

MeiliSearch 轻量搜索引擎

Manticore Search C++ 开发的高性能搜索引擎

许可证:GPL-2.0 开发语言:C/C++ 官网:https://manticoresearch.com/ Manticore Search 是一个使用 C++ 开发的高性能搜索引擎,创建于 2017 年,其前身是 Sphinx Search 。Manticore Search 充分利用了 Sphinx,显着改进了它的功能,修复了数百个错误,几乎完全重写了代码并保持开源!这一切使 Manticore Search 成为一个现代,快速,轻量级和功能齐全的数据库,具有出色的全文搜索功能。 来自 MS 官方的测试表明 Manticore Search 性能比 ElasticSearch 有很大的提升。

Manticore Search C++ 开发的高性能搜索引擎

Tantivy 全文搜索引擎库

许可证:MIT 开发语言:Ruby Tantivy 是一个用 Rust 编写的搜索引擎库,其灵感来自于 Lucene。得益于 Rust 语言加持,Tantivy 性能比 Lucene 要好得多。

Tantivy 全文搜索引擎库

Tantiny Ruby 全文搜索引擎库

许可证:MIT 开发语言:Ruby、SHELL、Rust Tantiny 是一个基于 Tantivy 的 Ruby 的最小化全文搜索库。当你手头的任务需要全文搜索,但配置一个完整的分布式搜索引擎会比任务本身花费更多的时间时,它是非常好的选择。 即使你已经在你的项目中使用了这样的引擎(实际上这是很有可能的),使用 Tantiny 仍然可能更容易,因为与 Solr 和 Elasticsearch 不同,它不需要任何东西来工作(没有单独的服务器或进程或其他什么),它是纯粹的可嵌入的。所以,当你发现自己在使用你所选择的搜索引擎会很麻烦 / 不方便,或者需要额外的设置时,你总是可以回到一个快速和肮脏的解决方案,但还是很灵活和快速。 Tantiny 并不完全是对 Tantivy 的 Ruby 绑定,但它试图接近。主要理念是提供对 Tantivy 倒排索引的低级访问,但具有漂亮的 Ruby 风格的 API、合理的默认设置和附加功能。

DataparkSearch 搜索引擎

许可证:GPL-2.0 开发语言:C/C++ 官网:http://www.dataparksearch.org/ DataparkSearch 搜索引擎是一个 C 语言的全功能的开源基于 Web 的搜索引擎。

GoFound 基于 Go 的全文检索引擎

许可证:Apache-2.0 开发语言:Google Go GoFound 是一个 go 语言全文检索引擎, 基于平衡二叉树 + 正排索引、倒排索引实现。可支持亿级数据、毫秒级查询。 使用简单,使用 http 接口,任何系统都可以使用。 技术栈: 平衡二叉查找树 二分法查找 快速排序法 倒排索引 正排索引 文件分片 golang-jieba 分词 leveldb

Compass 搜索引擎

许可证:Apache-2.0 开发语言:Java、Perl 官网:http://www.compass-project.org/ Compass 是一个建立在 Lucene 之上的开源项目,旨在简化搜索与任何 Java 应用的整合。Compass 提供了广泛的功能,旨在集成搜索引擎功能。下图显示了不同的 Compass 模块,然后是每个模块的简短描述。

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

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

相关文章

C语言经典算法【每日一练】20

题目&#xff1a;有一个已经排好序的数组。现输入一个数&#xff0c;要求按原来的规律将它插入数组中。 1、先排序 2、插入 #include <stdio.h>// 主函数 void main() {int i,j,p,q,s,n,a[11]{127,3,6,28,54,68,87,105,162,18};//排序&#xff08;选择排序&#xff09…

【力扣题解】P654-最大二叉树-Java题解

&#x1f468;‍&#x1f4bb;博客主页&#xff1a;花无缺 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! 本文由 花无缺 原创 收录于专栏 【力扣题解】 文章目录 【力扣题解】P654-最大二叉树-Java题解&#x1f30f;题目描述&#x1f4a1;题解&#x1f30f;总结…

三菱人机交互GT Designer的使用(二,开关,指示灯,数值显示,数值输入)

今天也开始每日一学&#xff0c;内容为开关&#xff0c;指示灯&#xff0c;数值显示&#xff0c;数值输入&#xff0c;以为这篇文章比较长&#xff0c;所有小编决分为3篇内容写完&#xff0c;谢谢大家阅读&#xff0c;不足之处&#xff0c;欢迎指正。 目录 开关 位&#xff0c…

荔枝派nano(f1c100s)基于I2C子系统的BME280驱动

硬件环境&#xff1a; 1、荔枝派nano&#xff08;f1c100s&#xff09; 2、使用f1c100s的i2c0&#xff0c;PE11和PE12引脚 软件环境&#xff1a; 1、Linux 4.15 2、BME280使用介绍 文章目录 一、I2C子系统1、应用层访问i2c设备2、驱动层访问i2c设备2.1、i2c总线设备驱动模型2.2、…

贪心算法Part01 455分发饼干

455分发饼干 376摆动序列 53 最大子数组和

【办公技巧】怎么批量提取文件名到excel

Excel是大家经常用来制作表格的文件&#xff0c;比如输入文件名&#xff0c;如果有大量文件需要输入&#xff0c;用张贴复制或者手动输入的方式还是很费时间的&#xff0c;今天和大家分享如何批量提取文件名。 打开需要提取文件名的文件夹&#xff0c;选中所有文件&#xff0c…

CodeWhisperer:编码世界中的声音启迪者

人烟 导语&#xff1a; 在数字化时代&#xff0c;编码已经成为了一种不可或缺的技能。而 CodeWhisperer&#xff08;编码世界中的声音启迪者&#xff09;则以其卓越的技术和深厚的知识为人们带来了独特的启发和指导。本文将介绍 CodeWhisperer 的背景和成就&#xff0c;探讨他是…

避开Python列表处理的雷区(二):从新手到专家的必看指南

文章目录 引言常见雷区汇总1. 访问列表中不存在的索引2. pop()方法索引越界 小结结尾 引言 Python列表是Python中最基础的数据结构之一&#xff0c;也是我们日常编程中经常使用的一种数据类型。然而&#xff0c;在进行列表处理时&#xff0c;许多新手和资深开发者都容易陷入一…

多家快递批量混合跟踪——跟踪物流必备份神器

先来跟大家说下我目前需要跟踪邮政、顺丰、德绑这三家快递&#xff0c;很朋友给建议是分开查询 &#xff0c;一家一家到快递官网上查询&#xff0c; 这个一种查询方法&#xff0c;这个虽然费时间&#xff0c;效率不高适合查询量少的情况&#xff0c;量多的情况下这样查起来太麻…

力扣题目学习笔记(OC + Swift)206. 反转链表

206. 反转链表 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 示例 方法一、迭代 在遍历链表时&#xff0c;将当前节点的 next\textit{next}next 指针改为指向前一个节点。由于节点没有引用其前一个节点&#xff0c;因此必须事先存储其…

跨境电商迎来综合竞争力比拼时代 五大趋势解读跨境2024

过去几年&#xff0c;跨境电商成为外贸出口增长的一大亮点&#xff0c;随着年底国务院办公厅《关于加快内外贸一体化发展的若干措施》的发布&#xff0c;跨境电商在促进经济发展、助力内外贸一体化发展方面的价值更加凸显。 这是跨境电商变化最快的时代&#xff0c;也是跨境电…

风电机叶片表面损坏检测数据集(1万多张+txt标签)

用于深度学习模型训练。有需要的朋友可以和我私聊 数据集信息部分截图 &#xff1a;

Linux服务器搭建笔记-006:拓展/home目录容量

一、问题说明 Ubuntu服务器在使用过程中创建的新用户&#xff0c;每位用户会在/home目录下生成一个属于其个人的主文件夹。如果不限制各个用户的使用空间&#xff0c;所有的用户都会共用/home所挂载的硬盘。在这种多用户情况下&#xff0c;会很快的填满/home目录&#xff0c;导…

.json文件转为.dll文件后还能读取吗?

(只是修改了后缀名而已&#xff0c;做一个伪装&#xff09; 测试&#xff1a; QFile file(QApplication::applicationDirPath() "/config.dll");qDebug()<<QApplication::applicationDirPath() "/config.dll";if (file.open(QIODevice::ReadOnly))…

Vue: 事件修饰符, 键盘事件, 鼠标事件,计算属性

目录 事件修饰符 阻止默认事件 阻止冒泡 允许触发一次 捕获模式 self passive 键盘事件 keyup & keydown 按键别名 注意tab 注意系统按键 自定义按键 鼠标事件 简介 鼠标焦点事件 计算属性 差值语法实现 methods实现 computed实现 get() set() 总…

PLC-IoT 网关开发札记(1):存档和分发 Android App

开篇记 PLC-IoT 网关是作者开发的产品&#xff0c;根据客户需求&#xff0c;立项开发手机 App&#xff0c;为用户提供一种方便、直观、友好的设备操控方式。网关运行的是嵌入式 Linux 操作系统&#xff0c;计划通过某一种通信协议&#xff08;例如 HTTP&#xff0c;MQTT或者 T…

KMP算法的理解+板子

对kmp算法的理解中&#xff0c;很重要的一点就是next数组。 很多人不理解next数组的含义&#xff0c;是因为它同时具有两个意思&#xff0c;而且这两个意思在不同的环境下不同。 现在给你两个字符串&#xff1a; 一个是文本串 text 一个是模板串 pattern 然后定义两个指针…

react+redux+antd-mobile 之 记账本案例

1.环境搭建 //使用CRA创建项目&#xff0c;并安装必要依赖&#xff0c;包括下列基础包 //1. Redux状态管理 - reduxjs/toolkit 、 react-redux //2. 路由 - react-router-dom //3. 时间处理 - dayjs //4. class类名处理 - classnames //5. 移动端组件库 - antd-mobile //6. 请…

偏好对齐RLHF-OpenAI·DeepMind·Anthropic对比分析

OpenAI paper: InstructGPT, Training language models to follow instructions with human feedback paper: Learning to summarize from human feedback Introducing ChatGPT 解密Prompt系列4介绍了InstructGPT指令微调的部分&#xff0c;这里只看偏好对齐的部分 样本构建…

竞赛保研 基于机器学习与大数据的糖尿病预测

文章目录 1 前言1 课题背景2 数据导入处理3 数据可视化分析4 特征选择4.1 通过相关性进行筛选4.2 多重共线性4.3 RFE&#xff08;递归特征消除法&#xff09;4.4 正则化 5 机器学习模型建立与评价5.1 评价方式的选择5.2 模型的建立与评价5.3 模型参数调优5.4 将调参过后的模型重…