首页 文章

搜索索引与数据库索引[关闭]

提问于
浏览
2

我想知道搜索索引和数据库索引之间的区别是什么 . 我知道DB索引使用实际数据的排序指针和搜索索引(例如,使用倒排索引)使用类似哈希表的结构来映射具有该单词的文档的单词 . 索引在两种情况下都意味着不同的东西 . 我的问题是 - 这两种情况真的不同吗? DB索引和搜索索引是否有不同的概念?我想我只是对“索引”一词感到困惑 . 对此有任何明确性表示赞赏 .

1 回答

  • 2

    数据库索引由目标应用程序的查询驱动 . 通常,在设计数据库并确定要索引的属性时,您有明确的要求 . 例如,如果属性A在数据库中被索引,那么它是为了在属性A上加速一些已知的潜在查询Q(或查询集) .

    另一方面,网络搜索(或关键字搜索)更多是自由形式 . 当搜索引擎索引文档(网页)时,它没有关于查询的先验知识 . 因此,它需要尝试理解文档(通过自然语言处理)并索引可能感兴趣的任何关键词和短语 .

    虽然搜索索引和数据库索引共享许多常用技术,但要求却不同 . I / O效率和一致性是数据库索引的首要考虑因素 . 而搜索索引则支持可扩展性和空间效率(通过分布和并行性实现时间效率) . 此外,搜索索引不需要调用所有匹配的文档;在大多数情况下,检索几百个排名最高的条目就足够了 .

相关问题