0

您能否解释一下 Sphinx、Haystack 等搜索引擎如何融入 Web 框架。如果您能以 Web 开发新手可以理解的方式进行解释,那将有所帮助。

我为这个问题编写的一个示例用例是图书搜索功能。假设我有一个 noSQL 数据库,其中包含书籍对象,每个对象都包含作者、标题、ISBN 等;像 Sphinx/Haystack/其他搜索引擎这样的搜索引擎如何适应我的数据库来搜索具有给定 ISBN 的书籍?

4

1 回答 1

1

首先,Haystack 不是一个搜索引擎,它是一个为现有搜索引擎(如 Solr 和 Whoosh)提供 Django API 的库。

也就是说,你的例子并不是一个很好的例子。您不会使用单独的搜索引擎按 ISBN 进行搜索,因为您的数据库已经在 Book 表上有一个索引,可以有效地进行搜索。搜索引擎可能出现在两个地方。首先,您可以索引本书的部分或全部内容以进行搜索:数据库不太擅长全文搜索,但这是搜索引擎大放异彩的领域。其次,您可以一次性提供针对多个字段的搜索——例如,作者、标题、出版商和描述。

此外,搜索引擎提供了有用的功能,如建议、分面等,您不会从数据库中获得这些功能。

于 2013-01-04T22:50:57.880 回答