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

MeiliSearch-轻量级且美丽的搜索引擎

MeiliSearch-轻量级且美丽的搜索引擎

MeiliSearch 是一个功能强大、快速、开源、易于使用和部署的搜索引擎。它具有以下特点:

  • 支持中文搜索:MeiliSearch 对中文有良好的支持,不需要额外的配置。
  • 高度可定制:搜索和索引都可以高度定制,提供了诸如错字容忍、过滤器和同义词等功能。
  • 快速搜索:MeiliSearch 的搜索速度通常在 50 毫秒以内,能够提供快速的搜索体验。
  • 易于使用和部署:它提供了简单的安装和部署方式,并且有友好的 Web 界面用于开发调试。
  • 开源:MeiliSearch 是一个开源项目,用户可以自由使用和修改。

MeiliSearch 适用于各种需要搜索功能的场景,例如网站搜索、文档搜索、电商搜索等。它可以与各种编程语言和框架集成,提供灵活的搜索解决方案。

官网 https://www.meilisearch.com/
github: https://github.com/meilisearch/meilisearch
目前已有44k star
在这里插入图片描述

在线应用案例

https://where2watch.meilisearch.com/?utm_campaign=oss&utm_source=docs&utm_medium=what-is-meilisearch&utm_content=gif
在这里插入图片描述

docker 安装 MeiliSearch

以下是在 Docker 中安装 MeiliSearch 的步骤:

  1. 拉取 MeiliSearch 镜像:
    docker pull getmeili/meilisearch:latest
    
  2. 启动 MeiliSearch 服务:
    docker run -itd --rm \
    -p 7700:7700 \
    -v $(pwd)/meili_data:/meili_data \
    getmeili/meilisearch:latest
    
  3. 访问 MeiliSearch 服务:
    启动成功后,可以通过ip+端口进行访问,例如:http://111.230.12.22:7700

MeiliSearch支持多种语言的客户端

在这里插入图片描述

以下是一个使用 MeiliSearch Java 客户端的简单教程:

  1. 添加依赖:在项目的pom.xml文件中添加 MeiliSearch Java 客户端的依赖。例如:
<dependencies><dependency><groupId>com.meilisearch</groupId><artifactId>meilisearch-java</artifactId><version>0.18.0</version></dependency>
</dependencies>
  1. 创建 MeiliSearch 实例:使用主机地址和 API 密钥创建 MeiliSearch 实例。示例代码如下:
import com.meilisearch.sdk.Client;Client client = new Client("http://localhost:7700", "API_KEY");
  1. 创建索引:使用 MeiliSearch 实例创建一个新的索引。示例代码如下:
import com.meilisearch.sdk.Index;Index index = client.index("books");
  1. 添加文档:将文档添加到索引中。示例代码如下:
import com.meilisearch.sdk.UpdateStatus;
import com.meilisearch.sdk.documents.Document;Document document = new Document("book_id", "book_title", "book_description");
UpdateStatus updateStatus = index.addDocuments(document);
  1. 执行搜索:执行搜索操作来获取与查询匹配的结果。示例代码如下:
import com.meilisearch.sdk.SearchResult;SearchResult searchResult = index.search("query");
List<Map<String, Object>> hits = searchResult.getHits();
  1. 更新文档:更新索引中的文档。示例代码如下:
import com.meilisearch.sdk.UpdateStatus;
import com.meilisearch.sdk.documents.Document;Document document = new Document("book_id", "updated_title", "updated_description");
UpdateStatus updateStatus = index.updateDocuments(document);
  1. 删除文档:从索引中删除文档。示例代码如下:
import com.meilisearch.sdk.UpdateStatus;UpdateStatus updateStatus = index.deleteDocument("book_id");
http://www.lryc.cn/news/369915.html

相关文章:

  • python使用wkhtmltopdf将html字符串保存pdf,解决出现方框的问题
  • Java练习题
  • 【Python/Pytorch - 网络模型】-- 手把手搭建U-Net模型
  • Ansible-doc 命令
  • 面试题:什么是线程的上下文切换?
  • 【简单讲解Perl语言】
  • 专硕初试科目一样,但各专业的复试线差距不小!江南大学计算机考研考情分析!
  • “华为Ascend 910B AI芯片挑战NVIDIA A100:效能比肩,市场角逐加剧“
  • 针对多智能体协作框架的元编程——METAGPT
  • Django自定义CSS
  • Rust基础学习-标准库
  • django连接达梦数据库
  • Python深度学习基于Tensorflow(17)基于Transformer的图像处理实例VIT和Swin-T
  • 树莓派4B_OpenCv学习笔记5:读取窗口鼠标状态坐标_TrackBar滑动条控件的使用
  • c、c#、c++嵌入式比较?
  • 如何使用ai人工智能作诗?7个软件帮你快速作诗
  • 调用华为API实现语音合成
  • docker实战命令大全
  • Java线程死锁
  • virtual box安装invalid installation directory
  • 概率分析和随机算法
  • 15_2 Linux Shell基础
  • Catia装配体零件复制
  • 实用小工具-python esmre库实现word查找
  • SSM框架整合,内嵌Tomcat。基于注解的方式集成
  • 系统架构设计师【论文-2016年 试题4】: 论微服务架构及其应用(包括写作要点和经典范文)
  • 面试题:String 、StringBuffer 、StringBuilder的区别
  • TLS指纹跟踪网络安全实践(C/C++代码实现)
  • 小白学RAG:大模型 RAG 技术实践总结
  • Doris Connector 结合 Flink CDC 实现 MySQL 分库分表