gpt4 book ai didi

javascript - 如何使用 Fuse.js 和 Redis 在 MySQL 表中进行全文搜索?

转载 作者:行者123 更新时间:2023-11-29 15:44:34 25 4
gpt4 key购买 nike

我有一个包含一千条记录的表,我想做一个类似谷歌的搜索全文/模糊搜索。

我读到了MySQL v8's Full-Text search假设我们还没有该功能。

有一个名为 Fuse.js 的 JavaScript 库进行模糊搜索,这正是我所需要的。

我可以通过创建一个 API 来组合它,该 API 以 JSON 格式返回表数据,然后将其传递给 Fuse.js 进行模糊搜索。

现在,我认为不建议每次有人想要搜索时都从表中加载所有数据。

我读到了有关 Redis 的内容,我首先想到的是使用 JSON.stringify 将所有表数据保存在 Redis 中,并且每次都调用它,而不是查询数据库。然后每当表中添加一条数据时,我也会更新Redis中的数据内容。

有更好的方法吗?

最佳答案

这是一种非常常见的缓存模式。

如果您需要一种更有效的方式来存储 JSON 到 Redis 以及从 Redis 检索 JSON,您可能需要考虑可用的 Redis 模块之一。

例如

RedisJSON允许您有效地存储、检索、项目 (jsonpath) 和就地更新。

RediSearch允许您对Redis Hash进行全文搜索,并根据用户的查询高效检索数据。

最后

RedisJSON2 (aka RedisDoc)结合了上面的两个模块,意味着高效的 JSON 存储和检索以及全文支持

关于javascript - 如何使用 Fuse.js 和 Redis 在 MySQL 表中进行全文搜索?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57211938/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com