前往主页Meilisearch 的标志
返回文章
2023年2月6日

v1.0 版本新特性

Meilisearch 的首个主要版本稳定了 CLI、增强了安全性,并承诺这将是下一个主要版本发布前的最后一次重大更改。

Carolina Ferreira
Carolina FerreiraMeilisearch 开发者布道师@CarolainFG
What’s new in v1.0

我们很高兴地宣布 Meilisearch 的首个主要版本已发布!这是许多人共同努力的成果。我们很自豪能够发布一个完全稳定的 Meilisearch 版本,它将保证与 Meilisearch 未来版本的兼容性。我们非常感谢我们的社区,他们一直支持我们并帮助我们走到今天。

让我们来看看一些最重要的变化。您可以在 GitHub 上阅读完整的更新日志,但我们将在本文中介绍主要内容。

新功能:支持韩语

Meilisearch 支持多种语言,并针对多种语言进行了优化。感谢我们出色的贡献者 qbx2,我们现在也支持韩语了。

改进:语言支持

感谢全球社区的参与、反馈、建议和 PRs,我们全面改进了语言支持,特别是对中文的显著增强

我们一直在寻求改进,欢迎加入 GitHub 上关于中文支持的讨论

我们还实施了一种新的、更高效的规范化器,用于去除重音和其他非间距标记,这改进了对希伯来语、泰语、阿拉伯语和拉丁语的支持。

改进:一步升级

Meilisearch v0.20 或更早版本的用户必须执行两步迁移才能在 0.24 以上版本中使用其数据库。直到现在。

v1.0 兼容所有先前版本的转储数据。

我们简化了流程,以便任何人都可以顺利迁移到我们的第一个主要版本!请查阅我们文档中的更新指南

改进:索引和搜索速度

  • 我们减少了包含多个长单词的搜索请求的内存使用量。
  • 我们还降低了精确度排序规则的计算复杂度,并实现了缓存系统,从而显著提高了其性能,特别是对于包含许多单词的搜索查询。
  • 在解释搜索查询时,多词同义词不再被视为常规搜索查询词,而是短语。假设您将 San Francisco 和 SF 设置为同义词。以下搜索请求
    I am going to SF soon
    现在将被解释为
    I am going to "San Francisco" soon
    这一改变防止了包含多词同义词的请求超出词语长度限制并降低搜索性能。同时,它消除了一个拒绝服务攻击的来源,并提高了搜索结果的相关性。
  • 我们调整了对于以前缀或非常短的单词结尾的搜索请求的近距离规则行为,以实现显著的速度提升。
  • 在 v1.0 之前,如果设置对象包含可搜索属性,更新设置总是会触发重新索引。现在,Meilisearch 会检查是否进行了任何更改,以避免不必要的重新索引。非常感谢 GregoryConrad 实现了这一点!

重大更改

您会很高兴地得知,以下是我们在 v2.0 之前将引入的最后一次重大更改 🥳 您可以暂时放松一下,v2.0 尚未计划 ☺️

请查看我们的新版本控制策略,了解更多关于重大更改的信息。

新的主密钥安全要求

为了加强安全性,当服务器环境设置为 production 时,Meilisearch 现在要求主密钥至少为 16 字节。如果未提供主密钥或不符合标准,Meilisearch 将建议一个安全的自动生成主密钥,您可以在重启实例时使用。

主键推断改进

在 Meilisearch 中创建索引或添加文档时,您可以显式设置主键,或者让 Meilisearch 从您的数据集中推断出来。

为了猜测主键(也称为推断),Meilisearch 以前会查看您的第一个文档中是否有一个包含字符串 id 的属性。现在,它会查找一个以字符串 id 结尾的属性。

此外,如果检测到多个以 id 结尾的属性,Meilisearch 现在将抛出错误,要求您使用更新索引端点手动指定主键。

新的 CLI 行为

--max-index-size--max-task-db 已被移除,因为它们实际上并没有限制 Meilisearch 占用的磁盘空间。这一变化带来两个后果:

  1. 由于操作系统对单个进程可分配虚拟内存量的限制,Meilisearch 数据库中可以同时存在的索引数量为:
  • Linux/macOS 大约 200 个
  • Windows 大约 20 个

2. 单个索引的大小限制为 500GiB

虽然我们计划在 v1.1 中取消上述限制,但如果这些更改中的任何一项影响到您,您的反馈将大有帮助。您可以在此GitHub 讨论中找到更多详细信息。

自 v0.26 引入以来,自动批处理功能已证明其价值。出于调试目的而保留的 disable-auto-batching CLI 选项和相关的环境变量 MEILI_DISABLE_AUTO_BATCHING 已不再需要,并已被移除。

我们还移除了 --snapshot-interval-sec 标志,以简化快照调度。

之前:

meilisearch --schedule-snapshot --snapshot-interval-sec 3600

之后

meilisearch --schedule-snapshot 3600
# If no value is provided, Meilisearch will take a new snapshot every 24 hours.

最后,为了保持一致性,CLI 选项 --dumps-dir 已被重命名为 --dump-dir,这更符合惯例,并与现有其他选项保持一致。

错误处理改进

为了在使用 API 时提供更高的清晰度和可预测性,我们添加了细粒度的错误代码和一种新的 system 错误类型。您可以在更新日志中查阅详细列表。

贡献者

非常感谢所有贡献者!没有你们的支持,我们不可能达到这个里程碑。你们真的非常棒,我们对你们为 Meilisearch 付出的所有努力、建议、评论和时间感激不尽。我们非常幸运拥有这样一个了不起的社区。

本月,我们要特别感谢 @amab8901@colbsmcdolbs@elbertronnie@funilrys@jiangbo212@mohitsaxenaknoldus@shivaylambaMeilisearch 的帮助,以及 @amab8901@GregoryConrad@pnhatminhMilli 的贡献。同样,我们也要感谢 @choznerol@crudiedo@daniel-shuy@harshalkhachane@mosuka@qbx2@Roms1383@Sokom141@yenwelCharabia 的宝贵支持。

Meilisearch 1.14

Meilisearch 1.14

Meilisearch 1.14 引入了新的实验性功能,包括复合嵌入器和嵌入缓存以提升性能。它还增加了核心功能,例如细粒度可过滤属性和按 ID 批量检索文档。

Carolina Ferreira
Carolina Ferreira2025年4月14日
Meilisearch AI launch week recap

Meilisearch AI 发布周回顾

Meilisearch AI 发布回顾:利用 AI 和个性化改造搜索

Maya Shin
Maya Shin2025年3月28日
Introducing Meilisearch's next-generation indexer: 4x faster updates, 30% less storage

推出 Meilisearch 的下一代索引器:更新速度快 4 倍,存储减少 30%

2024 版索引器通过并行处理、优化内存使用和增强可观察性,彻底改变了搜索性能。查看我们最新版本的新功能。

Louis Dureuil
Louis Dureuil2025年2月26日