Quantcast
Viewing all articles
Browse latest Browse all 10

OData für Backends

OData (Open Data Protocol) ist ein Protokoll für den Datenzugriff und besteht aus mehreren Spezifikationen. Es wurde von Microsoft entwickelt und wird mittlerweile von der Standardisierungsorganisation OASIS weiterentwickelt. Es dient der Erstellung REST-basierter Web Services und ermöglicht CRUD-Zugriff auf Ressourcen über URIs via HTTP.

Was unterscheidet OData von REST?

REST (REpresentational State Transfer) an sich ist nur ein Architekturstil und viele Aspekte wie z.B. das Datenformat sind nicht vorgeschrieben. Zwar wurden in der ersten Beschreibung von REST durch Roy Fielding einige Kriterien beschrieben, welche einen RESTful Web Service ausmachen, und es haben sich auch in der Fachliteratur Best Practices für die Implementierung durchgesetzt, jedoch werden diese meist unvollständig und uneinheitlich umgesetzt. Das führt dazu, dass Entwickler von Applikationen, welche REST APIs konsumieren, die entsprechende Anbindung für jeden Dienst von Grund auf neu entwickeln müssen.

OData setzt auf die bewährten Eigenschaften von REST auf und legt dabei aber eine Vielzahl an Standards fest. So werden als Formate für die Repräsentation von Ressourcen lediglich JSON und Atom verwendet. Das Datenmodell (Entity Data Model, EDM) wird in der Common Schema Definition Language (CSDL) beschrieben. Auch die Querysynstax zur Filterung bestimmter Daten ist festgeschrieben.

Vorteile von OData

Die beschriebenen Eigenschaften machen deutlich: OData ist ein Standard, der es Entwicklern erleichtert, RESTful Web Services zu erstellen und zu konsumieren. Vor allem die Beschreibung des Datenmodells durch das EDM ist bei datenorientierten Web Services ein großer Gewinn.

Noch ist OData nicht weit verbreitet, jedoch findet es in einigen Enterprise Produkten wie IBM WebSphere und SAP NetWeaver Gateway Verwendung.

OData und apiOmat

Unsere REST API unterstützt bisher noch kein OData, ist also noch kein sog. OData Producer. Aber wir evaluieren OData derzeit und prüfen, ob wir OData in Zukunft anbieten werden.

Wenn du daran interessiert bist, dann vote beim entsprechenden Feature Request.


Viewing all articles
Browse latest Browse all 10