algorithm search graph-theory information-retrieval

algorithm - Búsqueda de gráficos de Facebook: Algoritmo de recuperación de información



search graph-theory (1)

Hay una pregunta cerrada titulada " ¿Cómo funciona Facebook Graph Search? "

En términos simples, el OP preguntó (e incluso dio una muestra de lo que intentó):

¿Cómo funciona la Búsqueda de gráficos de Facebook? Dio un ejemplo: Friends from France who likes England

¿Cómo se puede implementar lo anterior como un problema de recuperación de información del mundo real?

Como mi respuesta no encajaba en el comentario, pensé en volver a encuadrar la pregunta y responderla bien en el estilo de Q & A de Stack Overflow.


Desde una perspectiva de implementación, busque un gráfico de propiedades como Neo4j basado en NoSQL y Lucene como motor de búsqueda detrás de la base de datos de gráficos (+ sistemas distribuidos). El ejemplo dado por usted "Amigos de Francia que les gusta Rusia" puede ser manejado fácilmente por Neo4j o una solución personalizada de gráfico de propiedades distribuidas.

Digamos que usas Neo4j, en ese caso Francia sería un valor (en un nodo de gráfico) en el almacén de clave-valor donde dice key = Country, todos los bordes salientes de ese nodo con la etiqueta "me gusta" deben atravesarse y todas las El vértice de destino debe buscarse de nuevo en Inglaterra. Eso es todo (¡por supuesto, el desafío aquí sería buscar y atravesar gráficas distribuidas de Big Data)!

Considere una representación diagramática tomada del sitio Neo4j para un gráfico de propiedades:

Todavía no he leído sobre Facebook Graph Search :)