我计划开发一个应用程序,该应用程序将具有一个包含许多属性的模型。这些属性将是应用程序最重要的部分之一,因此用户在大多数时间都会触发搜索查询,以便找到他们正在寻找的结果。
我的问题是,是否可以通过 mysql 或 postgres 进行转发,或者我应该从头开始使用 solr、elasticsearch 之类的东西。
我希望此应用程序在执行这些搜索时不要消耗大量内存。这是我想要的第一件事,因为我将从具有 2 个内核和 4GB 内存的基本服务器设置开始。
最佳答案
它们(rdbms和fulltext se)都是有效的技术......主要取决于
- 您的访问模式
- 您希望在搜索服务中提供的功能
例如,如果您想做全文搜索,或者您想要自动完成、分面、词干提取等功能,Solr 或 ES 就是您的 friend 。另一方面,如果您想实时获取数据(并且您不想要上述内容),我会使用 RDBMS
一般来说:您描述了一些“非”功能需求,但该决定也涉及功能需求。肯定的
关于mysql - 我是否需要一个针对具有 20 多个属性的模型的搜索引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29460904/