我正在使用 mongodb 存储拍卖网站的元素 我想启用模糊搜索。
我是否应该在不带参数的情况下查询 1000 个结果,然后使用像 fusion.js 这样的 js 库
或者我应该单独依赖 mongodb $regex 来执行查询吗?
最佳答案
对于这样的问题,mongodb 并不是一个很好的选择。有很多很棒的文本搜索实用程序可用,其中最著名的是 Elasticsearch。您将继续将数据存储在 mongodb 中,但您将保留一个与 mongodb 数据库同步的 Elasticsearch 实例,并针对 Elasticsearch 执行搜索。 Mongoosastic 是同时写入的好方法,或者可以使用 Transporter 将同步从数据库持久化流程中转移出来。
Mongoosastic 示例: https://blog.cloudboost.io/sync-mongo-with-elastic-and-save-months-of-development-time-and-cost-d281e0ca8fe4
其他一些同步方式,包括 Transporter:https://code.likeagirl.io/5-different-ways-to-synchronize-data-from-mongodb-to-elasticsearch-d8456b83d44f
关于node.js - 这是在平均堆栈上进行数据库搜索的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56411680/