Re: Recommendations for bulk delete of edges


Ted Wilmes <twi...@...>
 

These are all good suggestions.  Not sure if it would be feasible to recreate your db, but if it was, you may be able to use edge TTLs: http://docs.janusgraph.org/0.1.0-SNAPSHOT/advanced-schema.html.

I haven't used them but you could set a 7 day TTL for the relevant edge label like this:

mgmt = graph.openManagement()
visits = mgmt.makeEdgeLabel('visits').make()
mgmt.setTTL(visits, Duration.ofDays(7))
mgmt.commit()

--Ted

On Friday, March 17, 2017 at 7:51:34 AM UTC-5, Robert Dale wrote:
I'm definitely not a Titan/Janus or ES expert so I'm not sure how it works.  But I imagine if you had an index by label, timestamp, asc, then you would only ever hit the tip of the index g.E().hasLabel('label').has('timestamp', lt(timestamp)). That should be very fast. Of course you would have to know all of the edge labels in advance. But again there's an opportunity for parallelism by label.

On Thursday, March 16, 2017 at 4:44:59 PM UTC-4, k...@... wrote:
Hi Marc,

Thanks for this.  Yes it is a mixed index with elasticsearch as the backend.  I've thought about the poor man's approach and I'm going to give that a try.  In fact I can probably query elasticsearch directly with this timestamp index and get the list of edge ids from there.

Join {janusgraph-users@lists.lfaidata.foundation to automatically receive all group messages.