querying for in your traversals? You can put information on the
relationships and evaluate that (and also all other nodes and relationships so
far on the current path) using the evaluators (new framework) or
pruning/filtering (stable framework).
Can you explain a typical traversal so that it gets
implemented if it's implemented in the core of the
traversal framework
* Limiting / Pagination can be deferred for a while until we know what it
needs to look like (from looking at actual uses)
* (Server side) Sorting can be deferred until we need it for limiting /
pagination
Peace,
Tobias
On Thu
, 2011 2:47 AM
To: user@lists.neo4j.org
Subject: [Neo4j] Looking for value from array-typed relationship property in
traversal return filters (REST API)
Hi there,
I am getting pretty excited with the power of return evaluators in
traversing framework. However, since I am using the REST API
questions
Hey,
You might want to consider Blueprints Pipes for a more controlled traverser
framework that doesn't require the use of for-loops and allows you to specify
arbitrary paths through a graph.
http://wiki.github.com/tinkerpop/blueprints/pipes-traversal-framework
For the example
and allows you
to specify arbitrary paths through a graph.
http://wiki.github.com/tinkerpop/blueprints/pipes-traversal-framework
For the example viewer--FOLLOWS--user--CREATED--message do,
//
PipeVertex,Edge pipe1 = new
VertexEdgePipe
in the core of
the
traversal framework
* Limiting / Pagination can be deferred for a while until we know what
it
needs to look like (from looking at actual uses)
* (Server side) Sorting can be deferred until we need it for limiting /
pagination
Peace,
Tobias
On Thu, Apr 8, 2010
traversal framework in 1.1-SNAPSHOT? It
solves that problem in that you can specify uniqueness for the traverser...
you can instead say that each Relationship can't be visited more than once,
but Nodes can. Your example:
MapNode, Integer result = new HashMapNode, Integer();
for ( Node
more than once in a
traversal, right? Have you looked at the new traversal framework in
1.1-SNAPSHOT? It solves that problem in that you can specify uniqueness for
the traverser... you can instead say that each Relationship can't be visited
more than once, but Nodes can. Your example
in a traversal.
I know the traversal framework has cycle avoidance built-in, but
there
doesn't seem to be an API for cycle detection!
Has anyone already implemented a cycle detector for traversals?
Thanks in advance,
Wouter
importing the data into Neo4j?
second: your example used cypher which is not optimized for performance
(yet!). This is in our plans for the next two releases of neo4j.
So if you want to see the real performance of neo4j, please use the
traversal framework or the core-API:
Cypher Traversals
is not optimized for performance
(yet!). This is in our plans for the next two releases of neo4j.
So if you want to see the real performance of neo4j, please use the
traversal framework or the core-API:
Cypher Traversals:
// define
cypherQuery = cypherParser.parse(start n=node({start_node
!). This is in our plans for the next two releases of neo4j.
So if you want to see the real performance of neo4j, please use the
traversal framework or the core-API:
Cypher Traversals:
// define
cypherQuery = cypherParser.parse(start n=node({start_node}) match
n--()--x return x
into Neo4j?
second: your example used cypher which is not optimized for performance
(yet!). This is in our plans for the next two releases of neo4j.
So if you want to see the real performance of neo4j, please use the
traversal framework or the core-API:
Cypher Traversals:
// define
of neo4j, please use the
traversal framework or the core-API:
Cypher Traversals:
// define
cypherQuery = cypherParser.parse(start n=node({start_node}) match
n--()--x return x)
traversalQuery =
Traversal.description().evaluator(Evaluators.atDepth(2)).expand
(the value is irrelevant), relationships (with a DynamicRelationshipType
with a name equal to the md5 key) are used to link the various items in
the
path.
Finding the path requires a traversal from the first Class node in the
path, following the given relationships. This traversal can potentially
know the traversal framework currently also uses
the core API under the hood to perform the traversals (and no black magic
(yet)).
So it should be fairly easy to take that approach/code and create a
library that abstracts the hyper-edge issues (creation, deletion,
traversal
that requires you to
iterate over all nodes/relationships?
Often changing the node space layout can make this problem go away
allowing for iteration over the needed entries by normal traversal. It
is actually very rare that you run into the use-case were you have to
iterate over all nodes. This is also
I am using only one relationship type in my index tree, and made traversal
decisions based on properties of the tree nodes, but have considered an
'optimization' based on embedding the index keys into the relationship
types, which I think is what you did. However, I am not convinced it will
work
on that), we are in a position to think about more complex
autoindex providers.
Also, the possibility to treat Neo4j Spatial and other graph
structures as index providers, would hook into the index framework and
expose things to higher level queries like Cypher and Gremlin, e.g.
combining a spatial
. As you probably know the traversal framework currently also uses
the core API under the hood to perform the traversals (and no black magic
(yet)).
So it should be fairly easy to take that approach/code and create a
library that abstracts the hyper-edge issues (creation, deletion
and Objects
I completely agree,
hyperedges and the accompanying traversers should be handled in a
library. As you probably know the traversal framework currently also uses
the core API under the hood to perform the traversals (and no black magic
(yet)).
So it should be fairly
traversers should be handled in a
library. As you probably know the traversal framework currently also uses
the core API under the hood to perform the traversals (and no black magic
(yet)).
So it should be fairly easy to take that approach/code and create a
library that abstracts the hyper
, while it is equally conceivable to have
traversers that return a Relationship iterator, and keep track of visited
Relationships.
There's a new traversal framework in the making (I don't know if you've read
the discussions about it on this mailing list?) which puts relationships in
the limelight
a new traversal framework in the making (I don't know if you've read
the discussions about it on this mailing list?) which puts relationships in
the limelight as well. It'll be integrated in version 1.1 hopefully.
GraphDatabaseService provides a method to list all nodes but not a method
traverser framework, so I was
aware it would become possible to traverse over relationships in the near
future, again my statement was based on the current status and design
decisions probably made long before the 1.0 version.
Indexing of relationships would indeed be another step forward. I wonder
about more complex
autoindex providers.
Also, the possibility to treat Neo4j Spatial and other graph
structures as index providers, would hook into the index framework and
expose things to higher level queries like Cypher and Gremlin, e.g.
combining a spatial bounding box geometry search
From: michael.hun...@neotechnology.com
Date: Sat, 16 Jul 2011 23:37:48 +0200
To: user@lists.neo4j.org
Subject: Re: [Neo4j] Hyperedges and Objects
I completely agree,
hyperedges and the accompanying traversers should be handled in a
library. As you probably know the traversal framework
: [Neo4j] Hyperedges and Objects
I completely agree,
hyperedges and the accompanying traversers should be handled in a
library. As you probably know the traversal framework currently also
uses
the core API under the hood to perform the traversals (and no black
magic
(yet)).
So
interesting is the support for dynamic graphs. I'm hoping to
be able to use that for creating animated sequences of how a traversal moves
through a graph. Not only would this be cool for demonstrations, but it
would also be very useful for visual debugging of applications. I've written
a small framework
interesting is the support for dynamic graphs. I'm hoping
to
be able to use that for creating animated sequences of how a traversal
moves
through a graph. Not only would this be cool for demonstrations, but it
would also be very useful for visual debugging of applications. I've
written
interesting is the support for dynamic graphs.
I'm hoping to be able to use that for creating animated sequences of how a
traversal moves through a graph. Not only would this be cool for
demonstrations, but it would also be very useful for visual debugging of
applications. I've written a small
is the support for dynamic
graphs.
I'm hoping to be able to use that for creating animated sequences of
how a
traversal moves through a graph. Not only would this be cool for
demonstrations, but it would also be very useful for visual debugging of
applications. I've written a small framework
Ivarsson
tobias.ivars...@neotechnology.com wrote:
Hi!
I've had a look at Gephi and it looks really interesting. One
particular thing I found interesting is the support for dynamic
graphs.
I'm hoping to be able to use that for creating animated sequences
of how a
traversal moves through
to use that for creating animated sequences
of how a
traversal moves through a graph. Not only would this be cool for
demonstrations, but it would also be very useful for visual
debugging of
applications. I've written a small framework that captures all
actions in a
Neo4j Graph
is the support for dynamic
graphs.
I'm hoping to be able to use that for creating animated sequences of
how a
traversal moves through a graph. Not only would this be cool for
demonstrations, but it would also be very useful for visual
debugging of
applications. I've written a small framework
the concurrency
issues at the possible expense of traversal performance. Also, the hotspot
or supernode issue exists a number of other places in our application
wherever we are constantly adding (or removing) content related to an entity in
the system. It seems that a lot of the current users
(e.g. via a traversal)
and return them.
Cheers
Michael
Am 01.02.2011 um 23:55 schrieb Joshi Hemant - hjoshi:
I solved it!! The jar file needed to be in the plugins folder.
-Hemant
-Original Message-
From: user-boun...@lists.neo4j.org [mailto:user-boun...@lists.neo4j.org
in the wiki or in a blog
post.
Now you also know how to speed up your app, whenever the existing REST API is
too chatty for a usecase. Just write a plugin that gets the data (nodes,
relationships) that you want to get in one request (e.g. via a traversal)
and return them.
Cheers
Michael
Am
post.
Now you also know how to speed up your app, whenever the existing REST API is
too chatty for a usecase. Just write a plugin that gets the data (nodes,
relationships) that you want to get in one request (e.g. via a traversal)
and return them.
Cheers
Michael
Am 01.02.2011 um 23
. Just write a plugin that gets the data
(nodes, relationships) that you want to get in one request (e.g. via a
traversal)
and return them.
Cheers
Michael
Am 01.02.2011 um 23:55 schrieb Joshi Hemant - hjoshi:
I solved it!! The jar file needed to be in the plugins folder
, for your domain,
the graph is really a best fit.
You don't have to pre-index everything for all queries. Graph querying
is a two step approach, you _have_ to index the fields on the nodes
you want to get as _starting_ nodes for your traversals but for the
actual traversal itself the properties
Something you could probably do is to return paths from cypher or traversal and
then pick the nodes off the paths that you're interested in - from the path
you get the tree-structure aka. the path's to the root of your tree.
From the information extracted there you can build your composite
201 - 242 of 242 matches
Mail list logo