视频

了解更多
我们很高兴宣布发布 RediSearch 2.0 开发中的第一个里程碑。RediSearch 是一个实时搜索引擎,允许您查询 Redis 数据以回答各种复杂问题。
这个里程碑,代号为 2.0-M01,标志着索引与数据同步方式的重新架构。RediSearch 现在不再需要通过索引写入数据(使用 FT.ADD 命令),而是会跟踪写入哈希中的数据并自动对其进行索引。
这里最大的优势是,您现在可以将 RediSearch 添加到您现有的 Redis 实例中并创建一个辅助索引,而无需更新您的应用程序代码。只需加载 RediSearch 模块并定义模式,您就可以立即在现有数据上使用 RediSearch。RediSearch 2.0 预计将在今年秋季全面发布。
(注意:此新功能对 API(如下所示)引入了一些更改。我们尽力保持向后兼容性,但在这种情况下是不可能的。随着我们收集客户反馈,我们计划在未来进行调整和修复。)
如上所述,此 RediSearch 2.0 里程碑包括对 API 的一些更改:
API 最大的更新是索引的创建方式。在 RediSearch 2.0 中,命令 FT.CREATE 用于创建索引。API 中的添加部分在此处以黄色突出显示
FT.CREATE {index}
ON {structure}
[PREFIX {count} {prefix} [{prefix} ..]
[FILTER {filter}]
[LANGUAGE_FIELD {lang_field}]
[LANGUAGE {lang}]
[SCORE_FIELD {score_field}]
[SCORE {score}]
[PAYLOAD_FIELD {payload_field}]
[TEMPORARY {seconds}]
[MAXTEXTFIELDS]
[NOOFFSETS] [NOHL] [NOFIELDS] [NOFREQS]
[STOPWORDS {num} {stopword} ...]
SCHEMA {field} [TEXT [NOSTEM] [WEIGHT {weight}] [PHONETIC {matcher}] | NUMERIC | GEO | TAG [SEPARATOR {sep}] ] [SORTABLE][NOINDEX] ...
让我们深入了解一些细节
RediSearch 2.0-M01 里程碑还带来了其他一些更新
FT.ADD idx doc1 1.0 LANGUAGE eng PAYLOAD payload FIELDS f1 v1 f2 v2
映射到
HSET doc1 __score 1.0 __language eng __payload payload f1 v1 f2 v2
这意味着索引上的分数、语言和有效负载字段必须分别称为 __score、__language、__payload,以便映射按预期工作。
我们对这些更改感到非常兴奋,因为您现在可以 将 RediSearch 加载到您现有的 Redis 数据库中 并索引位于哈希中的现有数据,而无需在操作这些文档时更新您的应用程序逻辑。 您可以通过从 GitHub 获取源代码或使用 1:99:1 RedisSarch Docker 镜像 来试用此 里程碑版本。此版本尚未投入生产,但我们想现在就与您分享它以收集您的反馈。请在我们的 GitHub 存储库 或 Redis 社区论坛 中分享您的任何评论或问题。