Como hacer un recomendador de amigos (Como el de Facebook)

Hola, sucede que me dejaron hacer un programa que sugiera amigos algo así como lo que hace facebook, solo que en java... y bueno creo que la mejor estructura de datos que de adapta para resolver este problema es un Grafo, pero emmm no tengo idea como empezar la codificación...
alguien podría ayudarme brindándome algunas ideas, aclaro que no quiero me hagan el código simplemente que me ayuden con mis dudas y como podría empezar a realizar este programa que me dejaron.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de ezamudio

Neo4J

Pues si puedes utilizar Neo4J te vas a facilitar mucho la vida, yo escribí en mi blog un part de artículos al respecto.

Gracias

Muy bien, revisaré los artículos que realizaste sobre Neo4J, espero poder entender jeje

Imagen de ezamudio

blog

Neo4J, Parte 1 y Parte 2.

Es bueno, aunque al final no lo utilicé por la licencia (según recuerdo es dual; si es para un proyecto open source lo puedes usar sin costo pero si es para una aplicación comercial requieres pagar) y porque realmente pude resolver el mismo problema que tenía usando una vil tabla en PostgreSQL con relación a sí misma.