Re: [Neo4j] Fwd: Lucene Custom Sort in Neo4j

2011-11-22 Thread Mattias Persson
As a parameter to the index GET perhaps?

GET .../index/node/myindex?query=name:*sort=GivenNameorder=desc

2011/11/22 Peter Neubauer peter.neuba...@neotechnology.com

 I agree.
 Sending arbitrary Groovy is not what you want a database to execute. Do you
 see any good index - neutral way to expose this? It's even very relevant to
 Cypher...

 /peter

 Sent from my phone, please excuse typos and autocorrection.
 On Nov 22, 2011 4:46 AM, Tatham Oddie tat...@oddie.com.au wrote:

 
 
  --
  Tatham Oddie
  Tiny keyboard = tiny message
 
  Begin forwarded message:
 
  From: Tatham Oddie tatham.od...@readify.onmicrosoft.commailto:
  tatham.od...@readify.onmicrosoft.com
  Date: 22 November 2011 14:43:00 AEDT
  To: tat...@oddie.com.aumailto:tat...@oddie.com.au 
 tat...@oddie.com.au
  mailto:tat...@oddie.com.au
  Subject: FW: Lucene Custom Sort in Neo4j
 
 
 
  From: Tatham Oddie [mailto:tatham.od...@readify.onmicrosoft.com]
  Sent: Tuesday, 22 November 2011 2:42 PM
  To: Romiko Derbynew; user@lists.neo4j.orgmailto:user@lists.neo4j.org
  Cc: mystory-develop...@barnardos.org.aumailto:
  mystory-develop...@barnardos.org.au; Tatham Oddie
  Subject: RE: Lucene Custom Sort in Neo4j
 
 
 
 http://docs.neo4j.org/chunked/snapshot/gremlin-plugin.html#rest-api-send-an-arbitrary-groovy-script---lucene-sorting
 
  Send something like this via /ext/GremlinPlugin/graphdb/execute_script:
 
  import org.neo4j.graphdb.index.*
  import org.neo4j.index.lucene.*
  import org.apache.lucene.search.*
  neo4j = g.getRawGraph()
  idxManager = neo4j.index()
  clientIndex = idxManager.forNodes('agency123-clients')
  query = new QueryContext( 'FamilyName:Smith' ).sort( new Sort(new
  SortField( 'GivenName',SortField.STRING, true ) ) )
  results = clientIndex.query( query )
 
  Pros:
 
 
  · It’ll work
 
  Cons:
 
 
  · You’d might as well stop calling it the “REST” API
 
  · It’s fragile to changes in either the “REST” API or the Java
 API
  – twice the chance of getting bitten
 
  · It requires us to string concatenate snippets of Java code
  together within our C#
 
  If you go down this route, please bury it very very deep in Neo4jClient
  and expose a nicer API signature on top. :)
 
 
  -- Tatham
 
 
  From: Romiko Derbynew [mailto:romiko.derby...@readify.onmicrosoft.com
  ]mailto:[mailto:romiko.derby...@readify.onmicrosoft.com]
  Sent: Tuesday, 22 November 2011 2:36 PM
  To: user@lists.neo4j.orgmailto:user@lists.neo4j.org
  Cc: mystory-develop...@barnardos.org.aumailto:
  mystory-develop...@barnardos.org.au; Tatham Oddie
  Subject: Lucene Custom Sort in Neo4j
 
  Hi Guys,
 
  What is the easiest way for me to build a custom full text sort for
 lucene
  in Neo4j, the thing is, we use the REST API to query the index, and I
 would
  like to apply a custom sort
 
  e.g.
 
  I want to change sorting to:
  Sort by Relevance (Booster) then by IndexKey1 then by indexKey2.
 
  Currently, we have the default sort via the query parser api, but it is
  not powerful enough(
  http://lucene.apache.org/java/3_1_0/queryparsersyntax.html).
 
  Any ideas, how we could do this, and still leverage the REST API for
 index
  queries?
 
  Cheers
  ___
  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




-- 
Mattias Persson, [matt...@neotechnology.com]
Hacker, Neo Technology
www.neotechnology.com
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] some questions

2011-11-22 Thread Jacob Hansson
Hey Andrew,

like Peter hints at, webadmin itself does not currently support that kind
of customization as a proper feature. Howerver, again like Peter points
out, it is all on Github, and you are free to create your own personalized
version of it :)

Just keep in mind that you will have to keep your fork or branch up to date
with later neo4j versions manually, and create your own releases.

Cheers!
/jake

On Mon, Nov 21, 2011 at 8:00 PM, Peter Neubauer 
peter.neuba...@neotechnology.com wrote:

 Let us know if it works out for you.

 /peter

 Sent from my phone, please excuse typos and autocorrection.
 On Nov 21, 2011 7:58 PM, andrew ton andrewt...@yahoo.com wrote:

 
 
  Thanks Peter
 
  Cheers,
 
 
  
   From: Peter Neubauer peter.neuba...@neotechnology.com
  To: Neo4j user discussions user@lists.neo4j.org
  Sent: Monday, November 21, 2011 4:41 AM
  Subject: Re: [Neo4j] some questions
 
  Andrew,
  I think you could set up the Webadmin over your embedded project like
  http://docs.neo4j.org/chunked/snapshot/server-embedded.html maybe as
  part of a unit test, and then start modifying the layout using the
  coffeescript and template infrastructure under
 
 
 https://github.com/neo4j/community/tree/master/server/src/main/resources/webadmin-html
  and
 
 https://github.com/neo4j/community/tree/master/server/src/main/coffeescript
 
  Look at https://github.com/neo4j/community/tree/master/server README
  for how to run the coffeescript compilation. I guess Jake might have
  more pointers.
 
  Cheers,
 
  /peter neubauer
 
  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  - NOSQL for the Enterprise.
  http://startupbootcamp.org/- Öresund - Innovation happens HERE.
 
 
 
  On Fri, Oct 28, 2011 at 5:30 PM, andrew ton andrewt...@yahoo.com
 wrote:
  
  
   Hi Peter,
  
   I think I go to the direction of implementing a REST endpoint in Java.
  How about my first question about customizing the Admin page?
  
   Thanks,
   Andrew
  
  
   
   From: Peter Neubauer peter.neuba...@neotechnology.com
   To: Neo4j user discussions user@lists.neo4j.org
   Sent: Friday, October 28, 2011 8:05 AM
   Subject: Re: [Neo4j] some questions
  
   Andrew,
   that sounds like a traversal you need to do to find exactly the nodes
   you need and remove them.
  
   As Marko mentioned - either script it in Gremlin/Groovy, or implement
   a REST endpoint in Java, giving you full static powaah:
   http://docs.neo4j.org/chunked/snapshot/server-plugins.html
  
   Does that work?
  
   Cheers,
  
   /peter neubauer
  
   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  - NOSQL for the Enterprise.
   http://startupbootcamp.org/- Öresund - Innovation happens HERE.
  
  
  
   On Fri, Oct 28, 2011 at 3:02 PM, andrew ton andrewt...@yahoo.com
  wrote:
  
  
   Yes, that's what I have been doing :)
  
   However what if I have 2 graphs under a root node and I just want to
  remove 1 graph and leave the other alone.
  
   Any suggestions?
  
   Thanks,
  
  
   
   From: Linan Wang tali.w...@gmail.com
   To: Neo4j user discussions user@lists.neo4j.org
   Sent: Friday, October 28, 2011 7:59 AM
   Subject: Re: [Neo4j] some questions
  
   to clear the full db, stop the server and delete the files in data
  folder :)
  
   On Fri, Oct 28, 2011 at 3:57 PM, Marko Rodriguez 
 okramma...@gmail.com
  wrote:
   Hi,
  
   2. Assume I have a big graph in the REST server, what is the best
 way
  to remove the whole graph? Of course deleting each node and its
  relationships and its index is not convenient.
  
  
   Via Gremlin Plugin, you can call g.clear().
  
   HTH,
   Marko.
  
   http://markorodriguez.com
   ___
   Neo4j mailing list
   User@lists.neo4j.org
   https://lists.neo4j.org/mailman/listinfo/user
  
  
  
  
   --
   Best wishes,
  
   Linan Wang
   Architect, Programmer, PhD
   ___
   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
   ___
   Neo4j mailing list
   User@lists.neo4j.org
   https://lists.neo4j.org/mailman/listinfo/user
  
  ___
  Neo4j mailing list
  User@lists.neo4j.org
  

Re: [Neo4j] OSMImporter: Is there a way to do incremental imports?

2011-11-22 Thread Peter Neubauer
Gregory,
incremental loads (and thus, restarts of OSM imports) are a feature we
want to add later on, but it's not in there yet. This would also mean
we could stitch in other areas on demand, and support submitting
changesets back to OSM or at least capture them, so you as an OSM
based app can contribute to OSM automagically.

I know it's much to ask, but help here would be greatly appreciated. I
hope to lab with Michael Hunger on import of data into OSM (and
others) this Friday and hope to get somewhere :)

Cheers,

/peter neubauer

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              - NOSQL for the Enterprise.
http://startupbootcamp.org/    - Öresund - Innovation happens HERE.



On Tue, Nov 22, 2011 at 7:15 AM, grimace macegh...@gmail.com wrote:
 I've been playing with OSMImporter; tried batch and native java.  I've had
 mixed success trying to import the planet, but since it's of considerable
 size, the job usually blows up or grinds to a halt about half way.  I think
 the most I've made it to is 651M nodes and that's not even the ways or
 relations.   I just don't know enough about it and thought I would ask
 before I try to dive in to it, but what would I have to do to so that I
 could restart the job ( where it left off ) when it blows?

 --
 View this message in context: 
 http://neo4j-community-discussions.438527.n3.nabble.com/OSMImporter-Is-there-a-way-to-do-incremental-imports-tp3526941p3526941.html
 Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
 ___
 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


Re: [Neo4j] Fwd: Lucene Custom Sort in Neo4j

2011-11-22 Thread Peter Neubauer
Maybe,
but that means that every index needs to have the notion of sorting
and ordering?

Cheers,

/peter neubauer

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              - NOSQL for the Enterprise.
http://startupbootcamp.org/    - Öresund - Innovation happens HERE.



On Tue, Nov 22, 2011 at 9:13 AM, Mattias Persson
matt...@neotechnology.com wrote:
 As a parameter to the index GET perhaps?

 GET .../index/node/myindex?query=name:*sort=GivenNameorder=desc

 2011/11/22 Peter Neubauer peter.neuba...@neotechnology.com

 I agree.
 Sending arbitrary Groovy is not what you want a database to execute. Do you
 see any good index - neutral way to expose this? It's even very relevant to
 Cypher...

 /peter

 Sent from my phone, please excuse typos and autocorrection.
 On Nov 22, 2011 4:46 AM, Tatham Oddie tat...@oddie.com.au wrote:

 
 
  --
  Tatham Oddie
  Tiny keyboard = tiny message
 
  Begin forwarded message:
 
  From: Tatham Oddie tatham.od...@readify.onmicrosoft.commailto:
  tatham.od...@readify.onmicrosoft.com
  Date: 22 November 2011 14:43:00 AEDT
  To: tat...@oddie.com.aumailto:tat...@oddie.com.au 
 tat...@oddie.com.au
  mailto:tat...@oddie.com.au
  Subject: FW: Lucene Custom Sort in Neo4j
 
 
 
  From: Tatham Oddie [mailto:tatham.od...@readify.onmicrosoft.com]
  Sent: Tuesday, 22 November 2011 2:42 PM
  To: Romiko Derbynew; user@lists.neo4j.orgmailto:user@lists.neo4j.org
  Cc: mystory-develop...@barnardos.org.aumailto:
  mystory-develop...@barnardos.org.au; Tatham Oddie
  Subject: RE: Lucene Custom Sort in Neo4j
 
 
 
 http://docs.neo4j.org/chunked/snapshot/gremlin-plugin.html#rest-api-send-an-arbitrary-groovy-script---lucene-sorting
 
  Send something like this via /ext/GremlinPlugin/graphdb/execute_script:
 
  import org.neo4j.graphdb.index.*
  import org.neo4j.index.lucene.*
  import org.apache.lucene.search.*
  neo4j = g.getRawGraph()
  idxManager = neo4j.index()
  clientIndex = idxManager.forNodes('agency123-clients')
  query = new QueryContext( 'FamilyName:Smith' ).sort( new Sort(new
  SortField( 'GivenName',SortField.STRING, true ) ) )
  results = clientIndex.query( query )
 
  Pros:
 
 
  ·         It’ll work
 
  Cons:
 
 
  ·         You’d might as well stop calling it the “REST” API
 
  ·         It’s fragile to changes in either the “REST” API or the Java
 API
  – twice the chance of getting bitten
 
  ·         It requires us to string concatenate snippets of Java code
  together within our C#
 
  If you go down this route, please bury it very very deep in Neo4jClient
  and expose a nicer API signature on top. :)
 
 
  -- Tatham
 
 
  From: Romiko Derbynew [mailto:romiko.derby...@readify.onmicrosoft.com
  ]mailto:[mailto:romiko.derby...@readify.onmicrosoft.com]
  Sent: Tuesday, 22 November 2011 2:36 PM
  To: user@lists.neo4j.orgmailto:user@lists.neo4j.org
  Cc: mystory-develop...@barnardos.org.aumailto:
  mystory-develop...@barnardos.org.au; Tatham Oddie
  Subject: Lucene Custom Sort in Neo4j
 
  Hi Guys,
 
  What is the easiest way for me to build a custom full text sort for
 lucene
  in Neo4j, the thing is, we use the REST API to query the index, and I
 would
  like to apply a custom sort
 
  e.g.
 
  I want to change sorting to:
  Sort by Relevance (Booster) then by IndexKey1 then by indexKey2.
 
  Currently, we have the default sort via the query parser api, but it is
  not powerful enough(
  http://lucene.apache.org/java/3_1_0/queryparsersyntax.html).
 
  Any ideas, how we could do this, and still leverage the REST API for
 index
  queries?
 
  Cheers
  ___
  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




 --
 Mattias Persson, [matt...@neotechnology.com]
 Hacker, Neo Technology
 www.neotechnology.com
 ___
 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] the social graph is neither (blog post)

2011-11-22 Thread serge
what do you think of this post ?

http://blog.pinboard.in/2011/11/the_social_graph_is_neither/

--
View this message in context: 
http://neo4j-community-discussions.438527.n3.nabble.com/the-social-graph-is-neither-blog-post-tp3527242p3527242.html
Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] Fwd: Lucene Custom Sort in Neo4j

2011-11-22 Thread Andres Taylor
On Tue, Nov 22, 2011 at 10:20 AM, Peter Neubauer 
peter.neuba...@neotechnology.com wrote:

 Maybe,
 but that means that every index needs to have the notion of sorting
 and ordering?


I would be nice if we can introspect and see if the indexes available
support ordering.

Andrés
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] Neo4j Spatial build / run problems

2011-11-22 Thread Peter Neubauer
Daniel,
true, we should upgrade this to 1.5. Michael, can we do it?

Cheers,

/peter neubauer

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              - NOSQL for the Enterprise.
http://startupbootcamp.org/    - Öresund - Innovation happens HERE.



On Tue, Nov 22, 2011 at 12:26 AM, danielb danielbercht...@gmail.com wrote:
 Tried Eclipse Java Edition and it seems that everything is working as it
 should. I could at least start an OSMImport to an embedded database and
 nodes were copied. I will have a detailed look tomorrow.
 I still have a few problems with the Neo4j server itself. When I try to
 batchinsert I get the message that the database was not shutdown in a clean
 way. I start / stop the server as a service, can I somehow correct this
 state? How can I delete all the nodes of the database in an easy way? I
 tried https://github.com/jexp/neo4j-clean-remote-db-addon, but the jar is
 for version 1.4 and when I execute the rest call no nodes are deleted from
 the database.

 Thanks in advance, Daniel

 --
 View this message in context: 
 http://neo4j-community-discussions.438527.n3.nabble.com/Neo4j-Spatial-build-run-problems-tp3515519p3526379.html
 Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
 ___
 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


Re: [Neo4j] the social graph is neither (blog post)

2011-11-22 Thread Jacob Hansson
On Tue, Nov 22, 2011 at 10:46 AM, serge s.fedoro...@gmail.com wrote:

 what do you think of this post ?

 http://blog.pinboard.in/2011/11/the_social_graph_is_neither/


His first point, that modeling the social graph accurately is impossible is
of course true. It is impossible to model reality exactly like it is,
because we are already using all the matter in the universe to model
reality in the first place.

And the social act aspect of declaring a relationship to someone is very
true as well. I think he is correct in saying that the we're gonna
accurately model all social relationships on the planet plan is bound to
fail.

Relationships on facebook and twitter and so on don't actually *model*
social relationships, but rather *are* social relationships. We as users
define the meaning of them, we say things like don't know him really, but
I think I'm Facebook friends with him. Facebook friend is not the same
thing as being friends, it is a social relationship of its own, which we
have collectively defined.

The social graph does not accurately model the intricacies of our social
life, in fact, it increases the complexity of it.



 --
 View this message in context:
 http://neo4j-community-discussions.438527.n3.nabble.com/the-social-graph-is-neither-blog-post-tp3527242p3527242.html
 Sent from the Neo4j Community Discussions mailing list archive at
 Nabble.com.
 ___
 Neo4j mailing list
 User@lists.neo4j.org
 https://lists.neo4j.org/mailman/listinfo/user




-- 
Jacob Hansson
Phone: +46 (0) 763503395
Twitter: @jakewins
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] OSMImporter: Is there a way to do incremental imports?

2011-11-22 Thread Craig Taverner
I did some initial work on incremental imports back in 2010, but stopped
due to some complications:

   - We needed to mix lucene reads and writes during the import (read to
   check if the node already exists, so we don't import twice) and this
   performs very badly in the batch inserter. We decided to first code a
   non-batch insert mode before re-starting the incremental import work. Now
   Peter and I did code a non-batch importer in early 2011, but never went
   back to complete the incremental import.
   - We wanted to support both the case of importing multiple OSM files
   that could be stitched together by resolving overlaps, as well as the case
   of applying changesets to the existing OSM model. This increased the
   complexity of the work just enough to ensure it got dropped. In early 2011
   we also added support to changesets in the model (but only as a data
   structure, not in terms of importing changesets). So we are one step closer
   to this also.

Since we now have non-batch importing, and changeset data structures, the
opportunity to re-start the incremental import and importing changesets is
there. It should not be too hard.

For incremental imports, stitching osm files together, we re-activate the
old code that tests the lucene index before adding nodes and relations.
There might be some subtle edge cases to consider, but a set of tests with
overlapping and non-overlapping osm files should flush them out.

For applying changesets, more thinking is still required. Do we want to
support history in the model, or only the latest version? Should we verify
that only newer changesets are applied and in the right order, or rely on
the user to get it right?

I can say that we did some thinking this summer on the data structures
required to support a complete change history. This relies on the fact that
we already support multiple possible ways on the same nodes, so we can
also, in principle, support multiple possible 'versions' of ways on the
same nodes. More thinking is required, but I have a suspicion that we
should actually go ahead and do this properly will full history, because
that might be the only way to make sure the user never messes things up by
importing in the wrong order.

On Tue, Nov 22, 2011 at 9:58 AM, Peter Neubauer 
peter.neuba...@neotechnology.com wrote:

 Gregory,
 incremental loads (and thus, restarts of OSM imports) are a feature we
 want to add later on, but it's not in there yet. This would also mean
 we could stitch in other areas on demand, and support submitting
 changesets back to OSM or at least capture them, so you as an OSM
 based app can contribute to OSM automagically.

 I know it's much to ask, but help here would be greatly appreciated. I
 hope to lab with Michael Hunger on import of data into OSM (and
 others) this Friday and hope to get somewhere :)

 Cheers,

 /peter neubauer

 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  - NOSQL for the Enterprise.
 http://startupbootcamp.org/- Öresund - Innovation happens HERE.



 On Tue, Nov 22, 2011 at 7:15 AM, grimace macegh...@gmail.com wrote:
  I've been playing with OSMImporter; tried batch and native java.  I've
 had
  mixed success trying to import the planet, but since it's of considerable
  size, the job usually blows up or grinds to a halt about half way.  I
 think
  the most I've made it to is 651M nodes and that's not even the ways or
  relations.   I just don't know enough about it and thought I would ask
  before I try to dive in to it, but what would I have to do to so that I
  could restart the job ( where it left off ) when it blows?
 
  --
  View this message in context:
 http://neo4j-community-discussions.438527.n3.nabble.com/OSMImporter-Is-there-a-way-to-do-incremental-imports-tp3526941p3526941.html
  Sent from the Neo4j Community Discussions mailing list archive at
 Nabble.com.
  ___
  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


Re: [Neo4j] REST api get list of all relationship properties (unique)

2011-11-22 Thread Peter Neubauer
Jure,
for this, I think there is no explicit support in Neo4j. I guess you
will have to iterate and build up an in-memory list of the unique
RelTypes as you go.
Anyone having a better idea?

Cheers,

/peter neubauer

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              - NOSQL for the Enterprise.
http://startupbootcamp.org/    - Öresund - Innovation happens HERE.



On Mon, Nov 21, 2011 at 7:39 PM, Jure Zakotnik j...@gmx.de wrote:
 Hi,

 it's the question, how to get the unique set of relationship properties in
 the graph, without querying/traversing all of the properties. Since I can
 only index nodes/relationships, the index API does not seem to be an option.
 Example: 1M relationships, each of them having one of 10 properties (..but I
 don't know the 10 properties in advance).
 I'm happy if there's a simple query or solution that I just haven't found
 yet :-)

 Regards, Jure

 --
 View this message in context: 
 http://neo4j-community-discussions.438527.n3.nabble.com/REST-api-get-list-of-all-relationship-properties-unique-tp3458852p3525603.html
 Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
 ___
 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


Re: [Neo4j] Batch uploading to REST server

2011-11-22 Thread Peter Neubauer
Hi there,

On Tue, Nov 15, 2011 at 6:50 PM, vistorve ayuskaus...@compete.com wrote:
 I setup visualvm with a jmx connection to the server running neo4j I wasn't
 able to CPU profiling working, it had an error message saying
 getThreadCpuTime was expecting long but got something else. I do have thread
 and heap dumps though if those would be useful.
Would like to see the error here, might be a bug?


 When I was running the batch upload I saw that the CPU usage never went over
 one core ~15% total cpu usage.

 Also I noticed that when I did a batch job of 1.5k nodes, 3k relationships
 the network usage would spike and be consistent and then fall for the upload
 and then spike and fall again for the read back from the server. However
 when I did 15k nodes and 30k relationships the network would spike, fall and
 then have short regular spike of only a couple KB/s. Is there some internal
 paging going on with the REST server, why doesn't it transfer the file all
 at once and then process it?

I think there might be something happening internally, maybe a GC,
before continuing to read the input stream from the socket. However,
can't see that in the code, it's probably best to get a testcase from
you on this?

 The 1.5k job took about 25 seconds, the 15k job took 1220 seconds.

 Below is the configuration I have for the server, the machine itself has
 32GB of ram and 8 64bit cores:
 -XX:+DisableExplicitGC
 -XX:+UseParallelGC
 -XX:+UseNUMA
 -Xss1024m
 -Xms2048m
 -Xmx4056m

 Neo4j properties:
 neostore.nodestore.db.mapped_memory=300M
 neostore.relationshipstore.db.mapped_memory=600M
 neostore.propertystore.db.mapped_memory=600M
 neostore.propertystore.db.strings.mapped_memory=1024M
 neostore.propertystore.db.arrays.mapped_memory=1024M
 cache_type=strong
 use_memory_mapped_buffers=false


 --
 View this message in context: 
 http://neo4j-community-discussions.438527.n3.nabble.com/Neo4j-Batch-uploading-to-REST-server-tp340p3510431.html
 Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
 ___
 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


Re: [Neo4j] Batch uploading to REST server

2011-11-22 Thread Michael Hunger
I think the main overhead comes from parsing the JSON (it's not streamed 
parsing imho).

That's why I suggest you try to split your big file into smaller ones (e.g. 
your 1.5k ones or half the size).

And then execute multiple requests in parallel to the neo4j server to import 
the data.
With your 8cores you should be able to run at least 16 parallel requests 
(probably even 32).

Otherwise I agree with Peter and would love to see your file (you can also send 
it off-list to either of us).

Cheers

Michael

Am 22.11.2011 um 14:19 schrieb Peter Neubauer:

 Hi there,
 
 On Tue, Nov 15, 2011 at 6:50 PM, vistorve ayuskaus...@compete.com wrote:
 I setup visualvm with a jmx connection to the server running neo4j I wasn't
 able to CPU profiling working, it had an error message saying
 getThreadCpuTime was expecting long but got something else. I do have thread
 and heap dumps though if those would be useful.
 Would like to see the error here, might be a bug?
 
 
 When I was running the batch upload I saw that the CPU usage never went over
 one core ~15% total cpu usage.
 
 Also I noticed that when I did a batch job of 1.5k nodes, 3k relationships
 the network usage would spike and be consistent and then fall for the upload
 and then spike and fall again for the read back from the server. However
 when I did 15k nodes and 30k relationships the network would spike, fall and
 then have short regular spike of only a couple KB/s. Is there some internal
 paging going on with the REST server, why doesn't it transfer the file all
 at once and then process it?
 
 I think there might be something happening internally, maybe a GC,
 before continuing to read the input stream from the socket. However,
 can't see that in the code, it's probably best to get a testcase from
 you on this?
 
 The 1.5k job took about 25 seconds, the 15k job took 1220 seconds.
 
 Below is the configuration I have for the server, the machine itself has
 32GB of ram and 8 64bit cores:
 -XX:+DisableExplicitGC
 -XX:+UseParallelGC
 -XX:+UseNUMA
 -Xss1024m
 -Xms2048m
 -Xmx4056m
 
 Neo4j properties:
 neostore.nodestore.db.mapped_memory=300M
 neostore.relationshipstore.db.mapped_memory=600M
 neostore.propertystore.db.mapped_memory=600M
 neostore.propertystore.db.strings.mapped_memory=1024M
 neostore.propertystore.db.arrays.mapped_memory=1024M
 cache_type=strong
 use_memory_mapped_buffers=false
 
 
 --
 View this message in context: 
 http://neo4j-community-discussions.438527.n3.nabble.com/Neo4j-Batch-uploading-to-REST-server-tp340p3510431.html
 Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
 ___
 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


Re: [Neo4j] Neo4j Spatial build / run problems

2011-11-22 Thread danielb
Hi together,

That would be cool. Atm I am deleting the data folder, that works too for my
testing purpose. I have played around with cypher and encounter some
problems. I have OSM nodes in the database and I 'guess' they have a spatial
index on the geometry (lat, lon). The view on the server administration page
also shows Rtree indices. The indexmanager only shows me some sort of lucene
indices (can I get a more detailed overview of the used indices by query?).
I tried the 'node' index with the following command: 

cypher start n=node:node('bbox:[10.0061535, 10.0061535, 48.4125871,
48.4125871]')
cypher match (n) -[r] - (x)
cypher return n
cypher 
== Error: RuntimeException - org.apache.lucene.queryParser.ParseException:
Cannot parse 'bbox:[10.0061535, 10.0061535, 48.4125871, 48.4125871]':
Encountered  RANGEIN_GOOP 48.4125871,  at line 1, column 30.
== Was expecting:
== ] ...
== 

I was expecting to get the node with this coordinates. Can I query bbox for
point geometry at all? I may have typos in the command, so please help me,
these are my first steps with Neo4j :) After playing around with the server
console I will go deeper into the java code.

When I am executing the IndexProviderTest I get an error:
http://dl.dropbox.com/u/18693700/IndexProviderTest.txt

I appreciate your help again,
Daniel



--
View this message in context: 
http://neo4j-community-discussions.438527.n3.nabble.com/Neo4j-Spatial-build-run-problems-tp3515519p3527810.html
Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] Neo4j Spatial build / run problems

2011-11-22 Thread Peter Neubauer
Daniel,
you need to make sure to load the spatial index first witha  custom
config, otherwise lucene is the default index provider and will
shadow the lazily created and loaded index. See

https://github.com/neo4j/spatial/blob/master/features/start-and-stop.feature#L16
for the example. Start with a new db, I guess the current wrong Lucene
index spatial is saved over sessions.

Does that work better?

/peter

On Tue, Nov 22, 2011 at 3:16 PM, danielb danielbercht...@gmail.com wrote:
 Hi together,

 That would be cool. Atm I am deleting the data folder, that works too for my
 testing purpose. I have played around with cypher and encounter some
 problems. I have OSM nodes in the database and I 'guess' they have a spatial
 index on the geometry (lat, lon). The view on the server administration page
 also shows Rtree indices. The indexmanager only shows me some sort of lucene
 indices (can I get a more detailed overview of the used indices by query?).
 I tried the 'node' index with the following command:

 cypher start n=node:node('bbox:[10.0061535, 10.0061535, 48.4125871,
 48.4125871]')
 cypher match (n) -[r] - (x)
 cypher return n
 cypher
 == Error: RuntimeException - org.apache.lucene.queryParser.ParseException:
 Cannot parse 'bbox:[10.0061535, 10.0061535, 48.4125871, 48.4125871]':
 Encountered  RANGEIN_GOOP 48.4125871,  at line 1, column 30.
 == Was expecting:
 ==     ] ...
 ==

 I was expecting to get the node with this coordinates. Can I query bbox for
 point geometry at all? I may have typos in the command, so please help me,
 these are my first steps with Neo4j :) After playing around with the server
 console I will go deeper into the java code.

 When I am executing the IndexProviderTest I get an error:
 http://dl.dropbox.com/u/18693700/IndexProviderTest.txt

 I appreciate your help again,
 Daniel



 --
 View this message in context: 
 http://neo4j-community-discussions.438527.n3.nabble.com/Neo4j-Spatial-build-run-problems-tp3515519p3527810.html
 Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
 ___
 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


Re: [Neo4j] Creating and managing external index

2011-11-22 Thread Peter Neubauer
Avi,
we are in the process to get out a nicer base framework for
transactional index creation, and an index provider for redis.
Meanwhile, if you want, you could look into the BerkelyDB index that I
tried to cook together (no guarantees there),
https://github.com/peterneubauer/bdb-index and see if that is
something to contemplate?

Cheers,

/peter neubauer

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              - NOSQL for the Enterprise.
http://startupbootcamp.org/    - Öresund - Innovation happens HERE.



On Mon, Nov 21, 2011 at 2:40 AM, Avi Shai
unicornrainbowche...@gmail.com wrote:
 What is the best way to create an external index but only for certain nodes?
 Really I want something like the in-graph data structures, but instead it
 will be stored in another database(s). I am in essence indexing only a
 sub-graph or a straight list of nodes. I then want to use these indexes as
 entry points in some cases rather than traversing.

 I understand that there is already Lucene, but I have data that is better
 suited to other indexes. I still want to use Lucene for full-text, just not
 for anything else. I am currently taking a stab at implementing the
 blueprint index interfaces (manual, automatic), but for another purpose. If
 I am always updating these indexes, but only for certain vertex types, what
 is the best integration point? In my data service classes/lower level neo4j
 stuff, or in a server event handler to plug-in the transaction? What about
 for all vertices? I guess I understand how to write the index classes but
 not about the best way of consuming them, and not if they apply well for
 lots of partial, smaller indexes.

 For instance, I want to store data as temporal values, with the most recent
 data first for a group of nodes. I'm not doing Twitter or a blog, but
 either is a good enough analogy.  If I post something with a given tag, I
 want to index all the nodes that have been tagged by that tag (tag edge) in
 temporal order for example to create a recently tagged feed or a recently
 seen users feed that contains the users that have recently tagged using
 that tag. I could store this data in Redis exactly how I want and have  a
 hot set in memory that can then be used either directly in some pages in my
 app, or as an entry point into neo4j for more complex queries. These indexes
 probably require lots of writes and I wanted to also avoid locking related
 nodes on any updates.

 Currently part of the reason I'm doing this is I have lots of super nodes in
 my design. I've patched this some by keeping counts in node properties and
 adding proxy nodes as mini-partions to reduce the number of relationships.
 I've also looked at things like combining common nodes together as
 junctions, but there are too many permutations to scale probably. Anyway, if
 I use in-graph indexes, I have to update my indexes every insertion or
 update. I'm going to try out indexed relationships, and I think it will
 help, but with respect, I don't think it will scale well or fit my use
 cases, especially for indexes where data drops out because the size is fixed
 (like a fixed list).

 I feel that creating index structures in the graph is nice, but it will
 severely balloon the graph. Moreover, I want to save resources on the
 servers running neo for graph traversals and other graph activities and I
 would rather use other clustered servers to store huge amounts of index data
 in memory. One other idea is to use another neo4j instance as an index to
 itself, but I think the characteristics of what I am doing are better suited
 in some cases for Redis (temporal lists) or Mongo (hierarchical metrics)
 depending the use-case. Example: pulling down linear lists of time-data by
 page and sorting front to back or back to front.

 I know that's a lot, but I wanted to at least give some detail beyond what
 I've already read here in all the old posts I've dug through this week. Any
 feedback? Thanks.


 --
 View this message in context: 
 http://neo4j-community-discussions.438527.n3.nabble.com/Creating-and-managing-external-index-tp3523613p3523613.html
 Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
 ___
 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


Re: [Neo4j] Creating and managing external index

2011-11-22 Thread Avi Shai
Peter,

A redis index provider sounds great. Blue Redis (Redis Blueprints) has some
ideas in it, but I think they can be improved on and adapted to neo4j.
Transactional indexes creation sounds like what I need.

I have also thought about if I am doing something like tagging a resource,
there are several points of interest involved including the event, the
resource, the event source, and the user. I would want a temporal index
updated for each of those perhaps, but I often think making the user wait on
the index updates is not the behavior I want. Instead, my idea was to do the
insert of the core data (tag event), and then fire something into an index
update queue. Items could be taken often immediately most of the time, but
it would avoid forcing the user to wait until all the indexes were updated
after creating or updating a node. 

I suppose also what I could do is have some sort of retry system just in
case updating the indexes for anything involved fails. The tough part is the
temporal indexes and ensuring they are sorted right without actually
scanning them much or at all. Other kinds of indexes such as b-tree inserts
are a bit more friendly to this sort of system.


My worry with inserting into an index in a normal transaction is not only
wait, but constantly locking the same nodes if using any in-graph indexes on
a hot spot. An example might be if I am constantly updating and indexing a
discussion. I don't want replies to have to contend for the same index node.
That said, most of the time it is probably a non-issue since the index
writes happen so fast anyway.

--
View this message in context: 
http://neo4j-community-discussions.438527.n3.nabble.com/Creating-and-managing-external-index-tp3523613p3527899.html
Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] Neo4j upcoming features importance poll

2011-11-22 Thread Peter Neubauer
Uservoice seems great. If rapportive uses it,
http://feedback.rapportive.com/forums/42557-general then it is good in
my book. I think we should try it if we can integrate this with GIThub
issues.

Pablo, impressive feedback on http://www.doodle.com/wg8k77vwq6b654bv !
I think Mattias will be delighted that the supernode support is on top
;)

Cheers,

/peter neubauer

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              - NOSQL for the Enterprise.
http://startupbootcamp.org/    - Öresund - Innovation happens HERE.



On Sat, Nov 19, 2011 at 9:29 PM, Peter Bell li...@pbell.com wrote:
 Uservoice might be a good fit. I used it for feature voting on as OSS project 
 and it worked out pretty well...

 Sent from my iPhone

 On Nov 19, 2011, at 2:11 PM, Nigel Small ni...@nigelsmall.name wrote:

 Actually sounds like we may have finally found a use for Google Wave! :-P

 On 19 Nov 2011 13:09, Pablo Pareja ppar...@era7.com wrote:

 Yeah it'd be great having something more wiki-like that everyone could
 edit.
 I have no idea though about how could this be done
 Any ideas?

 Pablo

 On Sat, Nov 19, 2011 at 7:54 PM, Nigel Small ni...@nigelsmall.name
 wrote:

 How about something like Wufoo?

 http://www.wufoo.com/
 http://www.wufoo.com/

 *Nigel Small*
 Phone: +44 7814 638 246
 Blog: http://nigelsmall.name/
 GTalk: ni...@nigelsmall.name
 MSN: nasm...@live.co.uk
 Skype: technige
 Twitter: @technige https://twitter.com/#!/technige
 LinkedIn: http://uk.linkedin.com/in/nigelsmall



 On 19 November 2011 18:45, Peter Neubauer
 peter.neuba...@neotechnology.comwrote:

 I really like this. Is there any other transparent public method you
 poll,
 like a Google form that everyone can edit?
 On Nov 19, 2011 7:19 PM, Pablo Pareja ppar...@era7.com wrote:

 I just added a link for every possible upcoming feature and created
 an
 issue for those which didn't have one so far.

 Sorry for those who voted already but since the options changed,
 their
 vote
 was lost, could you please vote again?
 From now on every time we add a new feature to the poll we should
 create
 its respective issue before adding it.
 At least, whenever a new option is added, the votes for the rest of
 options
 are conserved, so we should be able update our votes just adding our
 vote
 (or not) to the new ones.
 Sorry for the inconvenience!

 Pablo

 On Sat, Nov 19, 2011 at 5:21 PM, Pablo Pareja ppar...@era7.com
 wrote:

 Ok, I just did that for the first one; the bad thing about this is
 that
 every time I edit one of the options, all the votes cast for it get
 lost
 and you have to edit your vote again...
 So maybe from now on I'd be better adding new features to the poll
 only
 once their respective issues has been risen in github.
 What do you think?

 Pablo


 On Sat, Nov 19, 2011 at 5:16 PM, Pablo Pareja ppar...@era7.com
 wrote:

 Yeah that'd be cool, if you give me the links I can put them as
 part
 of
 the options themselves (with bit.ly or something like that).
 Cheers,

 Pablo


 On Sat, Nov 19, 2011 at 1:30 PM, Peter Neubauer 
 peter.neuba...@neotechnology.com wrote:

 Guys,
 This is great! Could you raise issues for these and we mitigate
 missing
 voting on Github with this, linking back to github for
 discussion?
 On Nov 19, 2011 1:09 PM, Pablo Pareja ppar...@era7.com
 wrote:

 @Linan get_or_create feature added ;)
 @Mattias I mean being required to specify a node type at
 creation
 time, (as
 how things are right now with relationships)

 On Sat, Nov 19, 2011 at 1:01 PM, Mattias Persson
 matt...@neotechnology.comwrote:

 hat exactly does mandatory node types mean?

 2011/11/19 Pablo Pareja ppar...@era7.com

 Hi all,

 I was thinking it'd be cool to create a sort of a poll in
 order
 to
 know
 which features (that are missing right now...) are the most
 important
 ones
 for the community. I just did a quick google search for
 free
 online
 poll
 creation platforms and found doodle site, (btw do you know
 a
 better
 site
 to
 do this?).
 The address for the poll is:
 http://www.doodle.com/wg8k77vwq6b654bv
 So far I just added three features that came to my mind
 while I
 was
 creating it, so please say which features you're missing
 and
 I'll
 add
 them
 so that we can all vote for them or not.
 What do you think about all this?
 Cheers,

 Pablo

 --
 Pablo Pareja Tobes

 My site     http://about.me/pablopareja
 LinkedIn    http://www.linkedin.com/in/pabloparejatobes
 Twitter       http://www.twitter.com/pablopareja

 Creator of Bio4j -- http://www.bio4j.com

 http://www.ohnosequences.com
 ___
 Neo4j mailing list
 User@lists.neo4j.org
 https://lists.neo4j.org/mailman/listinfo/user




 --
 Mattias Persson, [matt...@neotechnology.com]
 Hacker, Neo Technology
 www.neotechnology.com
 ___
 Neo4j mailing list
 

Re: [Neo4j] OSMImporter: Is there a way to do incremental imports?

2011-11-22 Thread grimace
thanks for the response(s)!  The hardware I'm testing on is not the best and
only 4G of ram so I'm limited, but this seems the best opportunity for me to
learn this...that being said...

 For incremental imports, stitching osm files together, we re-activate the 
 old code that tests the lucene index before adding nodes and relations. 
 There might be some subtle edge cases to consider, but a set of tests
 with 
 overlapping and non-overlapping osm files should flush them out. 

I'd love to play with this. Is the old code there for me to re-enable in
testing? Or can you point me to where this might be put in?  

Thx,
Greg

--
View this message in context: 
http://neo4j-community-discussions.438527.n3.nabble.com/OSMImporter-Is-there-a-way-to-do-incremental-imports-tp3526941p3527995.html
Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] Time Series Data with complex domain model

2011-11-22 Thread Martin Junghanns
Hey Peter,

thanks for the hint. I currently chose another way to store time series. 
I'll try to use versioned edges like so:

node_a --- edge_a (t1) -- node_b

If there is an update operation on node b at time t2, a copy of b will 
be created and referenced like so:

node_a -- edge_a(t1) -- node_b
node_a -- edge_a (t2) -- node b_new

I will test this model with some benchmarks because there are obviously 
some drawbacks. Maybe you can tell me the best way to handle the edges 
via Spring Neo4J.

Is there any possiblity to index the edges in Spring or define a sort 
order (maybe by timestamp)? I'd like to select the edge_a with latest 
timestamp at an instance of Node_A. Is something like

...
@RelatedToVia
SortedMaplong, Edge_A
...

possible?

Currently the implementation would look like this way:

@NodeEntity
class Node_A {
@RelatedToVia
CollectionEdge_A relations;
// ...
}

@RelationshipEntity
class Edge_A {
@StartNode Node_A from;
@EndNode Node_B to;
long timestamp;
// ...
}

@NodeEntity
class Node_B {
// no need for backward edges
}


Thanks for your help.

Greetings, Martin


Am 21.11.2011 14:19, schrieb Peter Neubauer:
 Martin,
 for storing times, you could try the timeline index in graph
 collections if things are not too long linked, see
 https://github.com/neo4j/graph-collections/blob/master/src/test/java/org/neo4j/collections/timeline/TestTimeline.java
 or some of the other indexes in that component.

 Would that help?

 Cheers,

 /peter neubauer

 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  - NOSQL for the Enterprise.
 http://startupbootcamp.org/- Öresund - Innovation happens HERE.



 On Tue, Nov 15, 2011 at 11:15 AM, s1ckmartin.jungha...@gmx.net  wrote:
 Hey,

 I have a very complex domain model which can be perfectly mapped into the
 neo4j database. OR Mapping is much too complex for the model... The data
 itself is time series data from multiple sensors which needs to be stored
 and retrieved (at given timestamps or in given ranges). Are there any good
 explanations, articles or something else on how to handle this kind of data?
 The second question is: What's the best way to model a domain in neo4j? I
 currently use the aproach described in the
 http://docs.neo4j.org/chunked/milestone/tutorials-java-embedded-entities.html
 documentation  and will also try out the spring graph.

 Best regards,

 Martin

 --
 View this message in context: 
 http://neo4j-community-discussions.438527.n3.nabble.com/Time-Series-Data-with-complex-domain-model-tp3509252p3509252.html
 Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
 ___
 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


Re: [Neo4j] Neo4j upcoming features importance poll

2011-11-22 Thread Pablo Pareja
Thank you all for participating and give your votes to the options you feel
are more important.
For sure it'd be great to have another platform to do this that could be
somehow integrated with GitHub, ( I just created the poll with doodle
because it was the one I found after a quick google search which could fit
the needs at some level...)

@Peter yeah I think he'll be :D

Cheers,

Pablo

On Tue, Nov 22, 2011 at 3:51 PM, Peter Neubauer 
peter.neuba...@neotechnology.com wrote:

 Uservoice seems great. If rapportive uses it,
 http://feedback.rapportive.com/forums/42557-general then it is good in
 my book. I think we should try it if we can integrate this with GIThub
 issues.

 Pablo, impressive feedback on http://www.doodle.com/wg8k77vwq6b654bv !
 I think Mattias will be delighted that the supernode support is on top
 ;)

 Cheers,

 /peter neubauer

 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  - NOSQL for the Enterprise.
 http://startupbootcamp.org/- Öresund - Innovation happens HERE.



 On Sat, Nov 19, 2011 at 9:29 PM, Peter Bell li...@pbell.com wrote:
  Uservoice might be a good fit. I used it for feature voting on as OSS
 project and it worked out pretty well...
 
  Sent from my iPhone
 
  On Nov 19, 2011, at 2:11 PM, Nigel Small ni...@nigelsmall.name wrote:
 
  Actually sounds like we may have finally found a use for Google Wave!
 :-P
 
  On 19 Nov 2011 13:09, Pablo Pareja ppar...@era7.com wrote:
 
  Yeah it'd be great having something more wiki-like that everyone could
  edit.
  I have no idea though about how could this be done
  Any ideas?
 
  Pablo
 
  On Sat, Nov 19, 2011 at 7:54 PM, Nigel Small ni...@nigelsmall.name
  wrote:
 
  How about something like Wufoo?
 
  http://www.wufoo.com/
  http://www.wufoo.com/
 
  *Nigel Small*
  Phone: +44 7814 638 246
  Blog: http://nigelsmall.name/
  GTalk: ni...@nigelsmall.name
  MSN: nasm...@live.co.uk
  Skype: technige
  Twitter: @technige https://twitter.com/#!/technige
  LinkedIn: http://uk.linkedin.com/in/nigelsmall
 
 
 
  On 19 November 2011 18:45, Peter Neubauer
  peter.neuba...@neotechnology.comwrote:
 
  I really like this. Is there any other transparent public method you
  poll,
  like a Google form that everyone can edit?
  On Nov 19, 2011 7:19 PM, Pablo Pareja ppar...@era7.com wrote:
 
  I just added a link for every possible upcoming feature and created
  an
  issue for those which didn't have one so far.
 
  Sorry for those who voted already but since the options changed,
  their
  vote
  was lost, could you please vote again?
  From now on every time we add a new feature to the poll we should
  create
  its respective issue before adding it.
  At least, whenever a new option is added, the votes for the rest of
  options
  are conserved, so we should be able update our votes just adding our
  vote
  (or not) to the new ones.
  Sorry for the inconvenience!
 
  Pablo
 
  On Sat, Nov 19, 2011 at 5:21 PM, Pablo Pareja ppar...@era7.com
  wrote:
 
  Ok, I just did that for the first one; the bad thing about this is
  that
  every time I edit one of the options, all the votes cast for it get
  lost
  and you have to edit your vote again...
  So maybe from now on I'd be better adding new features to the poll
  only
  once their respective issues has been risen in github.
  What do you think?
 
  Pablo
 
 
  On Sat, Nov 19, 2011 at 5:16 PM, Pablo Pareja ppar...@era7.com
  wrote:
 
  Yeah that'd be cool, if you give me the links I can put them as
  part
  of
  the options themselves (with bit.ly or something like that).
  Cheers,
 
  Pablo
 
 
  On Sat, Nov 19, 2011 at 1:30 PM, Peter Neubauer 
  peter.neuba...@neotechnology.com wrote:
 
  Guys,
  This is great! Could you raise issues for these and we mitigate
  missing
  voting on Github with this, linking back to github for
  discussion?
  On Nov 19, 2011 1:09 PM, Pablo Pareja ppar...@era7.com
  wrote:
 
  @Linan get_or_create feature added ;)
  @Mattias I mean being required to specify a node type at
  creation
  time, (as
  how things are right now with relationships)
 
  On Sat, Nov 19, 2011 at 1:01 PM, Mattias Persson
  matt...@neotechnology.comwrote:
 
  hat exactly does mandatory node types mean?
 
  2011/11/19 Pablo Pareja ppar...@era7.com
 
  Hi all,
 
  I was thinking it'd be cool to create a sort of a poll in
  order
  to
  know
  which features (that are missing right now...) are the most
  important
  ones
  for the community. I just did a quick google search for
  free
  online
  poll
  creation platforms and found doodle site, (btw do you know
  a
  better
  site
  to
  do this?).
  The address for the poll is:
  http://www.doodle.com/wg8k77vwq6b654bv
  So far I just added three features that came to my mind
  while I
  was
  creating it, so please say which features you're missing
  and
  I'll
  add
  them
  so 

Re: [Neo4j] Neo4j Spatial build / run problems

2011-11-22 Thread danielb
Hi Peter,

How do I add the Spatial plugin? I only have Cypher and Gremlin as server
extensions installed. I unzip Neo4j spatial into the plugins folder and then
send the JSON via curl to the database. But he can't find any of the needed
classes. Which files do I need from the spatial project and where are they
copied to the server exactly?

Regards, Daniel

--
View this message in context: 
http://neo4j-community-discussions.438527.n3.nabble.com/Neo4j-Spatial-build-run-problems-tp3515519p3528052.html
Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] Neo4j Spatial build / run problems

2011-11-22 Thread Peter Neubauer
Daniel,
just updated the installation instruction in
https://github.com/neo4j/spatial, look under Using the Neo4j Spatial
Server plugin. Does that help?

Cheers,

/peter neubauer

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              - NOSQL for the Enterprise.
http://startupbootcamp.org/    - Öresund - Innovation happens HERE.



On Tue, Nov 22, 2011 at 4:35 PM, danielb danielbercht...@gmail.com wrote:
 Hi Peter,

 How do I add the Spatial plugin? I only have Cypher and Gremlin as server
 extensions installed. I unzip Neo4j spatial into the plugins folder and then
 send the JSON via curl to the database. But he can't find any of the needed
 classes. Which files do I need from the spatial project and where are they
 copied to the server exactly?

 Regards, Daniel

 --
 View this message in context: 
 http://neo4j-community-discussions.438527.n3.nabble.com/Neo4j-Spatial-build-run-problems-tp3515519p3528052.html
 Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
 ___
 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] Cypher query question

2011-11-22 Thread Vinicius Carvalho
Hi there, really beginner query, almost ashamed :)

Is it possible to filter the results to skip the start node?

For example, using the koans dataset, find the enemy of my enemy (should be
my friends :) )

START n=node(1)
MATCH (n)-[:ENEMY_OF]-(x)-[:ENEMY_OF]-(z)
return distinct z

I understand that The doctor node 1, should appear as it is indeed an
enemy of one of his enemies, but is it possible to filter?

Regards
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] Cypher query question

2011-11-22 Thread Tero Paananen
 Is it possible to filter the results to skip the start node?

 For example, using the koans dataset, find the enemy of my enemy (should be
 my friends :) )

 START n=node(1)
 MATCH (n)-[:ENEMY_OF]-(x)-[:ENEMY_OF]-(z)
 return distinct z

 I understand that The doctor node 1, should appear as it is indeed an
 enemy of one of his enemies, but is it possible to filter?

This may or may not be the best way to do this, but I have this sort
of stuff in some of my queries for the same purpose:

... WHERE ID(n) != ID(z) ...

-TPP
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] Cypher query question

2011-11-22 Thread Vinicius Carvalho
That works nice :)

Tks

On Tue, Nov 22, 2011 at 4:21 PM, Tero Paananen tpp.paana...@gmail.comwrote:

  Is it possible to filter the results to skip the start node?
 
  For example, using the koans dataset, find the enemy of my enemy (should
 be
  my friends :) )
 
  START n=node(1)
  MATCH (n)-[:ENEMY_OF]-(x)-[:ENEMY_OF]-(z)
  return distinct z
 
  I understand that The doctor node 1, should appear as it is indeed an
  enemy of one of his enemies, but is it possible to filter?

 This may or may not be the best way to do this, but I have this sort
 of stuff in some of my queries for the same purpose:

 ... WHERE ID(n) != ID(z) ...

 -TPP
 ___
 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


Re: [Neo4j] Neo4j upcoming features importance poll

2011-11-22 Thread Niels Hoogeveen

I noticed work on supernodes being committed to GitHub. Looking forward seeing 
this and in 1.6-SNAPSHOT. I would like to test this sooner rather than later. 
The node#getDegree methods are a great addition.
Niels

 From: peter.neuba...@neotechnology.com
 Date: Tue, 22 Nov 2011 15:51:15 +0100
 To: user@lists.neo4j.org
 Subject: Re: [Neo4j] Neo4j upcoming features importance poll
 
 Uservoice seems great. If rapportive uses it,
 http://feedback.rapportive.com/forums/42557-general then it is good in
 my book. I think we should try it if we can integrate this with GIThub
 issues.
 
 Pablo, impressive feedback on http://www.doodle.com/wg8k77vwq6b654bv !
 I think Mattias will be delighted that the supernode support is on top
 ;)
 
 Cheers,
 
 /peter neubauer
 
 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  - NOSQL for the Enterprise.
 http://startupbootcamp.org/- Öresund - Innovation happens HERE.
 
 
 
 On Sat, Nov 19, 2011 at 9:29 PM, Peter Bell li...@pbell.com wrote:
  Uservoice might be a good fit. I used it for feature voting on as OSS 
  project and it worked out pretty well...
 
  Sent from my iPhone
 
  On Nov 19, 2011, at 2:11 PM, Nigel Small ni...@nigelsmall.name wrote:
 
  Actually sounds like we may have finally found a use for Google Wave! :-P
 
  On 19 Nov 2011 13:09, Pablo Pareja ppar...@era7.com wrote:
 
  Yeah it'd be great having something more wiki-like that everyone could
  edit.
  I have no idea though about how could this be done
  Any ideas?
 
  Pablo
 
  On Sat, Nov 19, 2011 at 7:54 PM, Nigel Small ni...@nigelsmall.name
  wrote:
 
  How about something like Wufoo?
 
  http://www.wufoo.com/
  http://www.wufoo.com/
 
  *Nigel Small*
  Phone: +44 7814 638 246
  Blog: http://nigelsmall.name/
  GTalk: ni...@nigelsmall.name
  MSN: nasm...@live.co.uk
  Skype: technige
  Twitter: @technige https://twitter.com/#!/technige
  LinkedIn: http://uk.linkedin.com/in/nigelsmall
 
 
 
  On 19 November 2011 18:45, Peter Neubauer
  peter.neuba...@neotechnology.comwrote:
 
  I really like this. Is there any other transparent public method you
  poll,
  like a Google form that everyone can edit?
  On Nov 19, 2011 7:19 PM, Pablo Pareja ppar...@era7.com wrote:
 
  I just added a link for every possible upcoming feature and created
  an
  issue for those which didn't have one so far.
 
  Sorry for those who voted already but since the options changed,
  their
  vote
  was lost, could you please vote again?
  From now on every time we add a new feature to the poll we should
  create
  its respective issue before adding it.
  At least, whenever a new option is added, the votes for the rest of
  options
  are conserved, so we should be able update our votes just adding our
  vote
  (or not) to the new ones.
  Sorry for the inconvenience!
 
  Pablo
 
  On Sat, Nov 19, 2011 at 5:21 PM, Pablo Pareja ppar...@era7.com
  wrote:
 
  Ok, I just did that for the first one; the bad thing about this is
  that
  every time I edit one of the options, all the votes cast for it get
  lost
  and you have to edit your vote again...
  So maybe from now on I'd be better adding new features to the poll
  only
  once their respective issues has been risen in github.
  What do you think?
 
  Pablo
 
 
  On Sat, Nov 19, 2011 at 5:16 PM, Pablo Pareja ppar...@era7.com
  wrote:
 
  Yeah that'd be cool, if you give me the links I can put them as
  part
  of
  the options themselves (with bit.ly or something like that).
  Cheers,
 
  Pablo
 
 
  On Sat, Nov 19, 2011 at 1:30 PM, Peter Neubauer 
  peter.neuba...@neotechnology.com wrote:
 
  Guys,
  This is great! Could you raise issues for these and we mitigate
  missing
  voting on Github with this, linking back to github for
  discussion?
  On Nov 19, 2011 1:09 PM, Pablo Pareja ppar...@era7.com
  wrote:
 
  @Linan get_or_create feature added ;)
  @Mattias I mean being required to specify a node type at
  creation
  time, (as
  how things are right now with relationships)
 
  On Sat, Nov 19, 2011 at 1:01 PM, Mattias Persson
  matt...@neotechnology.comwrote:
 
  hat exactly does mandatory node types mean?
 
  2011/11/19 Pablo Pareja ppar...@era7.com
 
  Hi all,
 
  I was thinking it'd be cool to create a sort of a poll in
  order
  to
  know
  which features (that are missing right now...) are the most
  important
  ones
  for the community. I just did a quick google search for
  free
  online
  poll
  creation platforms and found doodle site, (btw do you know
  a
  better
  site
  to
  do this?).
  The address for the poll is:
  http://www.doodle.com/wg8k77vwq6b654bv
  So far I just added three features that came to my mind
  while I
  was
  creating it, so please say which features you're missing
  and
  I'll
  add
  them
  so that we can all vote for them or not.
  What do you think about all this?
  Cheers,
 
  

Re: [Neo4j] Neo4j Spatial build / run problems

2011-11-22 Thread danielb
Hi Peter,

I could now register the spatial index 'geom' to my database (I was missing
the zip file) - thanks so far.

cypher start n=node:geom('bbox:[10.0020654, 10.0020654, 48.4126496,
48.4126496]') 
cypher return n
cypher 
== +---+
== | n |
== +---+
== +---+
== 0 rows, 24 ms

So zero results for this query. Maybe that node is not indexed by 'geom'?
How can I check to which nodes the spatial index has been applied?

Regards, Daniel

--
View this message in context: 
http://neo4j-community-discussions.438527.n3.nabble.com/Neo4j-Spatial-build-run-problems-tp3515519p3528225.html
Sent from the Neo4j Community Discussions mailing list archive at Nabble.com.
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] Neo4j Spatial build / run problems

2011-11-22 Thread Peter Neubauer
Could you get me the full curl script to recreate?

/peter

Sent from my phone, please excuse typos and autocorrection.
On Nov 22, 2011 5:35 PM, danielb danielbercht...@gmail.com wrote:

 Hi Peter,

 I could now register the spatial index 'geom' to my database (I was missing
 the zip file) - thanks so far.

 cypher start n=node:geom('bbox:[10.0020654, 10.0020654, 48.4126496,
 48.4126496]')
 cypher return n
 cypher
 == +---+
 == | n |
 == +---+
 == +---+
 == 0 rows, 24 ms

 So zero results for this query. Maybe that node is not indexed by 'geom'?
 How can I check to which nodes the spatial index has been applied?

 Regards, Daniel

 --
 View this message in context:
 http://neo4j-community-discussions.438527.n3.nabble.com/Neo4j-Spatial-build-run-problems-tp3515519p3528225.html
 Sent from the Neo4j Community Discussions mailing list archive at
 Nabble.com.
 ___
 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


Re: [Neo4j] Cypher query question

2011-11-22 Thread Peter Neubauer
Mmh,
if you have two different bound variables n and z, shouldn't n
automagically be different from z? Got a test case for this where n=z?

Cheers,

/peter neubauer

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              - NOSQL for the Enterprise.
http://startupbootcamp.org/    - Öresund - Innovation happens HERE.



On Tue, Nov 22, 2011 at 5:16 PM, Vinicius Carvalho
java.vinic...@gmail.com wrote:
 Hi there, really beginner query, almost ashamed :)

 Is it possible to filter the results to skip the start node?

 For example, using the koans dataset, find the enemy of my enemy (should be
 my friends :) )

 START n=node(1)
 MATCH (n)-[:ENEMY_OF]-(x)-[:ENEMY_OF]-(z)
 return distinct z

 I understand that The doctor node 1, should appear as it is indeed an
 enemy of one of his enemies, but is it possible to filter?

 Regards
 ___
 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


Re: [Neo4j] Cypher query question

2011-11-22 Thread Andres Taylor
On Tue, Nov 22, 2011 at 6:21 PM, Peter Neubauer 
peter.neuba...@neotechnology.com wrote:

 Mmh,
 if you have two different bound variables n and z, shouldn't n
 automagically be different from z? Got a test case for this where n=z?


Yeah, you're right. I wouldn't expect to have the same node in two
identifiers - the pattern matcher excludes patterns like that. If it really
is in two identifiers, you've found a bug.

Andrés
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


[Neo4j] Cypher identifier uniqueness

2011-11-22 Thread Andres Taylor
A recent thread prompted me to think about this again.

Today, Cypher guarantees that no two points in the matching pattern will
contain the same node or relationship. Given the pattern (a)--(b), in no
matched subgraph will a and b contain the same node.
The only exception to this is for variable length paths. Given the path p =
(a)-[*1..6]-(b)--c, the node that is in c *might* also be one of the
nodes between a and b.

I don't think there was an explicit decision to have it like this, and now
I questioning this behavior.
Does anyone have any opinions on the matter? Maybe the best solution is to
be able to specify which uniqueness to use?

WDYT?

Andrés
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


Re: [Neo4j] Cypher identifier uniqueness

2011-11-22 Thread Peter Neubauer
+1 on some uniqueness indication. However, I am not sure how to handle
UNIQUENESS_NONE and the potential cycles that will arise ...

Cheers,

/peter neubauer

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              - NOSQL for the Enterprise.
http://startupbootcamp.org/    - Öresund - Innovation happens HERE.



On Tue, Nov 22, 2011 at 7:05 PM, Andres Taylor
andres.tay...@neotechnology.com wrote:
 A recent thread prompted me to think about this again.

 Today, Cypher guarantees that no two points in the matching pattern will
 contain the same node or relationship. Given the pattern (a)--(b), in no
 matched subgraph will a and b contain the same node.
 The only exception to this is for variable length paths. Given the path p =
 (a)-[*1..6]-(b)--c, the node that is in c *might* also be one of the
 nodes between a and b.

 I don't think there was an explicit decision to have it like this, and now
 I questioning this behavior.
 Does anyone have any opinions on the matter? Maybe the best solution is to
 be able to specify which uniqueness to use?

 WDYT?

 Andrés
 ___
 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] py2neo - GEOFF enhancements

2011-11-22 Thread Nigel Small
Hi all

I have just completed a set of GEOFF enhancements within py2neo (as yet
only available from GitHub). Named parameters (hooks) and composite
descriptors are now supported, please see the following sample file for an
illustration of the new capabilites:

https://github.com/nigelsmall/py2neo/blob/master/src/py2neo-examples/geoff/node-hooks.geoff

In addition, a change has been made for index entries to use |foo| syntax
instead of {foo} syntax as previously (although the old syntax will still
work for now).

Finally, there is a new wiki page detailing the current format in full:

https://github.com/nigelsmall/py2neo/wiki/GEOFF

I will now start planning the set of work required for the neo4j-geoff
project to bring that up to the same level.

Cheers

Nige

*Nigel Small*
Phone: +44 7814 638 246
Blog: http://nigelsmall.name/
GTalk: ni...@nigelsmall.name
MSN: nasm...@live.co.uk
Skype: technige
Twitter: @technige https://twitter.com/#!/technige
LinkedIn: http://uk.linkedin.com/in/nigelsmall
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user