NoSQL Zone is brought to you in partnership with:

I am a Webscience PhD student at the university of Koblenz and the Founder of http://www.metalcon.de Social news streams are my research interest. René is a DZone MVB and is not an employee of DZone and has posted 36 posts at DZone. You can read more from them at their website. View Full User Profile

A Neo4j and GWT System for Creating a Social News Feed

02.28.2012
| 4150 views |
  • submit to reddit

UPDATE: you can find an evaluation of the following blog post and idea on: http://www.rene-pickhardt.de/graphity-an-efficient-graph-model-for-retrieving-the-top-k-news-feeds-for-users-in-social-networks/ 

Hey everyone I can finally demonstrate the neo4j and gwt system that I have been blogging about over the last weeks here and here. But please find the demo under the following adress:

http://gwt.metalcon.de/GWT-Modelling

The code will be available soon! But it was hacked together pretty nasty and definatly needs some cleanup! Also I think that I still have one lack in memory while maintinging the index for my news feed. Hopefully I will be able to do this while writing my paper and do more on the evaluation. Already thanks a lot to Jonas Kunze and Dr. Thomas Gottron as well as Peter from neo technologies for the great support during this project!

The Graph that I used is extracted from the complete revision dump of the bavarian wikipedia and has the following properties:

  • 8’760 entities
  • ~95’000 Content items
  • ==> together more than 100’000 nodes
  • almost 20’000 different relationship types (more to come in bigger graphs!)
  • about 100’000 edges connecting the 8’760 entities
  • mainting the index was possible with (only :[ ) 177 writes / second on a slow notebook computer

I interpret the wikipedia graph in the following way as a social network: 

  • every article corresponds to an entity
  • every link corresponds to a directed friendship (follower)
  • every revision corresponds eather to a status update (content item) or a change in the friendship graph

I have no idea yet how many reads I can do per second. Even though I am a little disappointed about the low speed for writing on the graph I am sure that I will achieve my theoretical goals for reads per second. I also hope to increase writing speed if I introduce better transaction management. Anyway I will blog about the results of the reads / second later.

If you like this post, you might like these related posts:

  1. Graphity: An efficient Graph Model for Retrieving the Top-k News Feeds for users in social networks I already said that my first research results have been...
  2. Neo4j Graph Database vs MySQL For my social news stream application I am heavily thinking...
  3. Data structure for Social news streams on Graph data bases UPDATE: look at http://www.rene-pickhardt.de/graphity for a more scientific survey and...
  4. Time lines and news streams: Neo4j is 377 times faster than MySQL Over the last weeks I did some more work on...
  5. Social news streams and time indices on graphs for social networks Last week I had a meeting with my PhD advisor...

 


Published at DZone with permission of René Pickhardt, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)