Re: [Neo] apoc-bundle pax-exam failure
Hi Andreas, will look at it, offline with my dev machine right now. However, I need to read up on Sling and Karaf - very cool IMDB demo you did, showing off a lot of advanced OSGi- Peaberry - Pax Exam practices with Neo4j - thanks Toni and Stuart for that great work! Let me look at the error over the weekend, then we could add some OSGi-testcases to the APOC bundle and then be ready to apply for moving it from laboratory into components. /peter GTalk: neubauer.peter Skype peter.neubauer Phone +46 704 106975 LinkedIn http://www.linkedin.com/in/neubauer Twitter http://twitter.com/peterneubauer http://www.neo4j.org- New Energy for Data - The Graph Database. http://www.ops4j.org- New Energy for OSS Communities - Open Participation Software. http://www.linkedprocess.org - Distributed computing on LinkedData scale On Fri, Aug 14, 2009 at 5:16 AM, Andreas Kolleggerakolleg...@tembopublic.org wrote: Hi everyone, Perhaps someone (maybe Peter? hi peter!) could help me figure out what I'm doing wrong with pax-exam in the apoc-bundle. I'm trying to clean the project up a bit, and noticed that the pax exam fails if I clear my local repository of neo4j artifacts. During the exam, pax-runner fails to find the required artifacts, causing this exception... java.lang.RuntimeException: URL [mvn:org.neo4j/neo/1.0- b9-20090812.131029-32] could not be resolved. at org .ops4j.pax.url.mvn.internal.Connection.getInputStream(Connection.java: 195) at java.net.URL.openStream(URL.java:1009) ... I'm not sure if that mvn URL is correct or not. The version is the expanded latest SNAPSHOT, as calculated by the maven-paxexam-plugin. I had to add the neo4j repository to the pom so it could download the artifacts, yet pax-exam doesn't seem to pick them up. I also tried putting the explicit version in the exam configuration using `mavenBundle().artifactId( neo ).groupId( org.neo4j ).version(1.0- b9-SNAPSHOT)` but that doesn't help. I'm sure there is something simple and obvious that I'm doing wrong, but I can't seem to figure it out. Thanks, Andreas ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo] Wikipedia entries for graph database, Neo4f?
Hi! There's now a Nosql article in Wikipedia, let's see if it stays! http://en.wikipedia.org/wiki/Nosql Don't know if graphdbs should be considered part of NOSQL, what do you think? /anders Peter Neubauer skrev: Hi there, for osme time ago I tried to get an article on Graph Databases into Wikipedia, but was refused, probably due to lack of trustworthy resources on the subject. With the buzz being higher nowadays, maybe we should give it another try! /peter -- Anders Nawroth [and...@neotechnology.com] GTalk, Skype: anders.nawroth Phone: +46 737 894 163 http://twitter.com/nawroth http://blog.nawroth.com/ ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo] Trying to understand Neo4J through IMDB example
Hi welcome Philip! Philip Southam: In the hello world type of examples relationship objects returned from [snip] firstNodeInstance.createRelationshipTo(secondNodeInstance, MyRelationshipTypes.EXAMPLE) [/snip] seem to be ignored, in the since that no data other than the relationship type is associated with it. Even if no further data is associated with relationships, they still give the data it's structure and enable you to traverse/navigate this structure. Moving on to the IMDB example, relationships makes it very easy to answer questions like which movies does [actor] have a role in? or which actors have a role in [movie]? You simply iterate over the ACTS_IN type relationships connected to the actor/movie node. And as we can answer the above type of questions (and at a very high speed), we are also able to find the shortest path between two actors, a.k.a. their Bacon path. But introduce the binding of Role to RelTypes.ACTS_IN and I'm a little confused. We can index the objects bound to nodes making the properties associated with them easily query-able, but why do we bind objects to relationships if we cannot easily query them? Because we can still find them using traversal/navigation. And I can't really imagine the IMDB domain without Role objects! Using them, our application can speak the language of the domain, not having to care about the underlying data structure. I ask this because I cannot figure out, using the IMDB example, how do I return the Role object representing Neo if I don't know the actor or movie that the character/role was in. In the IMDB application, this is not really possible. So: good question! :-) In IMDB example, if the quering of Roles were a requirement, is there a different way that the graph/ domain could be designed to allow for this? Yes. We could have made the Roles nodes, too. Instead of just a simple relationship we could use a relationship -- node -- relationship construct. Please feel free to ask more questions! /anders -- Anders Nawroth [and...@neotechnology.com] GTalk, Skype: anders.nawroth Phone: +46 737 894 163 http://twitter.com/nawroth http://blog.nawroth.com/ ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo] Wikipedia entries for graph database, Neo4f?
Hi! Emil Eifrem: On Fri, Aug 14, 2009 at 10:58, Anders Nawrothand...@neotechnology.com wrote: Don't know if graphdbs should be considered part of NOSQL, what do you think? Huh? Yes! Well, then the definition of NOSQL @ wikipedia has to be made wider. At the moment it only addresses solutions to the horizontal scalability problem, but there are more to NOSQL than just that. Handle semi-structured content, scale to complexity etc. I still think this categorization (scroll down in mail) of emerging nosql databases is the best out there: http://groups.google.com/group/nosql-discussion/msg/31f8f71a88142c68 What about structuring the wikipedia araticle using that? Throwing all implementations of NOSQL in a single bag isn't really useful. Actually I think *diversity* is at the core of NOSQL :-) /anders -- Anders Nawroth [and...@neotechnology.com] GTalk, Skype: anders.nawroth Phone: +46 737 894 163 http://twitter.com/nawroth http://blog.nawroth.com/ ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo] neo4j Beginner Question
Thank you for your response. I'm trying to understand the main concept, please correct me if I am wrong. For example, there are many users of an application and each represented as Node. And each User has a UserId in RDBMS. I have checked Node class and saw that there is a method called as getId() but I could not see setId() for mapping the User in the RDBMS to neo4j. Sample data: (UserId / Friends Ids) 1 - [2, 4] 2 - [1, 3] 3 - [10] 4 - [1, 3, 5] 5 - [3] And I need to query What are the all shortest paths from 1 to 10 for max length 4 And results should be, 1 - 2 - 3 - 10 1 - 4 - 3 - 10 * 1 - 4 - 5 - 3 - 10 (It will not be shown because it exceeds the length 4). You mean that it can be handled with neo4j, but how can I map each User in RDBMS, to Nodes by their original Ids? Thanks. From: neubauer.pe...@gmail.com Date: Wed, 5 Aug 2009 11:16:15 +0200 To: user@lists.neo4j.org Subject: Re: [Neo] neo4j Beginner Question Hi Onur 2009/8/4 Onur AKTAS onur.ak...@live.com: Calculating,friends of friends, 3rd degree contacts or 4th degree etc. is not a good idea with RDBMS. In short words, neo4j fits perfectly for these kinds of jobs? yes, that is the kind of problems Neo4j and Graph Databases are trying to solve in general. Semi-structured data, havy use of relational information between information entities and complex analysis of high depth fast are some of the common use cases for using a graph database. Do we have a chance to scale neo4j by adding nodes, does it support distributed processing? Also, can we delete any node in the graph when we need to delete user or we must create the entire graph again when we need any updates? Do graph objects have id's that helps us to find the node quickly? Neo4j atm does not support distributed processing or partitioning the graph. There is high-availability and online-backup being worked on which feels more acute since Neo4j on a single instance scales over 1 Billion primitives, which should be enough for most immediate scenarios. But there are of course ways to achieve a custom partitioning using targeted techniques - but that depends on your use case ... HTH /peter ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user _ Anılarınızı istediğiniz herkesle çevrimiçi paylaşın. http://www.microsoft.com/turkiye/windows/windowslive/products/photos-share.aspx?tab=1 ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo] neo4j Beginner Question
2009/8/14 Onur AKTAS onur.ak...@live.com: Thank you for your response. I'm trying to understand the main concept, please correct me if I am wrong. For example, there are many users of an application and each represented as Node. And each User has a UserId in RDBMS. I have checked Node class and saw that there is a method called as getId() but I could not see setId() for mapping the User in the RDBMS to neo4j. Sample data: (UserId / Friends Ids) 1 - [2, 4] 2 - [1, 3] 3 - [10] 4 - [1, 3, 5] 5 - [3] And I need to query What are the all shortest paths from 1 to 10 for max length 4 And results should be, 1 - 2 - 3 - 10 1 - 4 - 3 - 10 * 1 - 4 - 5 - 3 - 10 (It will not be shown because it exceeds the length 4). You mean that it can be handled with neo4j, but how can I map each User in RDBMS, to Nodes by their original Ids? You can just come up with your own property key which will represent that RDBMS id... f.ex: node.setProperty( rdbms_id, myRdbmsId ); The node.getId() is just the internal id the node have in neo, which is unique, but not over time since ids can be reused if they gets deleted. Thanks. From: neubauer.pe...@gmail.com Date: Wed, 5 Aug 2009 11:16:15 +0200 To: user@lists.neo4j.org Subject: Re: [Neo] neo4j Beginner Question Hi Onur 2009/8/4 Onur AKTAS onur.ak...@live.com: Calculating,friends of friends, 3rd degree contacts or 4th degree etc. is not a good idea with RDBMS. In short words, neo4j fits perfectly for these kinds of jobs? yes, that is the kind of problems Neo4j and Graph Databases are trying to solve in general. Semi-structured data, havy use of relational information between information entities and complex analysis of high depth fast are some of the common use cases for using a graph database. Do we have a chance to scale neo4j by adding nodes, does it support distributed processing? Also, can we delete any node in the graph when we need to delete user or we must create the entire graph again when we need any updates? Do graph objects have id's that helps us to find the node quickly? Neo4j atm does not support distributed processing or partitioning the graph. There is high-availability and online-backup being worked on which feels more acute since Neo4j on a single instance scales over 1 Billion primitives, which should be enough for most immediate scenarios. But there are of course ways to achieve a custom partitioning using targeted techniques - but that depends on your use case ... HTH /peter ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user _ Anılarınızı istediğiniz herkesle çevrimiçi paylaşın. http://www.microsoft.com/turkiye/windows/windowslive/products/photos-share.aspx?tab=1 ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user -- Mattias Persson, [matt...@neotechnology.com] Neo Technology, www.neotechnology.com ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo] neo4j Beginner Question
And then use the index-utils to find the node (it's a good simple and efficient integration with Lucene). On 14 Aug 2009, at 16:10, Dan Heaver wrote: Onur, add a property to each node to hold the surragate key from your RDBMS... Dan On 14 Aug 2009, at 15:30, Onur AKTAS onur.ak...@live.com wrote: Thank you for your response. I'm trying to understand the main concept, please correct me if I am wrong. For example, there are many users of an application and each represented as Node. And each User has a UserId in RDBMS. I have checked Node class and saw that there is a method called as getId() but I could not see setId() for mapping the User in the RDBMS to neo4j. Sample data: (UserId / Friends Ids) 1 - [2, 4] 2 - [1, 3] 3 - [10] 4 - [1, 3, 5] 5 - [3] And I need to query What are the all shortest paths from 1 to 10 for max length 4 And results should be, 1 - 2 - 3 - 10 1 - 4 - 3 - 10 * 1 - 4 - 5 - 3 - 10 (It will not be shown because it exceeds the length 4). You mean that it can be handled with neo4j, but how can I map each User in RDBMS, to Nodes by their original Ids? Thanks. From: neubauer.pe...@gmail.com Date: Wed, 5 Aug 2009 11:16:15 +0200 To: user@lists.neo4j.org Subject: Re: [Neo] neo4j Beginner Question Hi Onur 2009/8/4 Onur AKTAS onur.ak...@live.com: Calculating,friends of friends, 3rd degree contacts or 4th degree etc. is not a good idea with RDBMS. In short words, neo4j fits perfectly for these kinds of jobs? yes, that is the kind of problems Neo4j and Graph Databases are trying to solve in general. Semi-structured data, havy use of relational information between information entities and complex analysis of high depth fast are some of the common use cases for using a graph database. Do we have a chance to scale neo4j by adding nodes, does it support distributed processing? Also, can we delete any node in the graph when we need to delete user or we must create the entire graph again when we need any updates? Do graph objects have id's that helps us to find the node quickly? Neo4j atm does not support distributed processing or partitioning the graph. There is high-availability and online-backup being worked on which feels more acute since Neo4j on a single instance scales over 1 Billion primitives, which should be enough for most immediate scenarios. But there are of course ways to achieve a custom partitioning using targeted techniques - but that depends on your use case ... HTH /peter ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user _ Anılarınızı istediğiniz herkesle çevrimiçi paylaşın. http://www.microsoft.com/turkiye/windows/windowslive/products/photos-share.aspx?tab=1 ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo] neo4j Beginner Question
// One instance per NeoService is enough IndexService indexService = new LuceneIndexService( neoService ); and that will be your index, fully transactional and participates in your neo transactions. 2009/8/14 Onur AKTAS onur.ak...@live.com: So I must build it on the top of Lucene? Hmm, shouldn't it be a native property of neo4j? Do we have a chance to get Node's id after we insert it? So I can use an additional key - value based database for keeping the relation between Node and User like below: (rdbms_user_id, neo4j_node_id) Is it a good idea? From: neil.el...@mangala.co.uk To: user@lists.neo4j.org Date: Fri, 14 Aug 2009 16:21:38 +0100 Subject: Re: [Neo] neo4j Beginner Question And then use the index-utils to find the node (it's a good simple and efficient integration with Lucene). On 14 Aug 2009, at 16:10, Dan Heaver wrote: Onur, add a property to each node to hold the surragate key from your RDBMS... Dan On 14 Aug 2009, at 15:30, Onur AKTAS onur.ak...@live.com wrote: Thank you for your response. I'm trying to understand the main concept, please correct me if I am wrong. For example, there are many users of an application and each represented as Node. And each User has a UserId in RDBMS. I have checked Node class and saw that there is a method called as getId() but I could not see setId() for mapping the User in the RDBMS to neo4j. Sample data: (UserId / Friends Ids) 1 - [2, 4] 2 - [1, 3] 3 - [10] 4 - [1, 3, 5] 5 - [3] And I need to query What are the all shortest paths from 1 to 10 for max length 4 And results should be, 1 - 2 - 3 - 10 1 - 4 - 3 - 10 * 1 - 4 - 5 - 3 - 10 (It will not be shown because it exceeds the length 4). You mean that it can be handled with neo4j, but how can I map each User in RDBMS, to Nodes by their original Ids? Thanks. From: neubauer.pe...@gmail.com Date: Wed, 5 Aug 2009 11:16:15 +0200 To: user@lists.neo4j.org Subject: Re: [Neo] neo4j Beginner Question Hi Onur 2009/8/4 Onur AKTAS onur.ak...@live.com: Calculating,friends of friends, 3rd degree contacts or 4th degree etc. is not a good idea with RDBMS. In short words, neo4j fits perfectly for these kinds of jobs? yes, that is the kind of problems Neo4j and Graph Databases are trying to solve in general. Semi-structured data, havy use of relational information between information entities and complex analysis of high depth fast are some of the common use cases for using a graph database. Do we have a chance to scale neo4j by adding nodes, does it support distributed processing? Also, can we delete any node in the graph when we need to delete user or we must create the entire graph again when we need any updates? Do graph objects have id's that helps us to find the node quickly? Neo4j atm does not support distributed processing or partitioning the graph. There is high-availability and online-backup being worked on which feels more acute since Neo4j on a single instance scales over 1 Billion primitives, which should be enough for most immediate scenarios. But there are of course ways to achieve a custom partitioning using targeted techniques - but that depends on your use case ... HTH /peter ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user _ Anılarınızı istediğiniz herkesle çevrimiçi paylaşın. http://www.microsoft.com/turkiye/windows/windowslive/products/photos-share.aspx?tab=1 ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user _ Windows Live tüm arkadaşlarınızla tek bir yerden iletişim kurmanıza yardımcı olur. http://www.microsoft.com/turkiye/windows/windowslive/products/social-network-connector.aspx ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user -- Mattias Persson, [matt...@neotechnology.com] Neo Technology, www.neotechnology.com ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo] neo4j Beginner Question
Ain't that cool :-) I speak from experience it works and works well. Lucene is an efficient index, the integration is seemless (from my experience). On 14 Aug 2009, at 17:13, Mattias Persson wrote: // One instance per NeoService is enough IndexService indexService = new LuceneIndexService( neoService ); and that will be your index, fully transactional and participates in your neo transactions. 2009/8/14 Onur AKTAS onur.ak...@live.com: So I must build it on the top of Lucene? Hmm, shouldn't it be a native property of neo4j? Do we have a chance to get Node's id after we insert it? So I can use an additional key - value based database for keeping the relation between Node and User like below: (rdbms_user_id, neo4j_node_id) Is it a good idea? From: neil.el...@mangala.co.uk To: user@lists.neo4j.org Date: Fri, 14 Aug 2009 16:21:38 +0100 Subject: Re: [Neo] neo4j Beginner Question And then use the index-utils to find the node (it's a good simple and efficient integration with Lucene). On 14 Aug 2009, at 16:10, Dan Heaver wrote: Onur, add a property to each node to hold the surragate key from your RDBMS... Dan On 14 Aug 2009, at 15:30, Onur AKTAS onur.ak...@live.com wrote: Thank you for your response. I'm trying to understand the main concept, please correct me if I am wrong. For example, there are many users of an application and each represented as Node. And each User has a UserId in RDBMS. I have checked Node class and saw that there is a method called as getId() but I could not see setId() for mapping the User in the RDBMS to neo4j. Sample data: (UserId / Friends Ids) 1 - [2, 4] 2 - [1, 3] 3 - [10] 4 - [1, 3, 5] 5 - [3] And I need to query What are the all shortest paths from 1 to 10 for max length 4 And results should be, 1 - 2 - 3 - 10 1 - 4 - 3 - 10 * 1 - 4 - 5 - 3 - 10 (It will not be shown because it exceeds the length 4). You mean that it can be handled with neo4j, but how can I map each User in RDBMS, to Nodes by their original Ids? Thanks. From: neubauer.pe...@gmail.com Date: Wed, 5 Aug 2009 11:16:15 +0200 To: user@lists.neo4j.org Subject: Re: [Neo] neo4j Beginner Question Hi Onur 2009/8/4 Onur AKTAS onur.ak...@live.com: Calculating,friends of friends, 3rd degree contacts or 4th degree etc. is not a good idea with RDBMS. In short words, neo4j fits perfectly for these kinds of jobs? yes, that is the kind of problems Neo4j and Graph Databases are trying to solve in general. Semi-structured data, havy use of relational information between information entities and complex analysis of high depth fast are some of the common use cases for using a graph database. Do we have a chance to scale neo4j by adding nodes, does it support distributed processing? Also, can we delete any node in the graph when we need to delete user or we must create the entire graph again when we need any updates? Do graph objects have id's that helps us to find the node quickly? Neo4j atm does not support distributed processing or partitioning the graph. There is high-availability and online-backup being worked on which feels more acute since Neo4j on a single instance scales over 1 Billion primitives, which should be enough for most immediate scenarios. But there are of course ways to achieve a custom partitioning using targeted techniques - but that depends on your use case ... HTH /peter ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user _ Anılarınızı istediğiniz herkesle çevrimiçi paylaşın. http://www.microsoft.com/turkiye/windows/windowslive/products/photos-share.aspx?tab=1 ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user _ Windows Live tüm arkadaşlarınızla tek bir yerden iletişim kurmanıza yardımcı olur. http://www.microsoft.com/turkiye/windows/windowslive/products/social-network-connector.aspx ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user -- Mattias Persson, [matt...@neotechnology.com] Neo Technology, www.neotechnology.com ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo] neo4j Beginner Question
Hi! IndexService indexService = new LuceneIndexService( neoService ); and that will be your index, fully transactional and participates in your neo transactions. More information here: http://components.neo4j.org/index-util/ http://components.neo4j.org/index-util/apidocs/index.html http://components.neo4j.org/index-util/apidocs/org/neo4j/util/index/IndexService.html The EmbeddedNeoWithIndexingExample.java in the APOC download could be useful: http://dist.neo4j.org/neo4j-apoc-0.1.tar.gz http://dist.neo4j.org/neo4j-apoc-0.1.zip The download includes all libraries that you need for Neo4j + Lucene indexing. /anders 2009/8/14 Onur AKTAS onur.ak...@live.com: So I must build it on the top of Lucene? Hmm, shouldn't it be a native property of neo4j? Do we have a chance to get Node's id after we insert it? So I can use an additional key - value based database for keeping the relation between Node and User like below: (rdbms_user_id, neo4j_node_id) Is it a good idea? From: neil.el...@mangala.co.uk To: user@lists.neo4j.org Date: Fri, 14 Aug 2009 16:21:38 +0100 Subject: Re: [Neo] neo4j Beginner Question And then use the index-utils to find the node (it's a good simple and efficient integration with Lucene). On 14 Aug 2009, at 16:10, Dan Heaver wrote: Onur, add a property to each node to hold the surragate key from your RDBMS... Dan On 14 Aug 2009, at 15:30, Onur AKTAS onur.ak...@live.com wrote: Thank you for your response. I'm trying to understand the main concept, please correct me if I am wrong. For example, there are many users of an application and each represented as Node. And each User has a UserId in RDBMS. I have checked Node class and saw that there is a method called as getId() but I could not see setId() for mapping the User in the RDBMS to neo4j. Sample data: (UserId / Friends Ids) 1 - [2, 4] 2 - [1, 3] 3 - [10] 4 - [1, 3, 5] 5 - [3] And I need to query What are the all shortest paths from 1 to 10 for max length 4 And results should be, 1 - 2 - 3 - 10 1 - 4 - 3 - 10 * 1 - 4 - 5 - 3 - 10 (It will not be shown because it exceeds the length 4). You mean that it can be handled with neo4j, but how can I map each User in RDBMS, to Nodes by their original Ids? Thanks. From: neubauer.pe...@gmail.com Date: Wed, 5 Aug 2009 11:16:15 +0200 To: user@lists.neo4j.org Subject: Re: [Neo] neo4j Beginner Question Hi Onur 2009/8/4 Onur AKTAS onur.ak...@live.com: Calculating,friends of friends, 3rd degree contacts or 4th degree etc. is not a good idea with RDBMS. In short words, neo4j fits perfectly for these kinds of jobs? yes, that is the kind of problems Neo4j and Graph Databases are trying to solve in general. Semi-structured data, havy use of relational information between information entities and complex analysis of high depth fast are some of the common use cases for using a graph database. Do we have a chance to scale neo4j by adding nodes, does it support distributed processing? Also, can we delete any node in the graph when we need to delete user or we must create the entire graph again when we need any updates? Do graph objects have id's that helps us to find the node quickly? Neo4j atm does not support distributed processing or partitioning the graph. There is high-availability and online-backup being worked on which feels more acute since Neo4j on a single instance scales over 1 Billion primitives, which should be enough for most immediate scenarios. But there are of course ways to achieve a custom partitioning using targeted techniques - but that depends on your use case ... HTH /peter ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user _ Anılarınızı istediğiniz herkesle çevrimiçi paylaşın. http://www.microsoft.com/turkiye/windows/windowslive/products/photos-share.aspx?tab=1 ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user _ Windows Live tüm arkadaşlarınızla tek bir yerden iletişim kurmanıza yardımcı olur. http://www.microsoft.com/turkiye/windows/windowslive/products/social-network-connector.aspx ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user -- Anders Nawroth
Re: [Neo] neo4j Beginner Question
I will take a look at them Thanks you all, for your responses. Date: Fri, 14 Aug 2009 19:10:48 +0200 From: and...@neotechnology.com To: user@lists.neo4j.org Subject: Re: [Neo] neo4j Beginner Question Hi! IndexService indexService = new LuceneIndexService( neoService ); and that will be your index, fully transactional and participates in your neo transactions. More information here: http://components.neo4j.org/index-util/ http://components.neo4j.org/index-util/apidocs/index.html http://components.neo4j.org/index-util/apidocs/org/neo4j/util/index/IndexService.html The EmbeddedNeoWithIndexingExample.java in the APOC download could be useful: http://dist.neo4j.org/neo4j-apoc-0.1.tar.gz http://dist.neo4j.org/neo4j-apoc-0.1.zip The download includes all libraries that you need for Neo4j + Lucene indexing. /anders 2009/8/14 Onur AKTAS onur.ak...@live.com: So I must build it on the top of Lucene? Hmm, shouldn't it be a native property of neo4j? Do we have a chance to get Node's id after we insert it? So I can use an additional key - value based database for keeping the relation between Node and User like below: (rdbms_user_id, neo4j_node_id) Is it a good idea? From: neil.el...@mangala.co.uk To: user@lists.neo4j.org Date: Fri, 14 Aug 2009 16:21:38 +0100 Subject: Re: [Neo] neo4j Beginner Question And then use the index-utils to find the node (it's a good simple and efficient integration with Lucene). On 14 Aug 2009, at 16:10, Dan Heaver wrote: Onur, add a property to each node to hold the surragate key from your RDBMS... Dan On 14 Aug 2009, at 15:30, Onur AKTAS onur.ak...@live.com wrote: Thank you for your response. I'm trying to understand the main concept, please correct me if I am wrong. For example, there are many users of an application and each represented as Node. And each User has a UserId in RDBMS. I have checked Node class and saw that there is a method called as getId() but I could not see setId() for mapping the User in the RDBMS to neo4j. Sample data: (UserId / Friends Ids) 1 - [2, 4] 2 - [1, 3] 3 - [10] 4 - [1, 3, 5] 5 - [3] And I need to query What are the all shortest paths from 1 to 10 for max length 4 And results should be, 1 - 2 - 3 - 10 1 - 4 - 3 - 10 * 1 - 4 - 5 - 3 - 10 (It will not be shown because it exceeds the length 4). You mean that it can be handled with neo4j, but how can I map each User in RDBMS, to Nodes by their original Ids? Thanks. From: neubauer.pe...@gmail.com Date: Wed, 5 Aug 2009 11:16:15 +0200 To: user@lists.neo4j.org Subject: Re: [Neo] neo4j Beginner Question Hi Onur 2009/8/4 Onur AKTAS onur.ak...@live.com: Calculating,friends of friends, 3rd degree contacts or 4th degree etc. is not a good idea with RDBMS. In short words, neo4j fits perfectly for these kinds of jobs? yes, that is the kind of problems Neo4j and Graph Databases are trying to solve in general. Semi-structured data, havy use of relational information between information entities and complex analysis of high depth fast are some of the common use cases for using a graph database. Do we have a chance to scale neo4j by adding nodes, does it support distributed processing? Also, can we delete any node in the graph when we need to delete user or we must create the entire graph again when we need any updates? Do graph objects have id's that helps us to find the node quickly? Neo4j atm does not support distributed processing or partitioning the graph. There is high-availability and online-backup being worked on which feels more acute since Neo4j on a single instance scales over 1 Billion primitives, which should be enough for most immediate scenarios. But there are of course ways to achieve a custom partitioning using targeted techniques - but that depends on your use case ... HTH /peter ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user _ Anılarınızı istediğiniz herkesle çevrimiçi paylaşın. http://www.microsoft.com/turkiye/windows/windowslive/products/photos-share.aspx?tab=1 ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user _ Windows
[Neo] neo4j with terracotta?
Hi All, I was just wondering if any users of neo4j has had to opportunity to integrate it with terracotta? Regards, Marc Preddie ___ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user