OData与语义Web /关联数据的比较

时间:2012-06-19 04:11:04

标签: odata rdf semantic-web linked-data

我试图了解两种截然不同的数据共享方法:OData和语义Web /关联数据。这两者有很好的比较吗?

据我了解,OData结合了联合/ CRUD(AtomPub),序列化格式(XML,JSON),数据模型,查询语言以及管理这些现有技术使用的一些语义/约定。它主要用于公开来自一个系统的数据,以便其他人可以使用它。

关联数据是一种数据模型,对URI的严格承诺,(可选的?)序列化格式(RDF / XML),但(如果我错了,请纠正我)没有提及有关传输,CRUD等的任何内容它似乎旨在允许从各种来源的大量小块数据进行推理。 (现在对我们来说不是什么重要的事情 - 我们会在少量来源之间同步大量数据,并希望保存出处信息)。

我对某些数据管理平台之间共享数据的技术感兴趣,其中一些我直接处理。 OData似乎更具吸引力,因为向开发人员解释非常简单:实现此API,遵循Atom标准,序列化这样的数据。我们已经在一个平台上做了非常类似的事情:在Atom提要上共享XML序列化数据,并使用URL参数进行过滤。

相比之下,我过去使用RDF的经历给我的印象是脆弱,不透明(大量的RDF / XML),无法访问(使用SPARQL vs SQL)技术 - 但也许我会混淆使用的经验像Jena这样的三重商店,只需通过链接数据API公开现有数据库。

关于这两种方法在范围,技术,易用性,未来潜力等方面的差异和相似性的任何指示,评论等都会很棒。

3 个答案:

答案 0 :(得分:7)

我认为深入讨论这个问题并不是Stackoverflow的用途,而只是为了向您提供有关差异和重叠的有趣讨论的一些建议:

其中一个关键差异似乎是OData无法将来自不同来源的数据相互链接。从本质上讲,你仍然陷入困境。

检查两种方法之间转换数据的各种尝试可能也很有趣。见a.o. http://answers.semanticweb.com/questions/1298/has-anyone-written-a-mapping-from-odata-to-rdf

答案 1 :(得分:4)

OData可能更容易,但无论如何都不是更好。 SPARQL和RDF(忘记RDF / XML,最好看看Turtle)满足OData中的所有功能,同时提供更多前沿功能,例如:

  • 联盟扩展
  • 关联数据
  • 推理和推理(更勇敢)

同样,支持这些标准的软件实际上非常复杂。大多数对OData感兴趣的人通常来自Microsoft背景,因此请查看dotNetRdf

答案 2 :(得分:3)

这是一个比较矩阵:

http://uoccou.wordpress.com/2011/02/17/linked-data-odata-gdata-datarss-comparison-matrix/

不幸的是,表格格式非常糟糕,但内容很有用。