Neo4j时间依赖图模型

use*_*478 8 graph neo4j cypher

我需要帮助我的neo4j图形结构模型的时间依赖域.有关要求和问题,请参见以下草图:

问题sktech

  • 图1和2:每天我都有节点和关系.我将关系定义为某些词汇单元(句子)中两个节点(例如单词)之间的共现.具有新节点或已存在一次的同一节点可在几天内发生.请参阅以下示例,其中我们仅考虑节点的命名实体:

    • 2013/01/01:彼得今晚想知道卡桑德拉.
    • 2013/01/01:Cassandra希望留在家里与Peter.
    • ....
    • 2013/01/08:彼得爱上了朱迪思.
    • 2013/01/08:卡桑德拉每天都带着彼得上学.

    这将导致下面的图形结构.

     - 2013/01/01:
    
        (Peter) <--2--> (Cassandra)
    
     - 2013/01/08
    
        (Peter) <--1--> (Judith)
    
        (Peter) <--1--> (Cassandra)
    
    Run Code Online (Sandbox Code Playgroud)
  • 图3:图形结构应支持选择特定时间跨度并获得从起点(P1)到终点(P2)的路径.这里,路径由这两个节点之间相对于累积节点的最大流量和特定时间跨度的关系给出.

  • 图4:还应该可以根据例如最高剩余边缘权重来扩展节点.图4显示了具有3个额外节点的扩展图.

我已经知道这个工作2和多级索引3的例子.第一个模型不支持来自不同帧的节点之间的良好路径查找.只有后者才有助于查询时间范围.希望有人可以提供帮助.

问候.

Axe*_*ner 4

在图表中对时间进行建模的方法有很多种。一种方法是添加时间戳,甚至是关系有效期间的开始/结束时间。这样,您可以查询图形以返回在给定时间有效的子图或路径。

Ian Robinson(《图数据库》一书的作者之一)写了一篇关于此主题的非常好的博客文章:http://iansrobinson.com/2014/05/13/time-based-versioned-graphs/

关于性能,访问关系确实比仅按关系类型查询要昂贵一些,但您可能需要使用自己的数据集为自己进行基准测试,因此我建议从适用于的最简单的模型开始如有必要,然后迭代优化性能。

  • 此网址 http://iansrobinson.com/2014/05/13/time-based-versioned-graphs/ 不再有效。有谁知道哪里可以找到这篇文章吗? (4认同)
  • 不幸的是,整个网站似乎都消失了,所以运气不好。但是,还有关于此主题的其他文章,请参阅 /sf/ask/3196896461/、https://softwareengineering.stackexchange.com/questions /323444/graph-database-keeping-historical-relationships 甚至是科学论文,例如 https://www.uni-marburg.de/fb12/arbeitsgruppen/swt/forschung/publikationen/2012/TELW12.pdf 和 https:// Researcher.watson.ibm.com/researcher/files/us-leejinho/Multiversion_support_for_property_graph_databases___BigData_2017.pdf。 (2认同)