OData

OData ist ein von Microsoft definiertes, HTTP-basiertes Protokoll für den Datenzugriff zwischen kompatiblen Softwaresystemen. So ist auch eine Integration von Daten aus den unterschiedlichsten Quellen möglich – Nutzer, können jederzeit und überall ihre Daten sicher und schnell konsumieren.

Open Data heißt ins Deutsche übersetzt: Offene Daten, also Daten, die von allen Verantwortlichen ohne große Einschränkungen genutzt, weiterverbreitet und weiterverwendet werden können. Der Hintergedanke der „offenen Daten“ ist, dass diese zu mehr Transparenz und kollaborativerer Arbeit führen sollen. Dieser Gedanke steckt auch hinter dem Open Data Protocol.

Anna, 32 Jahre alt und Leiterin der Marketingabteilung eines mittelständischen Unternehmens, muss in ihrem Berufsalltag viele Termine wahrnehmen. Ob inhouse oder extern – sie erwartet jederzeit und von überall aus einen grenzenlosen Zugriff auf Unternehmensdaten über ihren Laptop und ihr Smartphone.

In Meetings muss sie sich darauf verlassen können, dass relevante Daten sicher bereitgestellt und mobil abrufbar sind. Für Anna, als Konsumentin der Daten, ist der Weg dorthin zweitrangig – Hauptsache sie hat uneingeschränkten Zugriff auf ihre Daten. Das Unternehmen ist jedoch dafür zuständig, diesen Komfort durch die richtige Technologie bereitzustellen.

Zudem ist heutzutage ein Daten-Mashup, also die Verknüpfung interner Daten mit externen Datenquellen, für ein produktiveres und effizienteres Arbeiten keine Seltenheit mehr, wodurch sich im Umkehrschluss die Anzahl der Webschnittstellen beträchtlich erhöht hat: Diesen hohen Anforderungen wird OData, das Open Data Protocol, gerecht.

Ein standardisiertes Protokoll für das Konsumieren und Entwickeln von RESTful-APIs

Durch die mittlerweile weit verbreitete Nutzung der Cloud tauchen eine Vielzahl von Webschnittstellen (APIs= Application Programming Interface) auf, um Webdienste verfügbar zu machen.

REST (Representational State Transfer) ist ein Programmierparadigma, dass das Ziel verfolgt, eine einheitliche Architektur für APIs zu erstellen. Diese APIs ermöglichen es dann Endbenutzern, sich problemlos mit Clouddiensten zu verbinden und mit ihnen zu interagieren. Eine RESTful API verwendet HTTP-Anfragen, um per GET, PUT, POST und DELETE auf Daten zugreifen zu können:

  • PUT: Eine Ressource (Objekt, Datei, Block) ändern oder aktualisieren
  • GET: Eine Ressource abrufen
  • POST: Eine neue Ressource erstellen
  • DELETE: Eine Ressource löschen

Nachdem Microsoft die Weiterentwicklung von OData an das OASIS Konsortium (OASIS=Organization for the Advancement of Structured Information Standards) – eine Organisation, die sich mit der Weiterentwicklung von Webservice-Standards beschäftigt – übergeben hat, haben diese OData als ein Best Practice standardisiert, um RESTful APIs sicher zu entwickeln und zu konsumieren.

OData ist somit ein Webstandard, an dem sich jeder in der Entwicklung beteiligen kann – so auch SAP.

Im Klartext heißt das: OData ist ein standardisiertes Protokoll, das auf der REST-Architektur basiert. Das Ergebnis? RESTful OData APIs. Hierbei handelt es sich um eine ideale Lösung, eine Symbiose, die es dem Endbenutzer erlaubt, sich mit Clouddiensten zu verbinden und mit ihnen zu interagieren.

E-Book: App-Entwicklung

In diesem E-Book geht es um die Entwicklung von Enterprise-Apps mit SAPUI5 und OData.

Das Datenmodell Entity Data Model (EDM)

Wenn wir nun von relationalen Datenbanken oder Textdateien ausgehen – also Daten, die in einem Format über mehrere Plattformen gespeichert und bearbeitet werden können – dann besteht auf der Seite der Entwickler die Herausforderung darin, einen effizienten und verwaltbaren Code zu schreiben, ohne auf den Komfort des effizienten Datenzugriffs auf Seiten des Nutzers zu verzichten.

Generell ist es schwierig, bei der Bearbeitung und Speicherung von Daten zwischen mehreren Einheiten eine richtige Balance zwischen den beiden Komponenten – Entwicklung und Usability – zu finden. An dieser Stelle kommt das Entity Data Model als geeignete Lösung zum Einsatz:

Das EDM beschreibt die Datenstruktur in Bezug auf Entitäten und Beziehungen, die völlig unabhängig von einem Speicherschema sind, wodurch die gespeicherte Datenform unabhängig von Anwendungsentwurf und Entwicklung wird.

Dieses besteht im Wesentlichen aus Entitäten, die zueinander in Verbindung gesetzt werden. Dabei ist eine Entity ein Teil eines sogenannten EntitySets. Verbindungen zwischen diesen werden in der Regel über Assoziationen repräsentiert.

Um auch tiefe Strukturen, also komplex verschachtelte Elemente abzubilden, können sogenannte Navigation Properties verwendet werden. Mit dieser einfachen, standardisierten Herangehensweise wurde sich auf eine Art der Datenrepräsentation geeinigt, die zugleich mächtig, als auch verständlich ist.

Vorteile von OData

Was wir also heutzutage brauchen ist ein Protokoll, das es uns ermöglicht, flexibel auf unsere Datenbanken zugreifen und valide Daten im Web verändern, hinzufügen, löschen und updaten zu können. Und das alles in einem kollaborativen Ansatz. Damit wir – auch trotz dezentraler Firmenstrukturen – im Team arbeiten können.

OData erfüllt diese Ansprüche, da dieses Protokoll komplett Plattform- und Technologie- sowie Programmiersprachenunabhängig ist. Es kann innerhalb von Cloud-Diensten eingebunden werden und ist in der Lage, in der Client-Server-Kommunikation eine einheitliche Semantik für den Datenaustausch zur Verfügung zu stellen.

Somit können CRUD-Operationen barrierefrei durchgeführt werden. CRUD ist ein Akronym, das die Datenbankoperationen Create, Read, Update und Delete umfasst:

  • Create: Datensätze anlegen
  • Read: Datensätze lesen
  • Update: Datensätze aktualisieren
  • Delete: Datensätze löschen

Zu den klaren Vorteilen von OData zählen also die Möglichkeit einer konsistenten sowie strukturierten Entwicklung von Webschnittstellen, die Plattform-, Technologie- und Programmiersprachenunabhängikeit und die Automatisierung durch Metadaten. Zudem erzeugt OData einfach lesbare Requests:

  • [Service URL] /ServiceName/Person
    • Liefert alle Entities vom Typ Person zurück
  • [Service URL] /ServiceName/Person(‚Anna‘)

Liefert eine spezifische Entity zurück, in unserem Fall die Person mit Namen Anna. Dies erleichtert sowohl die Entwicklung, als auch die Verarbeitung und den Test.

OData Formate

Die Daten oder Ressourcen werden im OData-Protokoll in zwei Formaten ausgegeben: AtomPub (Atom Publishing Protocol) und JSON (JavaScript Object Nation).

AtomPub

AtomPub bietet die Möglichkeit, Webinhalte auf der Basis von HTML und XML zu erstellen und zu bearbeiten. Die Kommunikation mit dem Server funktioniert, wie bereits beschrieben, nach den REST-Prinzipien.

JSON

JSON ist ein programmiersprachenunabhängiges Datenaustauschformat, das für Menschen einfach zu lesen und zu schreiben und für Maschinen wiederum einfach zu parsen ist.

Die Idee hinter OData ist die Abschaffung komplexer Standardkommunikationsprotokolle, in denen die Kommunikation zwischen einem Server und einer Anwendung erst aufwändig formatiert werden muss.

Testen von OData Services mit Postman

Wie zuvor unter dem Punkt Entity Data Model beschrieben, ist die Entwicklung von Webschnittstellen ziemlich komplex und muss vielen Anforderungen gerecht werden. Postman ist ein Tool, das die komplette API-Entwicklungs-Umgebung abbildet.

Developing APIs is hard. Postman makes it easy.

Von der Entwicklung über das Testen und der Dokumentation bis hin zum Fertigstellen der Webschnittstelle bietet Postman dabei die ideale Unterstützung, die Entwicklung schnell und effizient durchzuführen. Dieses Tool wird als Browser-Add-on oder als Stand-Alone zur Verfügung gestellt.

Durch die sehr einfache Bedienung können Entwickler Mock-Services erstellen, wobei anhand von Dummy-Daten eine Webschnittstelle simuliert und getestet wird, ohne auf ein fertiggestelltes Front- sowie Backend angewiesen zu sein.

Das heißt im Umkehrschluss, dass durch Postman erst Tests geschrieben und durchgeführt werden können, bevor die eigentliche Entwicklung der finalen Webschnittstelle erfolgt – test-driven development.

Für Entwickler ist Postman eine gute Möglichkeit, OData Services zu testen und alle Eventualitäten durchzuspielen, bevor es an die finale Entwicklung geht.

Sprechen Sie OData?

Abschließend können wir festhalten, dass OData die Beschreibung von Datenmodellen und die Bearbeitung der dazugehörigen Daten unterstützt, was eine einheitliche Semantik und somit eine Interoperabilität zwischen den Systemen gewährleistet. Dadurch kann ein einheitliches Ökosystem für den Datenaustausch entstehen.

Das OASIS Konsortium hat somit eine Technologie standardisiert, die sowohl die Abfrage von Daten, als auch das Versenden von Daten – also das Senden einer Payload ermöglicht. Dieser Standard ist wichtig, da heutzutage, neben Microsoft- auch andere Hersteller wie SAP und weitere namenhafte Anbieter OData Services nutzen.

So verwenden z.B.  SAP Fiori Apps OData, wodurch Anna als Nutzer, je nach Zugriffsrechten, auf SAP-Daten zugreifen und diese bearbeiten kann.

OData ist für mobile Anwendungen ein essentielles Protokoll, das wir von Mission Mobile verstehen und effizient auf Ihre mobilen Geschäftsprozesse anwenden können. Haben Sie Fragen bezüglich des Open Data Protocols? Ich bin mir sicher, dass ich Ihnen weiterhelfen kann. Kontaktieren Sie mich gerne unter magnucki@mission-mobile.de.



Das könnte Sie auch interessieren:



Unsere Produkte zu OData

"SAP Logiken in einer anschaulichen, modernen Oberfläche? Stundenerfassung mit dem iPhone? Modernste User-Experience auf Notebooks, Tablets und Smartphones anstelle traditioneller SAP GUI? Einfaches Verwenden von ESS und MSS Anwendungen?"

Mehr Informationen

Mit unserer SAP Mobile Einführung begleiten wir Sie auf dem Weg in die mobile Zukunft - von der ersten Beratung bis zur Produktivsetzung und darüber hinaus. Wir liefern Ihnen das Rund-um-sorglos Paket. Unser standardisiertes Vorgehen für SAP Mobile Einführungen hat sich bewährt.

Mehr Informationen

Sie wollen Salesforce mobil nutzen, aber die mobile Standard-Applikation des Softwareherstellers erfüllt nicht Ihre Anforderungen? Mit Salesforce Mobile bieten wir Ihnen die Möglichkeit, Ihre Salesforcedaten auf mobilen Endgeräten auszuwerten & zu bearbeiten.

Mehr Informationen

Schreiben Sie einen Kommentar

Bitte füllen Sie alle mit * gekennzeichneten Felder aus. Ihre E-Mail Adresse wird nicht veröffentlicht.





Angebot anfordern
Preisliste herunterladen
Expert Session
Support