|
Graph corruption?
Hi all - I'm seeing this from a recent graph I built:
gremlin> :> g.V(4162).valueMap()
==>{source=[DS_106], sourceName=[GDELTRecord3]}
gremlin> :> g.V(4146).valueMap()
==>{source=[DS_106],
Hi all - I'm seeing this from a recent graph I built:
gremlin> :> g.V(4162).valueMap()
==>{source=[DS_106], sourceName=[GDELTRecord3]}
gremlin> :> g.V(4146).valueMap()
==>{source=[DS_106],
|
By
Joe Obernberger
·
#6553
·
|
|
Re: Getting Edges - Performance
Hi Boxuan -
Cluster is a 15 node cassandra cluster:
nodetool status
Datacenter: datacenter1
=======================
Status=Up/Down
|/
Hi Boxuan -
Cluster is a 15 node cassandra cluster:
nodetool status
Datacenter: datacenter1
=======================
Status=Up/Down
|/
|
By
Joe Obernberger
·
#6552
·
|
|
Re: Threaded Operations - Quarkus
Gotcha. The recommended way is to use TinkerPop API to do CRUD operations, i.e. GraphTraversalSource.addV() is recommended as it is considered the “standard” way.
The `addV` method inherently
Gotcha. The recommended way is to use TinkerPop API to do CRUD operations, i.e. GraphTraversalSource.addV() is recommended as it is considered the “standard” way.
The `addV` method inherently
|
By
Boxuan Li
·
#6551
·
|
|
Re: Getting Edges - Performance
Your Cassandra statistics shows pretty low latency, so the problem does not seem to be related to Cassandra. I would check if it’s a network problem. It might also be helpful if you could provide
Your Cassandra statistics shows pretty low latency, so the problem does not seem to be related to Cassandra. I would check if it’s a network problem. It might also be helpful if you could provide
|
By
Boxuan Li
·
#6550
·
|
|
Re: Getting Edges - Performance
One thing of note is the tablehistogram for the graphindex table:
nodetool tablehistograms graphsource.graphindex
graphsource/graphindex histograms
Percentile Read
One thing of note is the tablehistogram for the graphindex table:
nodetool tablehistograms graphsource.graphindex
graphsource/graphindex histograms
Percentile Read
|
By
Joe Obernberger
·
#6549
·
|
|
Re: Poor load balancing in 0.5.3
I suspect this is an issue with gremlin java-driver. I just reported here: https://issues.apache.org/jira/browse/TINKERPOP-2766
I believe you should provide all hostnames for now.
Best regards,
Boxuan
I suspect this is an issue with gremlin java-driver. I just reported here: https://issues.apache.org/jira/browse/TINKERPOP-2766
I believe you should provide all hostnames for now.
Best regards,
Boxuan
|
By
Boxuan Li
·
#6548
·
|
|
Re: Getting Edges - Performance
Thank you Boxuan - the code (REST service) that is modifying the graph is being called continuously when running. A slow example looks like this:
Metrics: Traversal Metrics
Step
Thank you Boxuan - the code (REST service) that is modifying the graph is being called continuously when running. A slow example looks like this:
Metrics: Traversal Metrics
Step
|
By
Joe Obernberger
·
#6547
·
|
|
Re: Getting Edges - Performance
Profiler documentation is available here: https://tinkerpop.apache.org/docs/current/reference/#profile-step
Can you do
traversal.E().has("edgeID", edgeID).profile().next()
and paste the output (when
Profiler documentation is available here: https://tinkerpop.apache.org/docs/current/reference/#profile-step
Can you do
traversal.E().has("edgeID", edgeID).profile().next()
and paste the output (when
|
By
Boxuan Li
·
#6546
·
|
|
Re: Getting Edges - Performance
Looking for documentation on how to do profile() - do you have any?
Queries like this are also slow:
Edge dataSourceToCorrelationEdge = traversal.E().has("edgeID",
Looking for documentation on how to do profile() - do you have any?
Queries like this are also slow:
Edge dataSourceToCorrelationEdge = traversal.E().has("edgeID",
|
By
Joe Obernberger
·
#6545
·
|
|
Poor load balancing in 0.5.3
Hi folks,
From what we are seeing in the gremlin driver code, it is expected that all gremlin server host names are provided and not a VIP. Is that correct?
For example,
Cluster cluster =
Hi folks,
From what we are seeing in the gremlin driver code, it is expected that all gremlin server host names are provided and not a VIP. Is that correct?
For example,
Cluster cluster =
|
By
Doug Whitfield
·
#6544
·
|
|
Re: Threaded Operations - Quarkus
Sorry for the delay.
When a request comes in via REST, Quarkus creates a thread to handle it; I believe it actually comes from a thread pool.
This code now does:
Sorry for the delay.
When a request comes in via REST, Quarkus creates a thread to handle it; I believe it actually comes from a thread pool.
This code now does:
|
By
Joe Obernberger
·
#6543
·
|
|
Re: Getting Edges - Performance
It's very suspicious. It shouldn't take 3 seconds just to load 3 edges. Can you provide theprofile() output here when you see such slowness? It is also worth trying if other queries (e.g. loading a
It's very suspicious. It shouldn't take 3 seconds just to load 3 edges. Can you provide theprofile() output here when you see such slowness? It is also worth trying if other queries (e.g. loading a
|
By
Boxuan Li
·
#6542
·
|
|
Re: Threaded Operations - Quarkus
When you say use JanusGraph.tx().createdThreadedTx() directly, what do you mean? Can you give an example?
When you say use JanusGraph.tx().createdThreadedTx() directly, what do you mean? Can you give an example?
|
By
Boxuan Li
·
#6541
·
|
|
Re: Getting Edges - Performance
It's usually small; typically around 3 edges.
Reading your article(https://li-boxuan.medium.com/janusgraph-deep-dive-part-3-speed-up-edge-queries-3b9eb5ba34f8).
Outbound edges could be
It's usually small; typically around 3 edges.
Reading your article(https://li-boxuan.medium.com/janusgraph-deep-dive-part-3-speed-up-edge-queries-3b9eb5ba34f8).
Outbound edges could be
|
By
Joe Obernberger
·
#6540
·
|
|
Re: Getting Edges - Performance
When it takes over 3 seconds to return, how many edges does it return?
When it takes over 3 seconds to return, how many edges does it return?
|
By
Boxuan Li
·
#6539
·
|
|
Getting Edges - Performance
Hi All - I'm seeing a performance issue with this statement in Java code:
Iterator<Edge> edgeIt = vert.edges(Direction.IN);
in some cases this is taking over 3 seconds to return. What can I do to
Hi All - I'm seeing a performance issue with this statement in Java code:
Iterator<Edge> edgeIt = vert.edges(Direction.IN);
in some cases this is taking over 3 seconds to return. What can I do to
|
By
Joe Obernberger
·
#6538
·
|
|
Re: Threaded Operations - Quarkus
Thanks for all the help on this. I'm coming closer to a solution thanks to you all.
Question - I've been using GraphTraversalSource to do all the adding vertices and edges to my graph.
Thanks for all the help on this. I'm coming closer to a solution thanks to you all.
Question - I've been using GraphTraversalSource to do all the adding vertices and edges to my graph.
|
By
Joe Obernberger
·
#6537
·
|
|
Re: Threaded Operations - Quarkus
Yeah using `newTransaction()` won't make a difference in your use case. Based on your input, there are a couple of things you could try:
As suggested by Kevin, you could use locking. See
Yeah using `newTransaction()` won't make a difference in your use case. Based on your input, there are a couple of things you could try:
As suggested by Kevin, you could use locking. See
|
By
Boxuan Li
·
#6536
·
|
|
Re: Threaded Operations - Quarkus
This from Titan, the predecessor to Janusgraph, but see https://groups.google.com/g/aureliusgraphs/c/z6kyGSlifXE/m/aLc2Zwb_BAAJ for some experience with a similar issue.
You can either do locking and
This from Titan, the predecessor to Janusgraph, but see https://groups.google.com/g/aureliusgraphs/c/z6kyGSlifXE/m/aLc2Zwb_BAAJ for some experience with a similar issue.
You can either do locking and
|
By
Kevin Schmidt
·
#6535
·
|
|
Re: Threaded Operations - Quarkus
So - unsurprisingly, Boxuan is correct.
Code like this:
GraphTraversalSource traversal = StaticInfo.getGraph().newTransaction().traversal();
try {
So - unsurprisingly, Boxuan is correct.
Code like this:
GraphTraversalSource traversal = StaticInfo.getGraph().newTransaction().traversal();
try {
|
By
Joe Obernberger
·
#6534
·
|