Hi Niels,
this is now fixed. Thanks for the test case.
2011/6/17 Mattias Persson matt...@neotechnology.com
I'm on this one, since I'm assuming I'm the one introducing it. And yes
there are some tests around this that I wrote for these changes...
apparently now good enough.
2011/6/17 Jim
Hi Kalin,
I'll have a look at it right now
2011/6/17 Kalin Wilson Development d...@kalinwilson.com
Perhaps this is fixed in the latest milestone release, I haven't had a
chance to test it yet. I upgraded from 1.3M03 to 1.4M03 and found that my
code that queried node indexes using a
I cannot reproduce this. I'm trying it with this code:
// I also tried with FULLTEXT_CONFIG
IndexNode index = graphDb.index().forNodes( qc,
LuceneIndexImplementation.EXACT_CONFIG );
Node node = graphDb.createNode();
index.add( node, key, value );
Great. Will merge that patch into trunk as soon as possible.
-Johan
On Thu, Jun 16, 2011 at 10:21 PM, Jennifer Hickey jhic...@vmware.com wrote:
Hi Johan,
Sorry for the delay. I was finally able to try out that patch (against 1.3)
on our test environment, and things are running smoothly. I
Hi all,
I am new to neo4j and excited to know more about graph database.
First of all, could anyone please help me to figure out the documentation
about the query or rest client?
Then, back to my question, I want to find 2nd degree friends but ordered by
number of mutual friend. I understand
getNodeById is fast/immediate
2011/6/16 Aseem Kishore aseem.kish...@gmail.com
Indeed getNodeById().
Aseem
On Thu, Jun 16, 2011 at 10:11 AM, Mattias Persson
matt...@neotechnology.com
wrote:
Are you thinking of GraphDatabaseService#getNodeById /
#getRelationshipById
? Or index
Hi Fajar,
this is a depth 2 traversal from the person in question. While
exhaustively traversing his friends, you increase the group count as
for each FOAF you get on the second step.
However, we have seen edge cases with supernodes where in a social
network, persons can have 50K friends. There,
Hi Mattias, You're welcome. It actually helped me gain insight in the workings
of the in-graph Timeline component, since that started to behave eratically
(having later entries appearing as previous entries). It took some time before
I realized the problem was in kernel and not in Timeline.
I think it could be very useful to add these types as possible property
values
Node or Node[]
Relationship or Relationship[]
This is useful to implement more complex graphs. For instance, security
roles:
I can define a security role as a node and users nodes can
I think some further understanding of Neo4J and graph databases would help:
Node == precisely what a single relationship from a node accomplishes
Node[] == precisely what multiple relationships from a node accomplishes
-Original Message-
From: user-boun...@lists.neo4j.org
Hi,
is it possible to traverse on a Neo4J graph DB using the Java API in
parallel threads? Is this possible within one transaction or does every
thread has to use its own transaction? Is the API thread-safe concerning
read-only access?
Is there any advantage of concerning parallelism when using
I have run into the situation where I want to add key value pairs to the Lucene
index, where I have no need to store the value in a property, but I would like
to know which values are stored in the Lucene index for a given key-object
pair. Use case: Loading Dbpedia in Neo4J, I load all
Hi, Niels.
Mattias just responded yesterday to me on a similar question. See below:
Rick
==
Hi Rick,
you could probably get the keys from the IndexReader, like so:
// I'm in LuceneIndex now
public IterableString getKeys()
{
IndexSearcherRef searcher =
Thanks Rick, I will try out this code. For my use case, I don't mind the lack
of transactional state, though I can imagine there to be use cases where having
access to transactional state is requred. It would be nice if this somehow
would become part of the standard Neo4j API. Niels
From:
Hi,
That is possible (and even recommended). The Java API is thread safe
(with the exception of batch inserter) both for reads and writes.
Each thread may use its own transaction but it is not required to have
a transaction when performing read operations (only for writes).
Reading is lock free
Thanks a lot.
On Thu, Jun 16, 2011 at 3:20 PM, Michael Hunger
michael.hun...@neotechnology.com wrote:
You could just use the direct repository factory for that.
directGraphRepositoryFactory.createGraphRepository(clazz).findAll()
normally you would have a
interface PersonRepository extends
Hi,
Keep in mind that Neo4j is a fully ACID database. As such, it is safe
to use in the same manner as any other ACID database, since it makes
use of locking over primitives, deadlock detection, isolation between
transactions etc. Having said that:
Yes, the API Neo4j exposes is suitable for
Oh thank you,
As I mentioned, I am new to neo4j. So a little sample code would be very useful
in my learning process. :)
My current state is that I managed to add few nodes, and add friend
relationship between several nodes.
User - friend - other node.
Friend is relationship
I don't have a
Thanks Mattias, I'll use the 1.4M04 jars and try my code again. If I get the
NPE, I'll post my code.
On Jun 17, 2011, at 1:57 AM, Mattias Persson wrote:
I cannot reproduce this. I'm trying it with this code:
// I also tried with FULLTEXT_CONFIG
IndexNode index =
Hi,
In Gremlin (http://gremlin.tinkerpop.com), friends of a friend (FOAF) who are
not my friends:
x = [] as Set
g.v(1).out('friend').aggregate(x).out('friend').except(x)
- x is a Set to save intermediate friend vertices to to exclude (except) from
the final step.
- g is your
Thank you for the code, I will use it as starting point of learning gremlin.
Sent from my BlackBerry® smartphone from Sinyal Bagus XL, Nyambung Teruuusss...!
-Original Message-
From: Marko Rodriguez okramma...@gmail.com
Sender: user-boun...@lists.neo4j.org
Date: Fri, 17 Jun 2011 07:31:26
I agree,a Node is something that has 2 (user managed) fields:
Relationship[]
Property[]
and a Relationship is something that has 2 (user managed) fields:
Node[2]
Property[]
and currently Property has two fields
String key
Object value
where Object can be a scalar or array of basic types:
Aniceto,
introducing real Node and Relationship links as fields on Nodes and
relationships would essentially blur the distinction between Nodes,
Properties and Relationships, and let you treat the graph as a
Hypergraph. We find that model too abstract and hard to deal with the
edge cases of these
Hi,
A startup question here!
Can I connect from java to a neo4j server running the database without
using the REST API or the Remote Server.?
Something like :
GraphDatabaseService graphDb = new EmbeddedGraphDatabase(localhost:7474/);
Thanks,
A.
This should help
http://docs.neo4j.org/chunked/1.4-SNAPSHOT/server-embedded.html
Cheers,
McKinley
On Fri, Jun 17, 2011 at 9:00 AM, Antriani Stylianou antrian...@gmail.comwrote:
Hi,
A startup question here!
Can I connect from java to a neo4j server running the database without
using the
Hello More info:
http://www.mail-archive.com/user@lists.neo4j.org/msg08629.html However, by
definition, an embedded db is just a file.
-Charles Edward Bedón CortázarITIL
Foundation CertifiedOpen Source Network Inventory for the masses!
while REST is not a very performant way to access any low level API
directly, there is a Java Wrapper for the Neo4j API over REST from Michael
Hunger https://github.com/jexp/neo4j-java-rest-binding that does the Neo4j
API over REST.
Gave this a try. Works great! Thanks for that contribution.
Hi Antriani,
no, besides the two ways you mention, such functionality is not
currently available, with a question mark over the HA way, depending
on your use case.
I assume what you need is to program against a remotely running
instance of Neo4j through the same Java API, kind of like what is
Hi,
That answered my question!
I was just aiming for performance and thought that java api would be
better than REST.
a.
On 6/17/11 6:34 PM, Chris Gioran wrote:
Hi Antriani,
no, besides the two ways you mention, such functionality is not
currently available, with a question mark over the HA
Peter
This could be a use case:
Let's have users, roles, permissions and communities.
Each role is defined as a permissions set. Users have assigned a list of
roles for every community they belong to.
If roles could be assigned this way (user)--
(has_role)[community_neo4j] -- (role)
we
Of course, on the other hand, if the access method per se is the
problem, then Michael Hunger has this to offer:
https://github.com/jexp/neo4j-java-rest-binding
which is a wrapper that exposes the REST server endpoint as a
GraphDatabaseService. Everything works through REST so performance
Cool, thanks!
On Fri, Jun 17, 2011 at 5:01 AM, Mattias Persson
matt...@neotechnology.comwrote:
getNodeById is fast/immediate
2011/6/16 Aseem Kishore aseem.kish...@gmail.com
Indeed getNodeById().
Aseem
On Thu, Jun 16, 2011 at 10:11 AM, Mattias Persson
matt...@neotechnology.com
Quick q: will the new REST API batching feature treat the operations as a
single transaction? That would be convenient for some scenarios I think,
like swapping two nodes in a linked list.
Aseem
On Fri, Jun 10, 2011 at 7:48 AM, Peter Neubauer
peter.neuba...@neotechnology.com wrote:
Hello
BODY { font-family:Arial, Helvetica, sans-serif;font-size:12px; }Hi
I have a graph where each node of a class have a relationship to a
master-class node and it has a relationship to referenceNode. Using
1.4.M04 and EmbeddedServer.
I have a loop over all the relationships of the referenceNode,
BODY { font-family:Arial, Helvetica, sans-serif;font-size:12px;
}I've been digging into documentation and it seems there is no Java
wrapper to access it, only the REST API. Is that correct?
Thanks
___
Neo4j mailing list
User@lists.neo4j.org
Hello Aniceto,
Michael Hunger wrote a Java wrapper that uses the REST API under the covers:
https://github.com/jexp/neo4j-java-rest-binding
As Chris pointed out a couple of emails ago, although this API is similar to
the embedded API, it goes over HTTP and so is far slower.
Jim
On 17 Jun
You can create a node type community-role with two outgoing relations
in_community and with_role, which respectively point to a community and
to a role. The user node can then have a relationship has_community-role
pointing to a community-role node. Every hypergraph structure can in
Mattias,
I just listed one of the use cases, I have ample types of relationships in
my database.
I will be connecting all the 50k users to certain common nodes that will
depict something about the users. Example: A user node can be
directly/indirectly related to a place node that will depict the
I am trying to write MapReduce job to do Neo4j Batchinserters.
It works fine when I just run it like a java file(runs in local mode) and
does the insert, but when I try to run it in the distributed mode it does
not write to the graph.
Is it issue related to permissions?
I have no clue where to
This is an extension of previous questions that I had posted (although no
knowledge of them is needed to understand this).
Here's what the relations look like in my db...
User1---VISITED PLACES--- Empty NodeHAS VISITED Usa
User2---VISITED PLACES--- Empty NodeHAS VISITED Usa
yes it does. one tx per batch
M
Sent from my iBrick4
Am 17.06.2011 um 19:17 schrieb Aseem Kishore aseem.kish...@gmail.com:
Quick q: will the new REST API batching feature treat the operations as a
single transaction? That would be convenient for some scenarios I think,
like swapping two
Hello Sulabh,
We're going to need a little more information before we can help.
Can you tell us how it fails? Are you trying to run a batch inserter on
different databases on each of your parallel jobs?
Jim
___
Neo4j mailing list
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
I am using the Dijkstra path finding algorithm. I have several
relationships set up through the REST interface with a cost property
called distance. Unfortunately, it seems like I can't make the
property a round number like 2.0, either through REST calls or through
the webadmin panel. It always
Also,
what technology are you writing those map-reduce jobs with ? (framework,
runtime-env, etc).
Some code samples would be great as well.
Cheers
Michael
Am 17.06.2011 um 22:24 schrieb Jim Webber:
Hello Sulabh,
We're going to need a little more information before we can help.
Can
Hi Josh,
I'm currently working on some REST API stuff, so my head's right in this space.
I'm happy to take a look at this is if you send over a failing test.
Jim
On 17 Jun 2011, at 21:34, Josh Adell wrote:
I am using the Dijkstra path finding algorithm. I have several
relationships set up
BODY { font-family:Arial, Helvetica, sans-serif;font-size:12px;
}Yes, but you have to add an intermediate node and then graph becomes
to be like the 4th normal form in SQL. An artifact to adapt real life
scenarios to pure and simple technologies. Again an impedance mismatch
between real life and
BODY { font-family:Arial, Helvetica, sans-serif;font-size:12px; }It
seems there is a class named
ORG.NEO4J.REST.GRAPHDB.RESTGRAPHDATABASE
that implements GraphDatabaseService, but despite that package,
javadocs are in the spring-data server, and probably the class be also
part of
Well as I mentioned the code does not fail anywhere, it runs it full course
and just skips the writing to the graph part.
I have just one graph and I pass just 1 instance of the batchInserter to
the map function.
My code is in Scala, sample code attached below
class ExportReducer extends
Hi Sulabh,
what do you mean by 'local' mode?
The batch inserter can only be used in a single threaded environment. You
shouldn't use it in a concurrent env as it will fail unpredictably.
Please use the EmbeddedGraphDatabase instead.
Michael
Am 17.06.2011 um 23:20 schrieb sulabh choudhury:
That impedance mismatch you speak of can be overcome by writing your own API on
top of Neo4J.
Nothing keeps you for creating your own application layer that allows you to do
the things you want to do.
If you want relationships on relationships, create your own classes and
interfaces, using
Are you referring that in a M/R environment each Map (or Reduce) process
will try to have its own instance of batchInserter and hence it would fail ?
WHen I say local I mean that the code works fine when I just use the M/R
api but fails when I try to run in distributed mode.
On Fri, Jun 17, 2011
Hi Aniceto,
It happens that there is a similar class in SDG, but you should look at the
version in Michael Hunger's repo:
https://github.com/jexp/neo4j-java-rest-binding
Jim
___
Neo4j mailing list
User@lists.neo4j.org
No that would even be worse.
A single BatchInserter and every graphdb-store that is currently written to by
a batch inserter MUST be accessed from only a single single threaded
environment.
Please use the normal EmbeddedGraphDbService for your multi-threaded MR jobs.
Cheers
Michael
Am
Alright thank you all
On Fri, Jun 17, 2011 at 2:46 PM, Michael Hunger
michael.hun...@neotechnology.com wrote:
No that would even be worse.
A single BatchInserter and every graphdb-store that is currently written
to by a batch inserter MUST be accessed from only a single single threaded
Thanks guys, this mailing list is awesome.
On Thu, Jun 16, 2011 at 6:29 AM, Marko Rodriguez okramma...@gmail.comwrote:
Hi,
I think what he's
asking for is just to collect properties along the way.
Yea. You are right he said adding a name property to a list.
In Gremlin, if you are
That's awesome! Thanks.
Aseem
On Fri, Jun 17, 2011 at 11:54 AM, Michael Hunger
michael.hun...@neotechnology.com wrote:
yes it does. one tx per batch
M
Sent from my iBrick4
Am 17.06.2011 um 19:17 schrieb Aseem Kishore aseem.kish...@gmail.com:
Quick q: will the new REST API batching
Jim,
The best I can do as far as a failing test is this series of curl
calls. I create 2 nodes, then connect them with a relationship that
has a property called distance. When I ask for paths without
specifying the algorithm, I get back the path with the relationship.
When I specify the
Hi Josh,
I'm just wiring up a bunch of code that implements REST paging, and then I'll
codify these tests and sort it out.
Jim
On 18 Jun 2011, at 01:17, Josh Adell wrote:
Jim,
The best I can do as far as a failing test is this series of curl
calls. I create 2 nodes, then connect them with
Any suggestions on this please ?
On Fri, Jun 17, 2011 at 11:03 PM, V vlin...@gmail.com wrote:
I created a graph model with 2 classes Node and Element as follows:
public class Node {
@RelatedTo(type = ELEMENT, elementClass = Element.class, direction =
OUTGOING)
private SetElement
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
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
62 matches
Mail list logo