我试图理解数据共享的两种非常不同的方法: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公开现有数据库的经验混淆了。
在范围、技术、易用性、未来潜力等方面,这两种方法的差异和相似之处有任何指针、评论等都将是极好的。
据我所知,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公开现有数据库的经验混淆了。
在范围、技术、易用性、未来潜力等方面,这两种方法的差异和相似之处有任何指针、评论等都将是极好的。