构建全文搜索引擎:从哪里开始

13 投票
13 回答
8566 浏览
提问于 2025-04-11 09:30

我想用Google App Engine来写一个网页应用程序(所以我会用Python这门语言)。我的应用需要一个简单的搜索引擎,这样用户就可以通过输入关键词来找到数据。

举个例子,如果我有一个表格,里面有这些内容:

1 办公空间
2 2001:太空漫游
3 巴西

当用户搜索“太空”时,结果会返回第1和第2行。如果用户搜索“办公空间”,结果也应该是第1和第2行(第1行优先)。

那么,有什么简单的方法或算法可以实现这个功能呢?
你能给我一些关于这个理论的好建议吗?

谢谢。

编辑:我并不想要复杂的东西(比如,处理大量数据的索引)。

13 个回答

7

我在以前搭建全文搜索引擎的时候,发现这两本书非常有用。

《信息检索》

《管理千兆字节》

8

阅读Tim Bray关于这个主题的一系列文章,链接在这里:系列文章

  • 背景知识
  • 搜索引擎的使用
  • 基础知识
  • 精准度和召回率
  • 搜索引擎的智能
  • 复杂的搜索词
  • 停用词
  • 元数据
  • 国际化
  • 结果排名
  • XML格式
  • 机器人程序
  • 需求列表
4

如果可以的话,我建议你不要自己去搭建这个。

App Engine已经包含了一个基本的全文搜索引擎,而且这里有一篇很不错的博客文章,详细介绍了如何使用它。

另外,在错误追踪器中还有一个功能请求,最近似乎得到了不少关注,所以如果可以的话,你可能想等到这个功能实现后再使用。

撰写回答