首页 > 解决方案 > 寻找以低内存成本执行全文搜索的解决方案

问题描述

我使用 Django 编写了一个 Web 应用程序来显示产品信息。

我的数据库(MySQL)包含约 200000 条记录(字段:品牌、名称和 img)。我想在我的应用程序中添加搜索功能(搜索在品牌和名称字段上执行)。

我用 Whoosh 尝试了 haystack,但我发现它消耗了很多内存。

任何人都可以建议一种方法吗?该应用程序预计在廉价的 AWS EC2(小内存)上运行。

标签: mysqldjangofull-text-searchdjango-haystackwhoosh

解决方案


内存与速度最终是一个权衡。我会推荐 Elasticsearch,但它的基线内存要求至少为 256 MB(主要用于 JVM)。您或许可以尝试使用具有低得多的基线内存占用(可能小于 10 MB)的Typesense 。

但是,请记住,速度与内存始终是一个权衡。


推荐阅读