我有一个Neo4j模型,节点是人和鸟
  
  (jim:Person)-[:LIKES]->(pigeon:Bird)
  
   
    timestamp
   
   属性,我想删除所有早于某个日期的关系。
  
  
   我有一个Ruby方法
   
    delete_likes
   
   它接受一个bird ActiveNode并执行这个关系删除,效果很好。在鸟儿身上反复我
  
  Bird.all.each { |bird| delete_likes(bird) }
  
   这是可行的,但速度很慢,因为有很多鸟不喜欢删除,但我还是迭代了它们。我想我也许可以用
  
  Bird
  .as(:bird)
  .liked_by(:person, :like)
  .where('like.timestamp < ?', cutoff)
  .pluck(:bird)
  .each { |bird| delete_likes(bird) }
  
   换句话说,执行查询以仅查找要应用函数的节点。尽管这段代码在单元测试中产生了相同的结果,但我发现,对于一个真实大小的图形,它使用了我(体面的)笔记本电脑上的所有内存,并使我的Rails服务器崩溃,这让我很难过。