That's a great point. In Neo4j you can add properties to your relationships so that:
Jim --VISITED (numberOfTimes: 20) --> Melbourne Then you can use the "numberOfTimes" property to determine whether or not you'd like to include the person/city in the recommendations you're making. In this case it seems I'm rather keen on Melbourne, so you might want to recommend me to other folks who visit Melbourne a lot. As for whether it's more efficient than other databases, I suspect it is in the general case since this is a graph operation which other kinds of stores will have to reify for themselves (e.g recursive joins, big map/reduce job, etc). The cost of these kind of operations in Neo4j tends to be very low. Jim On 18 Jun 2011, at 07:56, faja...@gmail.com wrote: > Ah this discussion is interesting, I want to join and throw in sonme idea > too. > > If a user can visit a place for multiple times. And if there are 100 user > visit USA. So we should suggest top 10 only. > > Would traversing the graph be more efficient than normal database query? > > > Sent from my BlackBerry® smartphone from Sinyal Bagus XL, Nyambung > Teruuusss...! > > -----Original Message----- > From: Aman <aman.6...@gmail.com> > Sender: user-boun...@lists.neo4j.org > Date: Sat, 18 Jun 2011 10:50:34 > To: Neo4j user discussions<user@lists.neo4j.org> > Reply-To: Neo4j user discussions <user@lists.neo4j.org> > Subject: Re: [Neo4j] Generating suggestions in a Neo4j db > > Hi Jim, > The way you mentioned, that will take care of these suggestions, > thanks for the same. But here's a tougher problem.... > If I have a database of 50k people, and I want to find friends based > upon the places that those 50k people have visited (i.e. People who > have visited same places as me should be suggested as friends to me), > then how to to that... I've thought all that I could, but I always > come up with something stupid... Any suggestions about this? > > On 6/18/11, Aman <aman.6...@gmail.com> wrote: >> Hi Jim, >> The way you mentioned, that will take care of these suggestions, >> thanks for the same. But here's a tougher problem.... >> If I have a database of 50k people, and I want to find friends based >> upon the places that those 50k people have visited (i.e. People who >> have visited same places as me should be suggested as friends to me), >> then how to to that... I've thought all that I could, but I always >> come up with something stupid... Any suggestions about this? >> >> On 6/18/11, Jim Webber <j...@neotechnology.com> wrote: >>> Hi Aman, >>> >>> I'm puzzled. >>> >>> Why not >>> >>> Aman--HAS_VISITED-->USA >>> Jim--HAS_VISITED-->India >>> >>> And if: >>> >>> Aman--FRIEND-OF-->Jim >>> >>> Then you just need to traverse from Aman following outgoing FRIEND_OF >>> relationships to all your friends, and then traverse out their outgoing >>> HAS_VISITED relationships to find places your friends have been. >>> >>> The general idiom with Neo4j is use indexes the find your start node >>> (e.g. >>> the Aman node in the above) then traverse from there. >>> >>> Jim >>> >>> _______________________________________________ >>> Neo4j mailing list >>> User@lists.neo4j.org >>> https://lists.neo4j.org/mailman/listinfo/user >>> >> >> >> -- >> Amandeep >> +91-9878483857 >> > > > -- > Amandeep > +91-9878483857 > _______________________________________________ > Neo4j mailing list > User@lists.neo4j.org > https://lists.neo4j.org/mailman/listinfo/user > _______________________________________________ > Neo4j mailing list > User@lists.neo4j.org > https://lists.neo4j.org/mailman/listinfo/user _______________________________________________ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user