在 RediSearch 中使用动态索引有意义吗?

Does it make sense to have dynamic indexes in RediSearch?

例如:考虑一个散列(我们称之为事件)有两个可搜索的属性:user_id(数字)和名称(文本)。

但是,每当我需要按名称过滤事件时,我手头都有 user_id。 所以我想知道为每个用户设置一个事件索引而不是为所有用户设置一个大事件索引是否有意义。

根据我对 Redis 和 RediSearch 的基本了解:

@jonathan 这取决于您的性能要求和可用内存。

如果内存不是问题(两次索引同一个文档)并且您希望将延迟降至最低,那么这听起来像是一个可选选项。

创建如此多的索引会对 GC 产生开销,因此您应该仅在用户级索引相当静态或短暂时才考虑它,您可以将其定义为 TEMPORARY(可以与无限超时)

参见:https://oss.redis.com/redisearch/Commands/#ftcreate