2025年9月25日: PostgreSQL 18 发布!

PGroonga 4.0.4 - 多语言快速全文搜索

发布于 2025-10-09, 作者: PGroonga 项目
相关开源项目

您好!

PGroonga 4.0.4 已发布!

更新内容

以下是 PGroonga 4.0.4 的主要亮点:

支持 PostgreSQL 18

在 PostgreSQL 18 及更高版本上,PostgreSQL 的查询规划器可以将 PGroonga 识别为有序索引。对于 LIKE ... ORDER BY ... LIMIT 类型的查询,PGroonga 可以将已过滤且已排序的记录返回给 PostgreSQL。当匹配到许多行时,此改进可能会提高响应时间。

在 PostgreSQL 17 或更早版本上,即使 PGroonga 索引已排序,PostgreSQL 仍然会排序结果。从这个版本开始,在 PostgreSQL 18+ 上,当 PGroonga 提供排序输出时,PostgreSQL 会跳过额外的排序。因此,PGroonga 可以更有效地返回结果。

此外,我们现在为 Debian GNU/Linux trixie 和 AlmaLinux 10 提供了 PGroonga 包。这使得在最新的操作系统版本上轻松使用最新的 PostgreSQL 和 PGroonga 成为可能。

有关详细信息,请参阅以下发布说明 URL:

  • https://pgroonga.github.io/news/index.html#version-4-0-4

关于 PGroonga

PGroonga 是一个 PostgreSQL 扩展,它使 PostgreSQL 成为支持所有语言的全文搜索平台!通过将 PGroonga 安装到您的 PostgreSQL 中,您可以零 ETL(提取、转换、加载)对所有语言使用超快的全文搜索功能!它在 PostgreSQL 许可下发布。

有一些 PostgreSQL 扩展可以改进 PostgreSQL 的全文搜索功能,例如 pg_trgm ^1

pg_trgm 不支持使用非字母数字字符的语言,例如日语和中文。

PGroonga 支持所有语言,提供丰富的全文搜索相关功能,并且速度非常快。这是因为 PGroonga 使用强大的全文搜索引擎 Groonga ^2 作为后端。

有关性能,请参阅以下基准测试结果:

  • PGroonga、textsearch 和 pg_trgm 在英文维基百科上的基准测试结果 https://pgroonga.github.io/reference/pgroonga-versus-textsearch-and-pg-trgm.html
  • PGroonga 和 pg_bigm 在日文维基百科上的基准测试结果 https://pgroonga.github.io/reference/pgroonga-versus-pg-bigm.html

PGroonga 还支持 JSON 搜索。您可以将每个值用作条件。您还可以对 JSON 中的所有文本执行全文搜索,就像 PostgreSQL 10 中的 textsearch 功能一样。

用法

您可以在不具备全文搜索知识的情况下使用 PGroonga。只需创建一个索引并将条件添加到 WHERE 子句中即可。

CREATE INDEX index_name ON table USING pgroonga (column);

SELECT * FROM table WHERE column &@~ 'PostgreSQL';

您还可以使用 LIKE 语句来利用 PGroonga。PGroonga 提供了一个可以通过索引执行 LIKE 搜索的功能。带有 PGroonga 索引的 LIKE 搜索比没有索引的 LIKE 搜索更快。这意味着您可以在不更改使用以下 SQL 的应用程序的情况下提高性能:

SELECT * FROM table WHERE column LIKE '%PostgreSQL%';

您对 PGroonga 感兴趣吗?请安装 ^4 并尝试教程 ^5。您可以了解 PGroonga 的所有功能。

PGroonga 提供主流平台的软件包,因此安装非常方便。Windows 平台也提供二进制文件。

用户

以下是 PGroonga 的用户:

  • Zulip: https://zulip.com/
    • 强大的开源群聊工具

https://pgroonga.github.io/users/

谢谢!