Implementation of object cache in Neo4j 3.2.3
up vote
1
down vote
favorite
I have read this post "Understanding of Neo4j object cache", but can't find 'NodeImpl' any more in the source code of Neo4j 3.2.3.
I tried some code to track down to the implementation of Neo4j, but fail to find access to any cache other than page cache. I tried to get property of same node twice, expect to hit the cache when shoot the second query.
Node n = db.getNodeById(0);
n.getProperty("name");
String name = (String) n.getProperty("name");
System.out.println("name: " + name);
There is a lot of 'InstanceCache' inside 'StoreStatement', but as the comment implies, instance cache is used for single object, not used for connection between node and relationship as described here in 'An overview of Neo4j Internals'.
My question is:
- What's the implementation of object cache inside neo4j 3.2.3 ?
- Is there anything newer for internals of neo4j ? The slide I got is published 6 year ago.
neo4j
add a comment |
up vote
1
down vote
favorite
I have read this post "Understanding of Neo4j object cache", but can't find 'NodeImpl' any more in the source code of Neo4j 3.2.3.
I tried some code to track down to the implementation of Neo4j, but fail to find access to any cache other than page cache. I tried to get property of same node twice, expect to hit the cache when shoot the second query.
Node n = db.getNodeById(0);
n.getProperty("name");
String name = (String) n.getProperty("name");
System.out.println("name: " + name);
There is a lot of 'InstanceCache' inside 'StoreStatement', but as the comment implies, instance cache is used for single object, not used for connection between node and relationship as described here in 'An overview of Neo4j Internals'.
My question is:
- What's the implementation of object cache inside neo4j 3.2.3 ?
- Is there anything newer for internals of neo4j ? The slide I got is published 6 year ago.
neo4j
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
I have read this post "Understanding of Neo4j object cache", but can't find 'NodeImpl' any more in the source code of Neo4j 3.2.3.
I tried some code to track down to the implementation of Neo4j, but fail to find access to any cache other than page cache. I tried to get property of same node twice, expect to hit the cache when shoot the second query.
Node n = db.getNodeById(0);
n.getProperty("name");
String name = (String) n.getProperty("name");
System.out.println("name: " + name);
There is a lot of 'InstanceCache' inside 'StoreStatement', but as the comment implies, instance cache is used for single object, not used for connection between node and relationship as described here in 'An overview of Neo4j Internals'.
My question is:
- What's the implementation of object cache inside neo4j 3.2.3 ?
- Is there anything newer for internals of neo4j ? The slide I got is published 6 year ago.
neo4j
I have read this post "Understanding of Neo4j object cache", but can't find 'NodeImpl' any more in the source code of Neo4j 3.2.3.
I tried some code to track down to the implementation of Neo4j, but fail to find access to any cache other than page cache. I tried to get property of same node twice, expect to hit the cache when shoot the second query.
Node n = db.getNodeById(0);
n.getProperty("name");
String name = (String) n.getProperty("name");
System.out.println("name: " + name);
There is a lot of 'InstanceCache' inside 'StoreStatement', but as the comment implies, instance cache is used for single object, not used for connection between node and relationship as described here in 'An overview of Neo4j Internals'.
My question is:
- What's the implementation of object cache inside neo4j 3.2.3 ?
- Is there anything newer for internals of neo4j ? The slide I got is published 6 year ago.
neo4j
neo4j
asked Nov 9 at 10:41
sel-fish
3,16821131
3,16821131
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
2
down vote
accepted
The Object Cache doesn't exist anymore in Neo4j (since version 3.0 from what I remember), there is only the page cache.
Slides from Tobias that explain the graph storage are still correct.
i saw that there is a field named 'needsCacheInvalidation' in TransactionApplicationMode, so that's for the purpose to invalidate page cache ?
– sel-fish
Nov 9 at 10:59
I think so ....
– logisima
Nov 9 at 13:27
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
2
down vote
accepted
The Object Cache doesn't exist anymore in Neo4j (since version 3.0 from what I remember), there is only the page cache.
Slides from Tobias that explain the graph storage are still correct.
i saw that there is a field named 'needsCacheInvalidation' in TransactionApplicationMode, so that's for the purpose to invalidate page cache ?
– sel-fish
Nov 9 at 10:59
I think so ....
– logisima
Nov 9 at 13:27
add a comment |
up vote
2
down vote
accepted
The Object Cache doesn't exist anymore in Neo4j (since version 3.0 from what I remember), there is only the page cache.
Slides from Tobias that explain the graph storage are still correct.
i saw that there is a field named 'needsCacheInvalidation' in TransactionApplicationMode, so that's for the purpose to invalidate page cache ?
– sel-fish
Nov 9 at 10:59
I think so ....
– logisima
Nov 9 at 13:27
add a comment |
up vote
2
down vote
accepted
up vote
2
down vote
accepted
The Object Cache doesn't exist anymore in Neo4j (since version 3.0 from what I remember), there is only the page cache.
Slides from Tobias that explain the graph storage are still correct.
The Object Cache doesn't exist anymore in Neo4j (since version 3.0 from what I remember), there is only the page cache.
Slides from Tobias that explain the graph storage are still correct.
answered Nov 9 at 10:51
logisima
4,8971926
4,8971926
i saw that there is a field named 'needsCacheInvalidation' in TransactionApplicationMode, so that's for the purpose to invalidate page cache ?
– sel-fish
Nov 9 at 10:59
I think so ....
– logisima
Nov 9 at 13:27
add a comment |
i saw that there is a field named 'needsCacheInvalidation' in TransactionApplicationMode, so that's for the purpose to invalidate page cache ?
– sel-fish
Nov 9 at 10:59
I think so ....
– logisima
Nov 9 at 13:27
i saw that there is a field named 'needsCacheInvalidation' in TransactionApplicationMode, so that's for the purpose to invalidate page cache ?
– sel-fish
Nov 9 at 10:59
i saw that there is a field named 'needsCacheInvalidation' in TransactionApplicationMode, so that's for the purpose to invalidate page cache ?
– sel-fish
Nov 9 at 10:59
I think so ....
– logisima
Nov 9 at 13:27
I think so ....
– logisima
Nov 9 at 13:27
add a comment |
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53224146%2fimplementation-of-object-cache-in-neo4j-3-2-3%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown