在amazon.com上搜索一个术语,例如“堆栈溢出”,搜索结果会很快恢复。
在窗口的左侧,有一个分面搜索,在某些类别中显示与该字词匹配的产品数量。
然后,您可以深入了解这些条款。例如,有1094本书符合该术语,分为计算机和计算机。互联网(1003),科学等
鉴于搜索书籍涵盖了其中一些书籍的内容,我觉得这是一项令人印象深刻的壮举。
亚马逊如何做到这一点?大规模并行化?例如,每个节点都知道一些产品?
顺便说一句,我看到“堆叠溢出”出现在“新机器之魂”的文本中,这是我从1981年开始记得的一本书
答案 0 :(得分:18)
简短的回答是,很多索引。 更长的答案是,大量索引,大量冗余,大量缓存和智能分区。
真正的答案是 - 阅读本书: http://www-csli.stanford.edu/~hinrich/information-retrieval-book.html
(它是免费的,而且非常好)。
答案 1 :(得分:0)
嗯,有并行化,但每个人在这些类型的事件的后端做的事情之一是运行缓慢的过程(如书籍内容的语义分析)并在其上面进行快速查找。他们确实在一些大型数据库中缓存搜索结果,这样他们所要做的就是在搜索结果中进行数据库查找。也许我误解了这个问题,但它与谷歌的做法类似。当您输入搜索字词时,您认为他们的蜘蛛不会为您的网站搜索网页,对吗?