OData和语义Web/链接数据的比较

9
我试图理解数据共享的两种非常不同的方法:OData和语义网络/链接数据。它们之间有没有好的比较?
据我所知,OData结合了分发/CRUD(AtomPub)、序列化格式(XML、JSON)、数据模型、查询语言以及使用这些现有技术的一些语义/约定。它的主要目的是从一个系统中公开数据,以便其他人可以使用它。
Linked Data是一种数据模型,对URI进行严格承诺,具有(可选的?)序列化格式(RDF/XML),但(如果我错了,请纠正我)不涉及传输、CRUD等方面。它似乎旨在允许推理跨越从各种来源提取的大量小数据块。 (我们现在并不十分关心这个问题——我们将在少数几个源之间同步大块数据,并希望保留来源信息)。
我对在某些数据管理平台之间共享数据的技术很感兴趣,其中一些我直接参与工作。 OData似乎更具吸引力,因为它非常容易向开发人员解释:实现此API,遵循那个Atom标准,像这样序列化数据。我们已经在一个平台上做了非常类似的事情:在Atom feed上共享XML序列化数据,并使用URL参数来过滤。
相比之下,我过去使用RDF的经验给我的印象是:易碎、不透明(大量RDF/XML)、不可访问(使用SPARQL而不是SQL)技术——但也许我把使用像Jena这样的三元存储库与仅通过链接数据API公开现有数据库的经验混淆了。
在范围、技术、易用性、未来潜力等方面,这两种方法的差异和相似之处有任何指针、评论等都将是极好的。

Steve - 不确定这是否是这种类型问题的最佳论坛,因为它可能会拖延一段时间。不过我很乐意讨论 - 你可以将问题转移到 http://programmers.stackexchange.com/ 或者从我的新博客 (bitwhys.com) 联系我吗? - Mark Stafford - MSFT
2
仅就你提到的一些关于RDF/链接数据技术的观点简单回答: “海量的RDF/XML” 并不是常见情况,听起来更像是技术应用不正确。将SPARQL(而非SQL)称之为“难以使用”的问题可能只是个人口味问题。但是,应用链接数据原则并不需要使用SPARQL。它只是方便而已。 - Jeen Broekstra
1
截至2015年2月,链接数据平台是W3C的推荐标准:https://www.w3.org/TR/ldp/ LDP解决了缺失的链接数据读写部分(在您的问题中称为CRUD)。 - Hector Correa
3个回答

7

我认为深入讨论这个问题并不是Stackoverflow的主要目的,但是我可以提供一些有趣的讨论指引来解释差异和重叠:

其中一个关键差异似乎是OData没有将不同来源的数据联系起来的方法。本质上,你仍然被困在信息孤岛中。

还有一些有趣的尝试将这两种方法转换数据。请参见http://answers.semanticweb.com/questions/1298/has-anyone-written-a-mapping-from-odata-to-rdf等等。


感谢提供这些链接 - 尽管我认为“你仍然被困在一个信息孤岛中”有点言过其实。 (请参见微软明确表示破坏信息孤岛是目标的链接:http://blogs.msdn.com/b/astoriateam/archive/2009/11/17/breaking-down-data-silos-the-open-data-protocol-odata.aspx) - Steve Bennett
@SteveBennett 嗯,他们所声明的目标和实际提供的并不一定相同,当然。这一点在上面提到的一些文章中有更详细的探讨。然而,我不是 OData 专家,也许我忽略了一个用于链接数据的标准化机制。 - Jeen Broekstra
我认为“信息孤岛”不等同于“无法外部链接的信息”。如果您可以轻松地以标准格式和语义将信息输入和输出系统,则大部分信息孤立的问题都会消失,我认为。 - Steve Bennett
啊,我明白了。嗯,这取决于你的目标,但我认为这些东西是同义词,或者至少非常相关。如果你无法将你的数据与其他人的数据联系起来(甚至不能简单地说“这个东西在这里和那个东西在那里是一样的”),那么来自异构源的数据交换和集成怎么可能实现呢?这就是走出孤立状态的意义所在:使你的数据在其他环境中可重用。如果没有这个,你只是创建了一个稍微大一点的孤立状态。当然,对于许多用例来说,稍微大一点的孤立状态可能已经足够了 :) - Jeen Broekstra
在我的情境中,稍微大一点的筒仓就足够了。整合2或3个不同的信息来源将是一个巨大的改进,而在此之后的额外收益很少。 - Steve Bennett

4

OData可能更简单,但并不更好。SPARQL和RDF(忘掉RDF/XML,最好查看Turtle)满足了OData的所有需求,同时提供了许多更先进的功能,例如:

  • 联邦扩展
  • 链接数据
  • 推理和推断(对于更勇敢的人)

同样,支持这些标准的软件实际上是相当复杂的。大多数对OData感兴趣的人通常来自Microsoft背景,所以看看dotNetRdf


好的,但对于一项依赖于网络效应的技术来说,更容易可能意味着更好,对吧?在这个领域,低普及率的优秀技术并不值得多少。 - Steve Bennett
3
考虑到Facebook、Google、美国和英国政府(只是其中一些参与者)都在线生成基于RDF的链接数据,因此将这项技术称为“低使用率”似乎是不合适的。 - Jeen Broekstra
无法表达得比您更好,Jeen。 - William Greenly

3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接