2010-09-03 30 views
4

我想对具有多种模式(即多种类型的网络节点)和多路复用关系(即多种类型的网络边缘)的网络数据进行一些分析。对以RDF表示的网络数据应用图表分析

分析可能是关于SNA或应用图论中的任何算法,例如,关系强度,中心性,中介性,节点距离,块,集群等。

源数据是非结构化的,因此我应该首先考虑如何表示,存储和检索数据。

以下是一些想法。我会很感激任何反馈或进一步的建议。:)

我知道已经有一些很棒的NoSQL数据库,例如Neo4J,InfoGrid,用于这种类型的应用程序。但出于一些可扩展性原因(例如许可证,网络标准...),我希望使用RDF来存储和表示我的数据。使用的工具将是SESAME或JENA。

用RDF表示网络/图形数据的想法是微不足道的。 例如:

网络/图形数据

  *Alice* ----lend 100USD----> *Bob* ----- likes ----> *Skiing* 

与RDF

  *Alice* --src--> *lend_relation* <---target--- *Bob* ---likes---> *Skiing* 
            | 
           has_value         
           \|/ 
           *100USD* 

     [Alice   src  lend_relation] 
     [Bob   target lend_relation] 
     [lend_relation has_value 100USD] 
     [Bob   likes  Skiing] 

表示然而,问题是,RDF以及SPARQL图模型的观点缺乏。 在RDF查询之间遍历节点或查找(最短)距离效率不高。 它必须使用一些额外的分析工具完成,例如JUNG或JGarphT, ,我必须首先通过查询RDF存储构建子图,然后将其转换为JUNG或JGraphT使用的数据模型。如果我想要额外的可视化(无论是JUNG还是JGraphT),那么我必须为可视化工具包构建另一个数据模型。 我不知道这是一个明确的还是有效的整合。

再次感谢您的任何建议!

+0

“图模型的观点”是什么意思? – 2010-09-03 13:24:27

+0

我的意思是图遍历或图分析。 – elgcom 2010-09-06 10:58:52

回答

2

如果要使用SPARQL对RDF数据进行网络分析,您可以查看SPARQL 1.1 Property Paths。我相信在耶拿/ ARQ已经实施了ARQ - Property Paths

来自SPARQL新规范的属性路径允许您通过定义图形模式来查询RDF数据模型。图表模式比您在SPARQL 1.0中定义的模式要复杂一些。

使用此功能以及应用程序级别的某些逻辑,您可能能够对数据执行一些有趣的网络分析。