Comments (8)
I exported and imported the entire database in cypher file. The newly imported database doesn't have the SET
problem, so gds.pagerank.write
worked fine on the new database.
from graphipedia.
Well, to tell you what's involved in upgrading to the latest version I would need to actually do the upgrade. 🙂
I suggest looking at the forks and see if somebody already did it. Like, this one by noppaz seems to be using Neo4j v4.
from graphipedia.
Thanks for the suggestion to look at the forks. I was able to use andrew-yarmola's fork to generate what I needed!
from graphipedia.
As a warning to others, databases created with noppaz's fork seems to be slightly off. Everything else seems to work fine, but using a SET
query to create a new property with a floating value has a serious side effect of changing other node's property as well.
For example, if you run MATCH (n) WHERE id(n) = 1001 SET n.newProp=0.123
query to create a property, the first node(with id 0) gets overridden with 1001st node. Running algorithms that write to a new property like gds.pagerank.write
is affected as well, sometimes resulting in error messages such as IllegalStateException: 13 already exists
.
As a workaround, I've had to use export and import back the database with apoc.export.cypher.all
.
from graphipedia.
@BlueGreenMagick I experienced the same thing with andrew-yarmola fork. I also was trying to run gds.pagerank
and ran into this issue that caused my database to be corrupted; I had to restore from the backup. Could you elaborate more on your workaround? I tried several things but couldn't find anything that wouldn't involve eventually writing properties using SET
from graphipedia.
Using the apoc plugin, I exported the entire database with apoc.export.cypher.all
, then imported it in a new database by running the cypher file. (Following the steps in this blog) The downside is that it takes a huge amount of time.
I also tried exporting&importing as a dump file (which is much faster), but that doesn't seem to work.
from graphipedia.
Ah ok, gotcha. In that case I'm assuming that you ran gds.pagerank
with mutate
mode to modify the in-memory graph, then dumped the in-memory graph to a file and re-imported it to a new database?
I tried to do something like that as well but I ran into trouble with string properties. Neo4j won't allow string properties to be imported to an in-memory graph (as documented here), and I need string properties to match up nodes in the original graph to nodes in the new graph, since the nodeIds aren't guaranteed to stay the same between the two graphs.
Still haven't found a working solution yet.
from graphipedia.
That makes sense, thanks for the tip!
from graphipedia.
Related Issues (11)
- Problem by using Neo4j 3.3.1 HOT 2
- Compilation error due to missing packages HOT 1
- Could not find or load main class
- Less number of nodes created than expected for the 18 GB wikipedia datadump HOT 5
- Diffifulties to import the graphdb into NEO4j HOT 6
- Update to 2.2 by using docker HOT 3
- Performance notes are wrong HOT 3
- IlligalStateException HOT 5
- Database files require upgrading HOT 2
- categories
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from graphipedia.