2012-06-19 22 views
9

Estoy tratando de entender dos enfoques muy diferentes para compartir datos: OData y Web Semántica/Datos Vinculados. ¿Hay una buena comparación de los dos?Comparación de OData y Web Semántica/Datos Vinculados

Según tengo entendido, OData combina sindicación/CRUD (AtomPub), formatos de serialización (XML, JSON), un modelo de datos, un lenguaje de consulta y algunas semánticas/convenciones que rigen el uso de esas tecnologías existentes. Está destinado principalmente a exponer datos de un sistema para que otros puedan consumirlo.

Linked Data es un modelo de datos, un riguroso compromiso con los URI, un formato de serialización (opcional) (RDF/XML), pero (corríjame si estoy equivocado) no dice nada sobre el transporte, CRUD, etc. Parece que se pretende permitir la inferencia a través de lotes de pequeños fragmentos de datos extraídos de una amplia variedad de fuentes. (No es algo de gran importancia para nosotros en este momento: estaríamos sincronizando grandes bloques de datos entre un pequeño número de fuentes y deseando preservar la información de procedencia).

Me interesan las tecnologías para compartir datos entre ciertas plataformas de administración de datos, algunas de las cuales trabajo directamente. OData parece más atractivo, ya que es muy fácil de explicar a los desarrolladores: implementar esta API, seguir ese estándar Atom, serializar los datos de esta manera. Ya estamos haciendo algo muy similar para una plataforma: compartir datos serializados en XML en un feed Atom, con parámetros de URL utilizados para filtrar.

Por el contrario, mis experiencias pasadas trabajando con RDF me han dado una impresión de tecnología quebradiza, opaca (losas masivas de RDF/XML), inaccesible (usando SPARQL contra SQL) - pero quizás estoy confundiendo la experiencia de trabajar con una tienda triple como Jena simplemente exponiendo una base de datos existente a través de una API de datos vinculada.

Cualquier punteros, comentarios, etc. sobre las diferencias y similitudes entre estos dos enfoques en términos de alcance, tecnologías, facilidad, potencial futuro, etc. sería genial.

+0

Steve: no estoy seguro de que este sea el mejor foro para este tipo de preguntas, ya que podría prolongarse por un tiempo. Me encantaría discutir, sin embargo, ¿moverías la pregunta a http://programmers.stackexchange.com/ o me contactarías desde mi nuevo blog (bitwhys.com)? –

+2

Solo para abordar brevemente algunos de sus puntos sobre la tecnología de datos RDF/linked: "losas macizas de RDF/XML" no es la norma, y ​​suena más como una aplicación incorrecta de la tecnología. Llamar a SPARQL (a diferencia de SQL) 'inaccesible' es una cuestión de gusto, supongo. Pero SPARQL no es necesario para aplicar principios de Datos Vinculados. Es simplemente conveniente. –

+1

A partir de febrero de 2015, la Plataforma de datos vinculados es una recomendación del W3C: https://www.w3.org/TR/ldp/ LDP aborda la parte de lectura y escritura (CRUD en su pregunta) de los datos vinculados que faltaban. –

Respuesta

6

Creo que discutir esto en profundidad no es realmente lo Stackoverflow es para, pero sólo para darle algunos consejos para discusiones interesantes acerca de las diferencias y se superponen:

Una de las diferencias clave parece ser que OData no tiene medios para vincular datos de diferentes fuentes entre sí. Esencialmente, todavía estás atrapado en un silo.

También podría ser interesante verificar varios intentos de convertir datos entre los dos enfoques. Ver a.o. http://answers.semanticweb.com/questions/1298/has-anyone-written-a-mapping-from-odata-to-rdf.

+0

Gracias por los enlaces, aunque estoy de acuerdo en que "todavía estás atrapado en un silo" es exagerado. (Ver MS que declara explícitamente la destrucción del silo como un objetivo aquí: http://blogs.msdn.com/b/astoriateam/archive/2009/11/17/breaking-down-data-silos-the-open-data-protocol- odata.aspx) –

+0

@SteveBennett Bueno, lo que afirman como su objetivo y lo que realmente proporcionan no es necesariamente lo mismo, por supuesto. El punto se explora con más detalle en algunos de los artículos mencionados anteriormente. Sin embargo, no soy un experto en OData, así que tal vez he pasado por alto un mecanismo estandarizado para vincular datos. –

+0

No creo que "silo de información" sea sinónimo de "información que no puede vincularse externamente". Si puede obtener información dentro y fuera de un sistema fácilmente, en un formato estándar con semántica estándar, entonces gran parte del problema de la siloificación se va, creo. –

4

OData puede ser más fácil, pero no es mejor, de ninguna manera. SPARQL y RDF (olvidan RDF/XML, mejor mirar tortuga) satisface todo en OData además de proporcionar muchas características más de vanguardia, tales como:

  • Extensiones Federación
  • Linked Data
  • Razonamiento e inferencia (para los más valientes)

Igualmente, el software que soporta los estándares es bastante sofisticado.La mayoría de las personas interesadas en OData generalmente provienen de un fondo Microsoft, así que miren dotNetRdf

+0

Ok, pero para una tecnología que depende del efecto de red, más fácil puede significar mejor, ¿verdad? Una tecnología superior con poca absorción no vale mucho en esta área. –

+3

@Steve Bennet, dado que Facebook, Google, los gobiernos de Estados Unidos y Gran Bretaña (por nombrar algunos jugadores) producen datos vinculados en línea basados ​​en RDF, parece injustificado llamar a la tecnología "baja aceptación". –

+0

No podría haberlo dicho mejor Jeen –

Cuestiones relacionadas