如何减少索引使用的内存?
上次更新时间:2024 年 3 月 22 日
问题
如何减少使用 FT.CREATE
创建的索引所占用的内存?
回答
查找一些提示,以了解如何减少索引的内存占用。
- 声明索引时,
NOINDEX
表示该字段未编制索引。这对于存储您不想搜索但仍希望在搜索结果中检索的文本很有用。 - 审计您的
TEXT
索引。TEXT
会创建一个反向索引,当术语频率较高时,该反向索引可能很大。如果存储的数据是一个简单的字符串,TAG
可能是一个更方便的选择。并非所有内容都应被视为TEXT
。 - 通过使用
NOHL
禁用高亮显示,您可以节省存储空间和内存 - 如果您无需按某个文档内给定术语的频率进行排序,则可以在创建索引时对给定字段使用
NOFREQS
参数 - 如果您不需要对结果进行排序,则可以省略
SORTABLE
参数。对结果进行排序的功能会增加内存开销,因此请考虑不要在大文本属性中声明它。SORTABLE
通常可以实际上从TEXT
中移除,在全文搜索用例中,您不太需要根据字段数据的内筒对结果进行排序。全文搜索的排序通常使用搜索的相关性进行