我正在学习neo4j
,我想知道是否有任何方法可以创建一个relationship
或node
,在一段时间后自动删除。
发布于 2015-02-13 13:14:13
我不知道这种事。Neo4j只是一个类似于*SQL或MongoDB的数据库(尽管让我知道他们是否可以这样做)。
我最好的建议是在关系中放置一个delete_after
属性(或类似的属性),然后有一个定期查询以清理它们的任务。请注意,您不能直接查询关系(也就是说,查询中总是需要涉及节点),因此根据数据库的大小,您可能需要考虑需要什么样的索引。我在这里有点模糊,因为我不知道你的领域模型会是什么样子。
发布于 2019-09-30 14:36:26
正如@Scott在注释中指出的那样,您可以使用APOC指定节点上的TTL,如这里所示。将下列内容附加到您的neo4j.conf
apoc.ttl.enabled=true
然后,您可以自己设置适当的标签和属性:
SET n:TTL
SET n.ttl = timestamp() + 3600
或利用下列程序之一:
// Expires in
CALL apoc.date.expire.in(node,time,'time-unit')
// Expires at
CALL apoc.date.expire(node,time,'time-unit')
发布于 2021-08-17 06:25:48
如果你和我一样,在这篇文章中跌跌撞撞,这是最近更新的。参考文献:https://neo4j.com/labs/apoc/4.3/overview/apoc.ttl/apoc.ttl.expireIn/
Match(person:person {id: 100})
CALL apoc.ttl.expireIn(person, 10,'s')
Return person;
https://stackoverflow.com/questions/28498965
复制相似问题