Re: [Neo4j] InvalidRecordException during traversal after unclean shutdown
The data isn't sensitive at all, I'll send it to you in a minute... Which version of Neo4j have you been using? [INFO] \- org.neo4j:neo4j:jar:1.2:compile [INFO]+- org.neo4j:neo4j-kernel:jar:1.2-1.2:compile [INFO]| \- org.apache.geronimo.specs:geronimo-jta_1.1_spec:jar:1.1.1:compile [INFO]+- org.neo4j:neo4j-index:jar:1.2-1.2:compile [INFO]| \- org.apache.servicemix.bundles:org.apache.servicemix.bundles.lucene:jar:3.0.1_2:compile [INFO]+- org.neo4j:neo4j-lucene-index:jar:0.2-1.2:compile [INFO]+- org.neo4j:neo4j-shell:jar:1.2-1.2:compile [INFO]| \- org.apache.servicemix.bundles:org.apache.servicemix.bundles.jline:jar:0.9.94_1:compile [INFO]+- org.neo4j:neo4j-remote-graphdb:jar:0.8-1.2:compile [INFO]| \- com.google.protobuf:protobuf-java:jar:2.3.0:compile [INFO]+- org.neo4j:neo4j-graph-algo:jar:0.7-1.2:compile [INFO]+- org.neo4j:neo4j-online-backup:jar:0.7-1.2:compile [INFO]+- org.neo4j:neo4j-udc:jar:0.1-1.2:compile [INFO]+- org.neo4j:neo4j-management:jar:1.2-1.2:compile [INFO]| \- com.sun:tools:jar:1.6:system [INFO]\- org.neo4j:neo4j-ha:jar:0.5-1.2:compile [INFO] +- org.apache.zookeeper:zookeeper:jar:3.3.2:compile [INFO] +- org.jboss.netty:netty:jar:3.2.1.Final:compile [INFO] \- log4j:log4j:jar:1.2.16:compile * What operating system are you running on? I'm using vmware workstation, the neo-stuff is coded inside an image.. host: ubuntu 9.10 vmware workstation 7.10 guest ubuntu 9.10 * What file system were you storing the Neo4j store on? ext4 on both guest host * How was that file system configured? standard ubuntu config * Which JVM and version were you using? java version 1.6.0_22 Java(TM) SE Runtime Environment (build 1.6.0_22-b04) Java HotSpot(TM) Server VM (build 17.1-b03, mixed mode) Lars Hvile Fra: user-boun...@lists.neo4j.org [user-boun...@lists.neo4j.org] p#229; vegne av Tobias Ivarsson [tobias.ivars...@neotechnology.com] Sendt: 1. februar 2011 23:17 Til: Neo4j user discussions Emne: Re: [Neo4j] InvalidRecordException during traversal after unclean shutdown I don't like the sound of this. The thread you dug up is the only other case (I know of) where there has been anything similar, so I would love to have a look at any data you have. If you could zip up the store files and send them to us in some way we will investigate. It would of course had been better if we could have received the store in the state it was before recovery was started, but how would you know this was going to happen. We will have to make do with the closest thing we've got. Uploading a zip to dropbox (or similar) and sending the link to me off-list usually works well. I promise you we will treat your data according to the levels of confidentiality you request, if you feel your data is too sensitive for dropbox transfer, contact me and I'll see what alternative mode of encrypted transfer we can set up. By the way, could you please provide some details on your database: * Which version of Neo4j have you been using? * What operating system are you running on? * What file system were you storing the Neo4j store on? * How was that file system configured? * Which JVM and version were you using? Cheers, Tobias On Tue, Feb 1, 2011 at 10:26 PM, Lars Hvile lars.hv...@fovea.no wrote: Correct, not using the batch-inserter, just a regular loop with transactions inserts + adding data to a lucene-index. Each transaction contained ~500 nodes, and the total count was about ~3M when it got corrupted.. I did unclean shutdowns a bunch of times without any corruption, so this isn't exactly reproducible either. Is there any way to manually clean up these kinds of errors? Like reverting the last transaction or something like that? Regards, Lars Hvile Fra: user-boun...@lists.neo4j.org [user-boun...@lists.neo4j.org] p#229; vegne av Tobias Ivarsson [tobias.ivars...@neotechnology.com] Sendt: 1. februar 2011 22:04 Til: Neo4j user discussions Emne: Re: [Neo4j] InvalidRecordException during traversal after unclean shutdown And this was not using the batchinsert either? Because batchinsert will most likely leave the data corrupt if not shut down cleanly. Just want to make sure, by covering the simplest things first. -tobias On Tue, Feb 1, 2011 at 7:12 PM, Lars Hvile lars.hv...@fovea.no wrote: This exact error has already been discussed on the mailinglist back in 2009 (http://lists.neo4j.org/pipermail/user/2009-November/001906.html), but without a conclusion? During some inserts, I did an unclean shutdown. When I restarted neo, the standard recovery stuff was logged, and it said that recovery was successful, but my data is corrupt, and I can't find a way to restore it. (this is just test-data, so the actual data is a non-issue, however the recovery process is a huge issue for us...) Our basic test-structure is a tree,
[Neo4j] Neo4j web admin connection error
I've just installed Neo4j on Debian Lenny and I'm trying to expose the Web Admin on a sub-domain via Apache2 proxypass. Web Admin is served but I'm getting a Unknown connection problem message. Do you have any suggestions to resolve this? What error logs or configuration files should I be checking to see whats going wrong? My settings are: ProxyRequests Off Proxy * AddDefaultCharset off Order deny,allow Deny from all Allow from all /Proxy ProxyVia On VirtualHost *:80 ServerName graph.example.com ProxyPass / http://localhost:7474/ ProxyPassReverse / http://localhost:7474/ /VirtualHost I'm not sure if it's helpful but the url has localhost in it like this: http://graph.example.com/webadmin/#p=dashboards=http%3A//localhost%3A7474/db/manage/ Thanks ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Neo4j web admin connection error
Eddy, are you connecting from anything other than localhost? In that case, you need to set up the server to serve with the external name, otherwise the webadmin will try to connect to localhost which is the machine you are viewing from. Look at http://docs.neo4j.org/chunked/snapshot/server-configuration.html and set the org.neo4j.server.webadmin.data.uri and org.neo4j.server.webadmin.management.uri to the explicit URIs of your server. Does that help? I will adjust the docs to point this out more clearly. 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 - Your high performance graph database. http://www.thoughtmade.com - Scandinavia's coolest Bring-a-Thing party. On Wed, Feb 2, 2011 at 9:28 AM, Eddy Respondek eddy.respon...@gmail.com wrote: I've just installed Neo4j on Debian Lenny and I'm trying to expose the Web Admin on a sub-domain via Apache2 proxypass. Web Admin is served but I'm getting a Unknown connection problem message. Do you have any suggestions to resolve this? What error logs or configuration files should I be checking to see whats going wrong? My settings are: ProxyRequests Off Proxy * AddDefaultCharset off Order deny,allow Deny from all Allow from all /Proxy ProxyVia On VirtualHost *:80 ServerName graph.example.com ProxyPass / http://localhost:7474/ ProxyPassReverse / http://localhost:7474/ /VirtualHost I'm not sure if it's helpful but the url has localhost in it like this: http://graph.example.com/webadmin/#p=dashboards=http%3A//localhost%3A7474/db/manage/ Thanks ___ 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] Shortest Path Query with property filters
Shae, as always, when you do performance tests, make sure you are not running only one run, since then you have cold caches. Do a couple of runs without closing the DB, and you might get totally different results, since then the object caches have a chance to warm up, and it mirrors the production scenario much more closely. 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 - Your high performance graph database. http://www.thoughtmade.com - Scandinavia's coolest Bring-a-Thing party. On Wed, Feb 2, 2011 at 2:04 AM, GRIFFITHS, Shae shae.griffi...@baesystems.com wrote: Thanks Michael, I was looking at predicates and thought I saw that they were deprecated (replaced by evaluators?), but maybe it was just late and I misread it! I'll try to get that working today. I'm loving Neo4j so far, there's nothing it can't do! :P For the shortest path stuff it is fairly quick, I'm actually running a performance test as we speak (1000 random start nodes each finding a shortest path to 1000 random end nodes - with some pre-processing to tell if they're connected or not) and so far, the worst case has been 8 seconds, and the average is around 150ms-200ms I think, I'll post when the results come back and I've got some statistics. Shae -Original Message- From: user-boun...@lists.neo4j.org [mailto:user-boun...@lists.neo4j.org] On Behalf Of Michael Hunger Sent: Wednesday, 2 February 2011 11:27 AM To: Neo4j user discussions Subject: Re: [Neo4j] Shortest Path Query with property filters Hi Shae, the shortesPath algo takes a RelationshipExpander which is implemented by a Expander subclass. For each Expander you can addNodeFilter and addRelationshipFilters using Predicates. That should do what you try to achieve. If I got this wrong, please someone correct me. What is your current performance for the shortest path between the relevant nodes? Cheers Michael Am 02.02.2011 um 01:45 schrieb Shae Griffiths: Hi Team, I'm a bit of a Neo4j Newbie and am trying to use it for some shortest path work. I have an embedded DB and am using Java to interact with it. At the moment I have shortest path stuff working (using GraphAlgoFactory.shortestPath as per the sample code), but i would like to extend this to make a few decisions along its route. eg. find a shortest path from Node A to Node B, but avoiding all nodes that have a specific property value (i.e. Find a relationship from Roger Black to Peter White without going through anyone with the surname smith) or find the shortest path from Node A to Node B without encountering a specific node. I see this as essentially the same problem, just with a different parameter. The Evaluator class seems to have the brains to work it out, but i'm lost as to how to implement it with the shortest path algorithm. Its a large-ish DB (~14million nodes) so i'd like it to be a relatively fast solution if there's one around. Am I barking up the wrong tree, has this been covered already and I missed it, or am i on the right track but not quite there? -- View this message in context: http://neo4j-user-list.438527.n3.nabble.com/Shortest-Path-Query-with-property-filters-tp2402322p2402322.html Sent from the Neo4J User List 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 Warning: The information contained in this email and any attached files is confidential to BAE Systems Australia. If you are not the intended recipient, any use, disclosure or copying of this email or any attachments is expressly prohibited. If you have received this email in error, please notify us immediately. VIRUS: Every care has been taken to ensure this email and its attachments are virus free, however, any loss or damage incurred in using this email is not the sender's responsibility. It is your responsibility to ensure virus checks are completed before installing any data sent in this email to your computer. ___ 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] Difference between properties and nodes
Hi Tim, In what aspect? performance, or semantics? Could you supply a little more context, please... 2011/1/31 Tim McNamara paperl...@timmcnamara.co.nz Is there much difference between a creating property and creating a child node? Tim ___ 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] Neo4j web admin connection error
That didn't work. I tried a couple different combination until I found the error log. There is a line saying that it can't find neo4j.properties which might be causing the problem? DEBUG WrapperSimpleAppMain org.apache.commons.configuration.ConfigurationUtils - ConfigurationUtils.locate(): base is /usr/bin/neo4j-1.3.M01/conf, name is neo4j-server.pr$ DEBUG WrapperSimpleAppMain org.apache.commons.configuration.ConfigurationUtils - Loading configuration from the path /usr/bin/neo4j-1.3.M01/conf/neo4j-server.properties WARN WrapperSimpleAppMain org.neo4j.server.configuration.Configurator - The specified file for database performance tuning properties [neo4j.properties] does not exist. INFO WrapperSimpleAppMain org.neo4j.server.database.Database - Creating database at /usr/bin/neo4j-1.3.M01/../data/graph.db WARN WrapperSimpleAppMain org.neo4j.server.database.Database - No database tuning properties set in the property file, using defaults. Please specify the performance prop$ INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Starting Neo Server on port [7474] INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Mounting webadmin at [webadmin-html] INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Mounting management API at [http://localhost:7474/db/manage/] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Adding JAXRS package [org.neo4j.server.webadmin.rest] at [/db/manage] INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Mounting REST API at [http://localhost:7474/db/data/] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Adding JAXRS package [org.neo4j.server.rest.web] at [/db/data] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Adding Redirector at [/] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting static content at [/webadmin] from [webadmin-html] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Found [jar:file:/usr/bin/neo4j-1.3.M01/system/lib/neo4j-server-0.6-1.3.M01-static-web.jar!/webadmin-html] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting static content from [jar:file:/usr/bin/neo4j-1.3.M01/system/lib/neo4j-server-0.6-1.3.M01-static-$ INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting servlet at [/db/manage] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting servlet at [/db/data] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting servlet at [/] On Wed, Feb 2, 2011 at 4:27 PM, user-requ...@lists.neo4j.org wrote: Send User mailing list submissions to user@lists.neo4j.org To subscribe or unsubscribe via the World Wide Web, visit https://lists.neo4j.org/mailman/listinfo/user or, via email, send a message with subject or body 'help' to user-requ...@lists.neo4j.org You can reach the person managing the list at user-ow...@lists.neo4j.org When replying, please edit your Subject line so it is more specific than Re: Contents of User digest... Today's Topics: 1. Neo4j web admin connection error (Eddy Respondek) 2. Re: Neo4j web admin connection error (Peter Neubauer) 3. Re: Exact numeric indexing? (Mattias Persson) 4. Re: Shortest Path Query with property filters (Peter Neubauer) 5. Re: Neo4j 1.2 server on Linux X86 - 64 bit (Peter Neubauer) -- Message: 1 Date: Wed, 2 Feb 2011 15:28:55 +0700 From: Eddy Respondek eddy.respon...@gmail.com Subject: [Neo4j] Neo4j web admin connection error To: user@lists.neo4j.org Message-ID: aanlktin6cjpytgh34zgityszouexoqye+nzkxrjpd...@mail.gmail.comaanlktin6cjpytgh34zgityszouexoqye%2bnzkxrjpd...@mail.gmail.com Content-Type: text/plain; charset=UTF-8 I've just installed Neo4j on Debian Lenny and I'm trying to expose the Web Admin on a sub-domain via Apache2 proxypass. Web Admin is served but I'm getting a Unknown connection problem message. Do you have any suggestions to resolve this? What error logs or configuration files should I be checking to see whats going wrong? My settings are: ProxyRequests Off Proxy * AddDefaultCharset off Order deny,allow Deny from all Allow from all /Proxy ProxyVia On VirtualHost *:80 ServerName graph.example.com ProxyPass / http://localhost:7474/ ProxyPassReverse / http://localhost:7474/ /VirtualHost I'm not sure if it's helpful but the url has localhost in it like this: http://graph.example.com/webadmin/#p=dashboards=http%3A//localhost%3A7474/db/manage/ Thanks -- Message: 2 Date: Wed, 2 Feb 2011 10:01:26 +0100 From: Peter Neubauer peter.neuba...@neotechnology.com Subject: Re: [Neo4j] Neo4j web admin connection error To: Neo4j user discussions user@lists.neo4j.org Message-ID: AANLkTi=-C=_ovsarp-ho7qjwtlvjo-k3gp4u4+ks7...@mail.gmail.comovsarp-ho7qjwtlvjo-k3gp4u4%2bks7...@mail.gmail.com Content-Type:
Re: [Neo4j] Lucene index commit rate and NoSuchElementException
On Tue, Feb 1, 2011 at 10:19 PM, Tobias Ivarsson tobias.ivars...@neotechnology.com wrote: For getting a performance boost out of writes, doing multiple operations in one transaction will give a much bigger gain than multiple threads though. For your use case, I think two writer threads and a few hundred elements per transaction is an appropriate size. I got some numbers. On a base of 10 rounds of 10 rows each I got an average of 111.1811 sec to crunch a chunk of data, so it means that it would take 1.111811 ms to process a single row. A single file of data contains data for a single day and has an average of 250 rows so it would take approximately 46 minutes to crunch. The final db size is 588034K (574M) which has 100 rows so we can estimate that the final DB size would be 132307650K (126G). The current SQL DB is 60G and the app takes 4 and 1/2 hours to crunch a month of logs, identical machine. The test has been conducted starting from an empty db and the progress of chunk time is this one: 80307 ms, 83444 ms, 97162 ms, 131703 ms, 134647 ms, 104602 ms, 115944 ms, 112489 ms, 115660 ms, 135853 ms. There are 20 threads (default config) and they're processing 200 rows each within a single Transaction. The JVM is: OpenJDK Runtime Environment (build 1.6.0-b20) and was started with this options: -Djava.awt.headless=true -Xms40m -Xmx1536m -XX:+UseConcMarkSweepGC And ... What do you think? Thanks for any info you could give -- Massimo http://meridio.blogspot.com ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Neo4j web admin connection error
Does the file /usr/bin/neo4j-1.3.M01/conf/neo4j-server.properties exist? Either way, I think Michael Hunger has solved this problem all-together, I just need to merge his changes into the main server branch. I'll be digging in to that after lunch today. Will keep you posted! /Jacob On Wed, Feb 2, 2011 at 12:12 PM, Eddy Respondek eddy.respon...@gmail.comwrote: That didn't work. I tried a couple different combination until I found the error log. There is a line saying that it can't find neo4j.properties which might be causing the problem? DEBUG WrapperSimpleAppMain org.apache.commons.configuration.ConfigurationUtils - ConfigurationUtils.locate(): base is /usr/bin/neo4j-1.3.M01/conf, name is neo4j-server.pr$ DEBUG WrapperSimpleAppMain org.apache.commons.configuration.ConfigurationUtils - Loading configuration from the path /usr/bin/neo4j-1.3.M01/conf/neo4j-server.properties WARN WrapperSimpleAppMain org.neo4j.server.configuration.Configurator - The specified file for database performance tuning properties [neo4j.properties] does not exist. INFO WrapperSimpleAppMain org.neo4j.server.database.Database - Creating database at /usr/bin/neo4j-1.3.M01/../data/graph.db WARN WrapperSimpleAppMain org.neo4j.server.database.Database - No database tuning properties set in the property file, using defaults. Please specify the performance prop$ INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Starting Neo Server on port [7474] INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Mounting webadmin at [webadmin-html] INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Mounting management API at [http://localhost:7474/db/manage/] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Adding JAXRS package [org.neo4j.server.webadmin.rest] at [/db/manage] INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Mounting REST API at [http://localhost:7474/db/data/] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Adding JAXRS package [org.neo4j.server.rest.web] at [/db/data] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Adding Redirector at [/] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting static content at [/webadmin] from [webadmin-html] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Found [jar:file:/usr/bin/neo4j-1.3.M01/system/lib/neo4j-server-0.6-1.3.M01-static-web.jar!/webadmin-html] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting static content from [jar:file:/usr/bin/neo4j-1.3.M01/system/lib/neo4j-server-0.6-1.3.M01-static-$ INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting servlet at [/db/manage] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting servlet at [/db/data] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting servlet at [/] On Wed, Feb 2, 2011 at 4:27 PM, user-requ...@lists.neo4j.org wrote: Send User mailing list submissions to user@lists.neo4j.org To subscribe or unsubscribe via the World Wide Web, visit https://lists.neo4j.org/mailman/listinfo/user or, via email, send a message with subject or body 'help' to user-requ...@lists.neo4j.org You can reach the person managing the list at user-ow...@lists.neo4j.org When replying, please edit your Subject line so it is more specific than Re: Contents of User digest... Today's Topics: 1. Neo4j web admin connection error (Eddy Respondek) 2. Re: Neo4j web admin connection error (Peter Neubauer) 3. Re: Exact numeric indexing? (Mattias Persson) 4. Re: Shortest Path Query with property filters (Peter Neubauer) 5. Re: Neo4j 1.2 server on Linux X86 - 64 bit (Peter Neubauer) -- Message: 1 Date: Wed, 2 Feb 2011 15:28:55 +0700 From: Eddy Respondek eddy.respon...@gmail.com Subject: [Neo4j] Neo4j web admin connection error To: user@lists.neo4j.org Message-ID: aanlktin6cjpytgh34zgityszouexoqye+nzkxrjpd...@mail.gmail.comaanlktin6cjpytgh34zgityszouexoqye%2bnzkxrjpd...@mail.gmail.com aanlktin6cjpytgh34zgityszouexoqye%2bnzkxrjpd...@mail.gmail.comaanlktin6cjpytgh34zgityszouexoqye%252bnzkxrjpd...@mail.gmail.com Content-Type: text/plain; charset=UTF-8 I've just installed Neo4j on Debian Lenny and I'm trying to expose the Web Admin on a sub-domain via Apache2 proxypass. Web Admin is served but I'm getting a Unknown connection problem message. Do you have any suggestions to resolve this? What error logs or configuration files should I be checking to see whats going wrong? My settings are: ProxyRequests Off Proxy * AddDefaultCharset off Order deny,allow Deny from all Allow from all /Proxy ProxyVia On VirtualHost *:80 ServerName graph.example.com ProxyPass / http://localhost:7474/ ProxyPassReverse /
Re: [Neo4j] Neo4j web admin connection error
The file is definitely there. Is there are difference between the latest http copy and the svn? Eddy On Wed, Feb 2, 2011 at 6:29 PM, user-requ...@lists.neo4j.org wrote: Does the file /usr/bin/neo4j-1.3.M01/conf/neo4j-server.properties exist? Either way, I think Michael Hunger has solved this problem all-together, I just need to merge his changes into the main server branch. I'll be digging in to that after lunch today. Will keep you posted! /Jacob On Wed, Feb 2, 2011 at 12:12 PM, Eddy Respondek eddy.respon...@gmail.com wrote: That didn't work. I tried a couple different combination until I found the error log. There is a line saying that it can't find neo4j.properties which might be causing the problem? DEBUG WrapperSimpleAppMain org.apache.commons.configuration.ConfigurationUtils - ConfigurationUtils.locate(): base is /usr/bin/neo4j-1.3.M01/conf, name is neo4j-server.pr$ DEBUG WrapperSimpleAppMain org.apache.commons.configuration.ConfigurationUtils - Loading configuration from the path /usr/bin/neo4j-1.3.M01/conf/neo4j-server.properties WARN WrapperSimpleAppMain org.neo4j.server.configuration.Configurator - The specified file for database performance tuning properties [neo4j.properties] does not exist. INFO WrapperSimpleAppMain org.neo4j.server.database.Database - Creating database at /usr/bin/neo4j-1.3.M01/../data/graph.db WARN WrapperSimpleAppMain org.neo4j.server.database.Database - No database tuning properties set in the property file, using defaults. Please specify the performance prop$ INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Starting Neo Server on port [7474] INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Mounting webadmin at [webadmin-html] INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Mounting management API at [http://localhost:7474/db/manage/] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Adding JAXRS package [org.neo4j.server.webadmin.rest] at [/db/manage] INFO WrapperSimpleAppMain org.neo4j.server.NeoServer - Mounting REST API at [http://localhost:7474/db/data/] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Adding JAXRS package [org.neo4j.server.rest.web] at [/db/data] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Adding Redirector at [/] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting static content at [/webadmin] from [webadmin-html] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Found [jar:file:/usr/bin/neo4j-1.3.M01/system/lib/neo4j-server-0.6-1.3.M01-static-web.jar!/webadmin-html] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting static content from [jar:file:/usr/bin/neo4j-1.3.M01/system/lib/neo4j-server-0.6-1.3.M01-static-$ INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting servlet at [/db/manage] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting servlet at [/db/data] INFO WrapperSimpleAppMain org.neo4j.server.web.Jetty6WebServer - Mounting servlet at [/] On Wed, Feb 2, 2011 at 4:27 PM, user-requ...@lists.neo4j.org wrote: Send User mailing list submissions to user@lists.neo4j.org To subscribe or unsubscribe via the World Wide Web, visit https://lists.neo4j.org/mailman/listinfo/user or, via email, send a message with subject or body 'help' to user-requ...@lists.neo4j.org You can reach the person managing the list at user-ow...@lists.neo4j.org When replying, please edit your Subject line so it is more specific than Re: Contents of User digest... Today's Topics: 1. Neo4j web admin connection error (Eddy Respondek) 2. Re: Neo4j web admin connection error (Peter Neubauer) 3. Re: Exact numeric indexing? (Mattias Persson) 4. Re: Shortest Path Query with property filters (Peter Neubauer) 5. Re: Neo4j 1.2 server on Linux X86 - 64 bit (Peter Neubauer) -- Message: 1 Date: Wed, 2 Feb 2011 15:28:55 +0700 From: Eddy Respondek eddy.respon...@gmail.com Subject: [Neo4j] Neo4j web admin connection error To: user@lists.neo4j.org Message-ID: aanlktin6cjpytgh34zgityszouexoqye+nzkxrjpd...@mail.gmail.comaanlktin6cjpytgh34zgityszouexoqye%2bnzkxrjpd...@mail.gmail.com aanlktin6cjpytgh34zgityszouexoqye%2bnzkxrjpd...@mail.gmail.comaanlktin6cjpytgh34zgityszouexoqye%252bnzkxrjpd...@mail.gmail.com aanlktin6cjpytgh34zgityszouexoqye%2bnzkxrjpd...@mail.gmail.comaanlktin6cjpytgh34zgityszouexoqye%252bnzkxrjpd...@mail.gmail.com aanlktin6cjpytgh34zgityszouexoqye%252bnzkxrjpd...@mail.gmail.comaanlktin6cjpytgh34zgityszouexoqye%25252bnzkxrjpd...@mail.gmail.com Content-Type: text/plain; charset=UTF-8 I've just installed Neo4j on Debian Lenny and I'm
Re: [Neo4j] Lucene index commit rate and NoSuchElementException
More threads != faster You are doing I/O bound work. More then two threads is most likely just going to add overhead and make things slower! Also, I'm wondering, what does crunch mean in this context? Is it the write operations we have been talking about, or is it some other operation? I'm thinking that if it takes 45 minutes to insert a days worth of data, that is fast enough to do in real time. If Neo4j allows you to *process* that data faster and in new ways, then that would be gain enough, and probably warrant slightly longer insert times. -tobias On Wed, Feb 2, 2011 at 12:17 PM, Massimo Lusetti mluse...@gmail.com wrote: On Tue, Feb 1, 2011 at 10:19 PM, Tobias Ivarsson tobias.ivars...@neotechnology.com wrote: For getting a performance boost out of writes, doing multiple operations in one transaction will give a much bigger gain than multiple threads though. For your use case, I think two writer threads and a few hundred elements per transaction is an appropriate size. I got some numbers. On a base of 10 rounds of 10 rows each I got an average of 111.1811 sec to crunch a chunk of data, so it means that it would take 1.111811 ms to process a single row. A single file of data contains data for a single day and has an average of 250 rows so it would take approximately 46 minutes to crunch. The final db size is 588034K (574M) which has 100 rows so we can estimate that the final DB size would be 132307650K (126G). The current SQL DB is 60G and the app takes 4 and 1/2 hours to crunch a month of logs, identical machine. The test has been conducted starting from an empty db and the progress of chunk time is this one: 80307 ms, 83444 ms, 97162 ms, 131703 ms, 134647 ms, 104602 ms, 115944 ms, 112489 ms, 115660 ms, 135853 ms. There are 20 threads (default config) and they're processing 200 rows each within a single Transaction. The JVM is: OpenJDK Runtime Environment (build 1.6.0-b20) and was started with this options: -Djava.awt.headless=true -Xms40m -Xmx1536m -XX:+UseConcMarkSweepGC And ... What do you think? Thanks for any info you could give -- Massimo http://meridio.blogspot.com ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user -- Tobias Ivarsson tobias.ivars...@neotechnology.com Hacker, Neo Technology www.neotechnology.com Cellphone: +46 706 534857 ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
[Neo4j] Fetching Nodes from Graph Database(which was created earlier)
Hi, I am biginner to Neo4j and eager to learn more about it. I am aware of creating new Graph database with 1k to 10k nodes and relationship and was successfully traverse to specific nodes. But currently I am facing difficult to get node from existing graph DB and traverse to specific node in that DB. For creating new Graph DB I am using: GraphDatabaseService gDB = new EmbeddedGraphDatabase(target/db); So, if I have 10k nodes(with relationship) in Path: /NeoDB/store/db then how can I retrive nodes from this DB? Thanks for your help in advance, Karthik ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Fetching Nodes from Graph Database(which was created earlier)
Karthik, You can index the nodes you are interested in as start and/or end-nodes of your traversal and then retrieve them via the index. // to add them gDB.index().forNodes(indexName).add(node,key,value); nodeIndex.get(key,value) returns an IndexHitsNode that you can iterate over or use getSingle() to retrieve a single matching node. See also: http://wiki.neo4j.org/content/Index_Framework Other ways of accessing nodes in the db are getById() or traversal using the traversal framework or manual traversal starting from the reference node (gDB.getReferenceNode()) that you should connect your graph to. Cheers Michael Am 02.02.2011 um 13:34 schrieb karthik aithal: Hi, I am biginner to Neo4j and eager to learn more about it. I am aware of creating new Graph database with 1k to 10k nodes and relationship and was successfully traverse to specific nodes. But currently I am facing difficult to get node from existing graph DB and traverse to specific node in that DB. For creating new Graph DB I am using: GraphDatabaseService gDB = new EmbeddedGraphDatabase(target/db); So, if I have 10k nodes(with relationship) in Path: /NeoDB/store/db then how can I retrive nodes from this DB? Thanks for your help in advance, Karthik ___ 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] Implementing disambiguation algorithms in Neo4j
Hi Michael, It is fun to see you thinking this through :-) I have had a chance to discuss my crazy ideas with some of the neo4j team last year, but this is the first time with you. And since December there is even code to review (see https://github.com/craigtaverner/amanzi-index). You are correct that I connect the data nodes directly to the index nodes. And therefor the keys in the index nodes are representations of the data, at various 'resolutions' as you climb the tree. This also means that each index node represents a range of values, and so inequality operations can be performed on the index nodes themselves. This also leads to another interesting side effect, and that is that statistics can be calculated on the index tree without having to touch the original data. To fully realize this we also need some counters on the index nodes. The plan is that the index itself becomes the basis for very fast statistics calculations. Your suggestion for relationships is also related to another idea I discussed last year, and that is to use a range of relationship types, where the type itself contains information about the range of the child nodes, so that traversing the index tree can be optimized by using only the relationship type in most tests, and accessing node or relationship properties only for edge cases. I think the idea makes sense, but there are complications in that we can reach the capacity of the database if we overuse relationship type for something that logically would normally be seen as a relationship property. Cheers, Craig On Wed, Feb 2, 2011 at 1:46 AM, Michael Hunger michael.hun...@neotechnology.com wrote: Craig, The interesting thing is - if you do this index in-graph you can directly attach the index-nodes to the real nodes and have them mimic the original node but instead of having the property value per property you have the mapped value. And you can many of such indexes in graph attached via a index-name relationship to the real node. Would also be easy to update the index nodes that way or to remove them altogether. But perhaps it is even better to use relationships pointing to the nodes contain the mapped property values and have the index nodes just be an ordering structure for those relationships. Cheers Michael Am 02.02.2011 um 01:33 schrieb Craig Taverner: Hi Michael, I agree that _all_ is a strong work :-) What I do is provide a mapper interface for the domain modeler to implement based on their own understanding of what 'order' and 'resolution' to provide to the index. I have a set of pre-defined mappers for general cases, but do not suppose they will satisfy all users needs. Hopefully, should this index get developed further, we would have a much wider range of mappers that do cover all or most cases. So, let me give some examples. The simple ones are the integer and float mappers, where I have a few static factory methods for configuring them with various resolutions and origins, and defaults for those also. The default integer mapper, if I remember correctly, maps the integer to itself, and the default float mapper maps the float to its integer value (so 2.1 and 2.9 map to integer 2). There are configurations that auto-configure the mapper based on a sample dataset, setting the origin to the average value and choosing resolution to divide the space into a reasonable number of steps. The only string mapper I have configured simply maps each character in the string to an integer in the 94-character range from SPACE to SPACE+94 (126). It has a depth parameter, which controls the resolution of the first level of the index. This means that AB and AC are in adjacent index nodes. There is also a utility method for auto-configuring the range and depth based on a sample dataset. This mapper should work well when indexing, for example, a random selection out of a dictionary of words. However, if the sample data conforms to a certain pattern, and there are internal correlations, then a different mapper should be used (or written). The auto-config method does look for common-prefixes in the sample data to ensure that the depth is set correctly to not have all words in the same index node. The number of properties in the index does need to be defined at index creation. So you need to configure the index with all property names and types (and mappers) up-front, and then you simply add nodes to the index as you go. If the node does not have one of the configured properties, it gets a special index value for that. The resulting tree that is built is like an n-dimensional pyramid with lots of gaps (depending on the evenness of the property value distribution). Properties that do not need a tree of much depth (eg. a discrete set of categories, or tags) will cause the tree to collapse to n-1 dimensions at higher levels. So the total tree height is the hight
Re: [Neo4j] Fetching Nodes from Graph Database(which was created earlier)
Thanks for your reply. It resolved my problem. I think it is a basic question. But I found very difficult to find solution online. So can you please provide any consolidated user guide to use Neo4j(other than doc/videos in neo4j sites)? Thanks, Karthik On Wed, Feb 2, 2011 at 6:12 PM, Mattias Persson matt...@neotechnology.comwrote: You mean copy nodes from one database to another? You can bring up two EmbeddedGraphDatabase instances, pointing to two different locations, and start getting nodes/relationships from one and creating them (not just adding) in the other. GraphDatabaseService gDB1 = new EmbeddedGraphDatabase(/NeoDB/store/db); GraphDatabaseService gDB2 = new EmbeddedGraphDatabase(target/db); for ( Node sourceNode : gDB1.getAllNodes() ) { // Insert the contents of that node in gDB2 } 2011/2/2 karthik aithal karthikait...@gmail.com Hi, I am biginner to Neo4j and eager to learn more about it. I am aware of creating new Graph database with 1k to 10k nodes and relationship and was successfully traverse to specific nodes. But currently I am facing difficult to get node from existing graph DB and traverse to specific node in that DB. For creating new Graph DB I am using: GraphDatabaseService gDB = new EmbeddedGraphDatabase(target/db); So, if I have 10k nodes(with relationship) in Path: /NeoDB/store/db then how can I retrive nodes from this DB? Thanks for your help in advance, Karthik ___ 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
Re: [Neo4j] Relationship indexing
Yes, I'm running embedded. On Tue, Feb 1, 2011 at 1:38 PM, Michael Hunger michael.hun...@neotechnology.com wrote: I assume Pablo is running embedded. Is that correct? Michael Am 01.02.2011 um 13:21 schrieb Peter Neubauer: Also, have you taken a look at the returned document? Transferring thousands of relationships and parsing them as JSON on both client and server might not be optimal. 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 - Your high performance graph database. http://www.thoughtmade.com - Scandinavia's coolest Bring-a-Thing party. On Tue, Feb 1, 2011 at 1:17 PM, Michael Hunger michael.hun...@neotechnology.com wrote: It sounds as if you are looping through all of them? Have they all the same relationshiptype and direction? Otherwise perhaps use node.getRelationships(type, direction) Perhaps you can also use a traverser for accessing the relationship? Cheers Michael Am 01.02.2011 um 12:37 schrieb Mattias Persson: 2011/2/1 Pablo Pareja ppar...@era7.com Hi all, I'm working on a project with millions of nodes and relationships and I'm using Neo4j for it. I'm doing some tests and I'm surprised of how slow it gets when it comes to getting specific relationships from one node... How's it actually implemented? The node I want to get the relationships from is indexed so getting there is almost instantaneous, however looping over its outgoing relationships seems to be really slow. In the last test I just did it took about 10 minutes for retrieving around 45.000 outgoing relationships. What kind of heap settings and memory mapping configuration are you using? This sounds like disk swapping IMHO. 45000 relationships are quite few and should take well below a second to get. But if you just want to get a specific relationship (based on a property value or other node or something similar) then indexing would be a faster solution. Maybe something like this: RelationshipIndex index = graphDb.index().forRelationships( my-relationships ); ... Relationship myRelationship = myNode.createRelationship( myOtherNode, myRelationshipType ); index.add( myRelationship, myKey, myValue ); ... Relationship relForMyKey = index.get( myKey, myValue ).getSingle(); for ( Relationships relBetweenMyNodes : index.get( null, null, myNode, myOtherNode ) ) { System.out.println( Relationship + relBetweenMyNodes + found ); } Does that help you? I've also been checking the wiki site for the Index Framework and there's only one small paragraph talking about indexing relationships but not about how to create them RelationshipIndex friendships = graphDb.index().forRelationships( friendships ); // type isn't a reserved key and isn't indexed automatically Relationship relationship = friendships.get( type, knows, morpheus, trinity ).getSingle(); I'll try to update the wiki page with a little more/better information! so do you have any idea of the proper way for indexing relationships? Thanks in advance, ___ 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 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 -- Pablo Pareja Tobes LinkedInhttp://www.linkedin.com/in/pabloparejatobes Twitter http://www.twitter.com/pablopareja http://www.ohnosequences.com ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Relationship indexing
First of all thanks for your quick response, I'm using BatchInserter for the creation of all nodes and relationships, I pass a conf file with these parameters to the inserter: neostore.nodestore.db.mapped_memory=10G neostore.relationshipstore.db.mapped_memory=15G neostore.propertystore.db.mapped_memory=10G neostore.propertystore.db.strings.mapped_memory=15G neostore.propertystore.db.arrays.mapped_memory=0M for a 64 GB of RAM computer. However, I have to say that I don't pass any configuration file when creating the GraphDatabaseService. I just pass the db folder whenever I have to create a GraphDatabaseService instance in order to perform any kind of query. (I'm not using the new neo4j server feature, I navigate through the graph manually). This is the code I use for retrieving the relationships: IteratorRelationship relIterator = node.getRelationships(SomeRelationship,Direction.INCOMING).iterator(); while(interproRelIterator.hasNext()){ Wrapper wrapper = new Wrapper(interproRelIterator.next().getStartNode()); } The current size of my db is somewhere around 35.000.000 nodes and 20.000.000 relationships. Thanks in advance, On Tue, Feb 1, 2011 at 12:37 PM, Mattias Persson matt...@neotechnology.comwrote: 2011/2/1 Pablo Pareja ppar...@era7.com Hi all, I'm working on a project with millions of nodes and relationships and I'm using Neo4j for it. I'm doing some tests and I'm surprised of how slow it gets when it comes to getting specific relationships from one node... How's it actually implemented? The node I want to get the relationships from is indexed so getting there is almost instantaneous, however looping over its outgoing relationships seems to be really slow. In the last test I just did it took about 10 minutes for retrieving around 45.000 outgoing relationships. What kind of heap settings and memory mapping configuration are you using? This sounds like disk swapping IMHO. 45000 relationships are quite few and should take well below a second to get. But if you just want to get a specific relationship (based on a property value or other node or something similar) then indexing would be a faster solution. Maybe something like this: RelationshipIndex index = graphDb.index().forRelationships( my-relationships ); ... Relationship myRelationship = myNode.createRelationship( myOtherNode, myRelationshipType ); index.add( myRelationship, myKey, myValue ); ... Relationship relForMyKey = index.get( myKey, myValue ).getSingle(); for ( Relationships relBetweenMyNodes : index.get( null, null, myNode, myOtherNode ) ) { System.out.println( Relationship + relBetweenMyNodes + found ); } Does that help you? I've also been checking the wiki site for the Index Framework and there's only one small paragraph talking about indexing relationships but not about how to create them RelationshipIndex friendships = graphDb.index().forRelationships( friendships ); // type isn't a reserved key and isn't indexed automatically Relationship relationship = friendships.get( type, knows, morpheus, trinity ).getSingle(); I'll try to update the wiki page with a little more/better information! so do you have any idea of the proper way for indexing relationships? Thanks in advance, ___ 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 -- Pablo Pareja Tobes LinkedInhttp://www.linkedin.com/in/pabloparejatobes Twitter http://www.twitter.com/pablopareja http://www.ohnosequences.com ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Relationship indexing
Maybe I'm wrong but what you say would just apply for server feature uses right? (which is not my case) Cheers, On Tue, Feb 1, 2011 at 1:21 PM, Peter Neubauer peter.neuba...@neotechnology.com wrote: Also, have you taken a look at the returned document? Transferring thousands of relationships and parsing them as JSON on both client and server might not be optimal. 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 - Your high performance graph database. http://www.thoughtmade.com - Scandinavia's coolest Bring-a-Thing party. On Tue, Feb 1, 2011 at 1:17 PM, Michael Hunger michael.hun...@neotechnology.com wrote: It sounds as if you are looping through all of them? Have they all the same relationshiptype and direction? Otherwise perhaps use node.getRelationships(type, direction) Perhaps you can also use a traverser for accessing the relationship? Cheers Michael Am 01.02.2011 um 12:37 schrieb Mattias Persson: 2011/2/1 Pablo Pareja ppar...@era7.com Hi all, I'm working on a project with millions of nodes and relationships and I'm using Neo4j for it. I'm doing some tests and I'm surprised of how slow it gets when it comes to getting specific relationships from one node... How's it actually implemented? The node I want to get the relationships from is indexed so getting there is almost instantaneous, however looping over its outgoing relationships seems to be really slow. In the last test I just did it took about 10 minutes for retrieving around 45.000 outgoing relationships. What kind of heap settings and memory mapping configuration are you using? This sounds like disk swapping IMHO. 45000 relationships are quite few and should take well below a second to get. But if you just want to get a specific relationship (based on a property value or other node or something similar) then indexing would be a faster solution. Maybe something like this: RelationshipIndex index = graphDb.index().forRelationships( my-relationships ); ... Relationship myRelationship = myNode.createRelationship( myOtherNode, myRelationshipType ); index.add( myRelationship, myKey, myValue ); ... Relationship relForMyKey = index.get( myKey, myValue ).getSingle(); for ( Relationships relBetweenMyNodes : index.get( null, null, myNode, myOtherNode ) ) { System.out.println( Relationship + relBetweenMyNodes + found ); } Does that help you? I've also been checking the wiki site for the Index Framework and there's only one small paragraph talking about indexing relationships but not about how to create them RelationshipIndex friendships = graphDb.index().forRelationships( friendships ); // type isn't a reserved key and isn't indexed automatically Relationship relationship = friendships.get( type, knows, morpheus, trinity ).getSingle(); I'll try to update the wiki page with a little more/better information! so do you have any idea of the proper way for indexing relationships? Thanks in advance, ___ 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 mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user -- Pablo Pareja Tobes LinkedInhttp://www.linkedin.com/in/pabloparejatobes Twitter http://www.twitter.com/pablopareja http://www.ohnosequences.com ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Neo4j web admin connection error
hi eddy, there's a bug loading the properties from the server. (you could also patch the minified webadmin.js) diff --git a/src/main/javascript/wa/prop.js b/src/main/javascript/wa/prop.js index 82f7c82..bc9f9c8 100644 --- a/src/main/javascript/wa/prop.js +++ b/src/main/javascript/wa/prop.js @@ -22,4 +22,4 @@ * Persisted property storage, connected to webadmins central property storage * service. Instance of {@link wa.PropertyStorage}. */ -wa.prop = new wa.PropertyStorage(/db/manage/properties/); \ No newline at end of file +wa.prop = new wa.PropertyStorage(../db/manage/properties/); i recommend the 'firebug-addon' for firefox, so you can analyze every http-request. hope that helps. cheers thomas Am 02.02.2011 um 13:01 schrieb Eddy Respondek: The file is definitely there. Is there are difference between the latest http copy and the svn? Eddy On Wed, Feb 2, 2011 at 6:29 PM, user-requ...@lists.neo4j.org wrote: Does the file /usr/bin/neo4j-1.3.M01/conf/neo4j-server.properties exist? Either way, I think Michael Hunger has solved this problem all-together, I just need to merge his changes into the main server branch. I'll be digging in to that after lunch today. Will keep you posted! /Jacob ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Exact numeric indexing?
Thanks, Mattias. I don't think that I will have any numeric data that I'm never going to want to do range queries on, so I'll continue using the ValueContext approach. Out of curiosity, though, if I *did* have a numeric field that I only ever wanted to do exact matches on, would there be a significant performance penalty (or any other disadvantage) if it was stored as a ValueContext as opposed to the bare number? In other words, should I just go ahead and index everything numerically, or should I really pay attention to the potential queries I'll want to issue for number fields? If there are no big disadvantages, could Neo4j be patched to automatically wrap instances of Number using ValueContext when adding things to an index? Also, is there a way this information could be added to the wiki? Thanks again, Chris On Wed, Feb 2, 2011 at 4:20 AM, Mattias Persson matt...@neotechnology.com wrote: If you only use exact lookups (no ranges) then you don't need to index your values numerically (via ValueContext.numeric(123)). Just use: index.add( myNode, key, 123 ); ... index.get( key, 123 ); but if you're querying for both ranges and sometimes exact lookups, then your suggestion is the way to go. Indexing numbers numerically converts values into special values in lucene natively to allow for correct range queries. That's why there's a difference here. 2011/2/2 Chris Maier christopher.ma...@gmail.com I know that Neo4j can perform numeric range queries on its indexes, but I would also like to do exact numeric queries, such as find all nodes where the 'foo' property has a value of 123. Currently I am rephrasing these types of queries as find all nodes where the 'foo' property is between 123 and 123, which works, but I was wondering if there was a better way to do it? I haven't found anything so far. Thanks! Chris ___ 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
Re: [Neo4j] Difference between properties and nodes
Sorry for the terseness of the initial email. I had intended to expand it. I was wondering whether properties are shorthand for creating edges on the graph. Are properties linked via relationships, or do nodes carry all of their data/properties with them? For example, in YAML a node could with properties looks like this: 4 type: person name: Neo Could also be represented as a tree: 4 HAS_PROPERTY(name) HAS_VALUE(Neo) Thanks for responding. On 2 February 2011 22:54, Mattias Persson matt...@neotechnology.com wrote: Hi Tim, In what aspect? performance, or semantics? Could you supply a little more context, please... 2011/1/31 Tim McNamara paperl...@timmcnamara.co.nz Is there much difference between a creating property and creating a child node? Tim ___ 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
Re: [Neo4j] Difference between properties and nodes
Nodes are linked by relationships, and properties are attached to a node or relationship. Relationships have a type associated with them also (worksFor, livesIn, etc.), whereas nodes are essentially typeless. Properties are general data/attributes attached to a node or relationship. -Original Message- From: user-boun...@lists.neo4j.org [mailto:user-boun...@lists.neo4j.org] On Behalf Of Tim McNamara Sent: Wednesday, February 02, 2011 1:25 PM To: Neo4j user discussions Subject: Re: [Neo4j] Difference between properties and nodes Sorry for the terseness of the initial email. I had intended to expand it. I was wondering whether properties are shorthand for creating edges on the graph. Are properties linked via relationships, or do nodes carry all of their data/properties with them? For example, in YAML a node could with properties looks like this: 4 type: person name: Neo Could also be represented as a tree: 4 HAS_PROPERTY(name) HAS_VALUE(Neo) Thanks for responding. On 2 February 2011 22:54, Mattias Persson matt...@neotechnology.com wrote: Hi Tim, In what aspect? performance, or semantics? Could you supply a little more context, please... 2011/1/31 Tim McNamara paperl...@timmcnamara.co.nz Is there much difference between a creating property and creating a child node? Tim ___ 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 mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Exact numeric indexing?
2011/2/2 Chris Maier christopher.ma...@gmail.com Thanks, Mattias. I don't think that I will have any numeric data that I'm never going to want to do range queries on, so I'll continue using the ValueContext approach. Out of curiosity, though, if I *did* have a numeric field that I only ever wanted to do exact matches on, would there be a significant performance penalty (or any other disadvantage) if it was stored as a ValueContext as opposed to the bare number? In other words, should I just go ahead and index everything numerically, or should I really pay attention to the potential queries I'll want to issue for number fields? If there are no big disadvantages, could Neo4j be patched to automatically wrap instances of Number using ValueContext when adding things to an index? I've not performed tests on performance, but I doubt that it will be any significant difference. About Numbers being indexed/queried that way automatically... that may be a good idea. Also, is there a way this information could be added to the wiki? Absolutely Thanks again, Chris On Wed, Feb 2, 2011 at 4:20 AM, Mattias Persson matt...@neotechnology.com wrote: If you only use exact lookups (no ranges) then you don't need to index your values numerically (via ValueContext.numeric(123)). Just use: index.add( myNode, key, 123 ); ... index.get( key, 123 ); but if you're querying for both ranges and sometimes exact lookups, then your suggestion is the way to go. Indexing numbers numerically converts values into special values in lucene natively to allow for correct range queries. That's why there's a difference here. 2011/2/2 Chris Maier christopher.ma...@gmail.com I know that Neo4j can perform numeric range queries on its indexes, but I would also like to do exact numeric queries, such as find all nodes where the 'foo' property has a value of 123. Currently I am rephrasing these types of queries as find all nodes where the 'foo' property is between 123 and 123, which works, but I was wondering if there was a better way to do it? I haven't found anything so far. Thanks! Chris ___ 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 -- 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] neo4j 1.1 Download? -- for Use with Current Python Bindings
Thank you. Is the the neo4j 1.1 server download still available? On Mon, Jan 31, 2011 at 8:59 PM, James Thornton ja...@jamesthornton.com wrote: Since the current python bindings only work with neo4j 1.1 (as per this bug report https://trac.neo4j.org/ticket/302 and http://wiki.neo4j.org/content/Getting_Started_With_Python), where can you download neo4j 1.1 in the meantime until the python bindings are updated? ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
[Neo4j] Non-exact index queries with the REST API
I haven't found anything on the topic of non-exact queries using the REST API. I think I read a discussion from last december mentioning some plans for extending the REST index API, but I found no details about those plans. It would be great if someone could give me a hint where to look, or if there really are plans to extend the API. What I am looking for right now is a way to search my nodes by names. And I would like to look up names using wildcards / incomplete names. Is there a way to accomplish this? I saw a post referring to a Solr component. As far as I know, Solr provides a full REST API for searching its index. But I never used Solr, nor neo4j before. So I would be really grateful if someone could help me. Max ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Non-exact index queries with the REST API
Hi Max, I don't think there is a way to search for non-exact queries in the REST API today. I'll add it to the feature backlog for future releases. Jim ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
[Neo4j] Synchronisation between server and clients in Neo4j
Hi, I'm thinking of setting a system where each client store part of the server data for offline assess or reducing the workload of server. I'm not sure if there is a recommended way pf doing it. How should I do the synchronization for only part of data in most efficient way? Should I using the database log files to syn? Regards, Brendan ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Non-exact index queries with the REST API
The index framework in neo4j (lucene integration) supports wildcards and all that, but it isn't exposed in the REST API as of yet, as Jim mentioned. 2011/2/3 Jim Webber j...@neotechnology.com Hi Max, I don't think there is a way to search for non-exact queries in the REST API today. I'll add it to the feature backlog for future releases. Jim ___ 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