Meilisearch:不让人头疼的搜索引擎
Meilisearch 是一个用 Rust 编写的开源搜索引擎。其主要卖点是"简单好用":配置只需几分钟,搜索结果无需精细调优即可保持相关性。
为什么选择 Meilisearch
大多数搜索解决方案(Elasticsearch、Solr)需要大量的配置和管理工作。Meilisearch 走了不同的路:
- 即时搜索(输入即搜) — 敲下第一个字符即显示结果
- 拼写容错 — “ipone” 能找到 “iPhone”,无需额外配置
- 过滤器和分面 — 全部通过 REST API 实现
- 相关性排序 — 可自定义排名规则
- 出色文档 — 交互式示例,支持所有主流编程语言的 SDK
技术细节
Meilisearch 作为独立服务运行。通过 REST API 索引数据:发送 JSON 文档,获取搜索索引。底层是 Rust 编写的自定义引擎,确保速度和低内存占用。
支持:同义词、停用词、匹配高亮、地理搜索。中文开箱即用。
局限性
- 最大索引大小约 1 亿条文档(超大规模需使用 Elasticsearch)
- 开源版本不支持分布式搜索
- 开源许可证于 2023 年从 MIT 更改为专有许可(但旧版本仍为 MIT)
结论
对大多数项目 — 网站、电商平台、文档站点 — Meilisearch 在搜索简便性和质量之间提供了完美平衡。建议从它开始,而非 Elasticsearch。