Yav*_*var 2 algorithm search information-retrieval graph-theory
有一个题为" Facebook图搜索如何工作? " 的封闭式问题.
简单来说,OP问(甚至给出了他试过的样本):
Facebook Graph Search如何运作?他举了一个例子:Friends from France who likes England
如何将上述实现为现实世界的信息检索问题?
由于我的回答不符合评论,所以想到重新构思问题并在Stack Overflow Q&A风格中回答它.
从实现的角度来看,一个属性图表,如NoSQL的Neo4j和Lucene,作为图形数据库(+分布式系统)背后的搜索引擎.您可以通过Neo4j或自定义分布式属性图解决方案轻松处理您"来自法国的喜欢俄罗斯的朋友"的示例.
假设您使用Neo4j,在这种情况下,法国将是键值存储中的值(在图形节点中),其中说key = Country,来自该节点的所有带有标签"likes"的传出边缘将被遍历并且所有目的地顶点再次被搜索到英格兰.就是这样(当然这里的挑战是大数据分布图的搜索和遍历)!
考虑从Neo4j站点获取的属性图的图解表示:

我还没有读过关于Facebook Graph Search但是:)