PostgreSQL 的文本搜索功能的当前限制如下:
每个词素(lexeme)的长度必须小于 2KB。
tsvector
(词素 + 位置)的长度必须小于 1MB。
词素的数量必须小于 264。
tsvector
中的位置值必须大于 0 且小于或等于 16,383。
在 tsquery
的 <
(FOLLOWED BY) 运算符中的匹配距离不能超过 16,384。N
>
每个词素最多只能有 256 个位置。
tsquery
中的节点(词素 + 运算符)数量必须小于 32,768。
作为对比,PostgreSQL 8.1 的文档包含 10,441 个唯一单词,总计 335,420 个单词,其中最频繁的单词““postgresql””在 655 个文档中被提及了 6,127 次。
另一个例子 - PostgreSQL 邮件列表的存档包含 910,989 个唯一单词,在 461,020 条消息中有 57,491,343 个词素。
如果您在文档中发现任何不正确、与您对特定功能的使用体验不符或需要进一步说明的内容,请使用 此表格 报告文档问题。