Head's Up! These forums are read-only. All users and content have migrated. Please join us at community.neo4j.com.
10-11-2021 12:51 AM
Hey,
I have some data that has quite a bit more than 10000 nodes and would like to display a certain relationship in full to get the full picture
Unfortunately Bloom limits the nodes to 10'000 max. I am aware that this is done for performance reason but I am sure my PC can handle quite a bit more and I also don't mind to wait a bit until everything is layed out. I am also willing to risk a crash.
That's why I am curious if there is any way or "hack" (maybe something in registry or in a config file) to circumvent this limit?
Any help and hints are appreciated.
Thanks!
10-11-2021 01:33 AM
I think you can do it in config file but you will need to investgate more on configuration parameters
Thanking you
Sameer Gijare
10-11-2021 02:45 AM
The limit is a per-query result size limit. To display more graph elements, you would have to query again or expand the initial result set.
For example, to have fun with the ICIJ data I sometimes start with an initial pattern query, select all, then expand, select all, then expand.
That may not work with your data. The alternative would be to create a new search phrase which accepts a "page" parameter which can map to your data to query chunks of the graph at a time.
Best,
ABK
10-11-2021 02:47 AM
FWIW the hacky way to page would be to grab ranges based on node or relationship id.
-ABK
10-11-2021 04:44 AM
Ohh I was not aware about the possibility to 'select-expand-select-expand...'. That is a really interesting option!
Regarding the "Page" parameter: Can you point me to an example or tutorial. It sounds like that's what I want but I am quite new to Neo4j/Cypher.
Is there a simple way to query just data, that is not already displayed or was not queried before?
Thanks already for the help so far!
10-11-2021 06:40 AM
Here's a simple example of adding a "page" search phrase...
page $pageNumber
as the search phraseWITH 1000 as pageSize, toInteger($pageNumber) as page
WITH (pageSize * page) as upperID,
(pageSize * page) - pageSize as lowerID
MATCH p=()-[r]->()
WHERE id(r) >= lowerID
AND id(r) < upperID
RETURN p
1000
in that first line to whatever page size you'd likepage 1
Unfortunately there isn't a way to use currently displayed or selected data within the search phrase query. There isn't any context available other than the explicit parameters passed in as part of the search text.
For a longer example of creating search phrases, check out How to Create Conditional and Dynamic Queries in Neo4j Bloom - Neo4j Graph Database Platform
Cheers,
ABK
All the sessions of the conference are now available online