A microservice architecture for the processing of large geospatial data in the Cloud
Michel Krämer · Publikationsdatenbank der Fraunhofer-Gesellschaft (Fraunhofer-Gesellschaft) · 2018
Mit der wachsenden Zahl an Geräten, die spatio-temporale Informationen aufnehmen können sowie immer besser werdenden Sensoren, steigt auch die Menge an Geodaten. Vor der Benutzung müssen die rohen gesammelten Informationen verarbeitet werden. Zurzeit greifen Experten auf desktop-basierte Geographische Informationssysteme zurück, um Prozessierungsworkflows durchzuführen. Allerdings übersteigt das Datenvolumen sowie die Komplexität der Verarbeitungsalgorithmen längst die Kapazität ihrer Workstations. Zurzeit findet ein Paradigmenwechsel von Desktop-Lösungen zur Cloud statt, aber die Entwickler von Prozessierungsalgorithmen sind oft keine Informatiker und haben deshalb wenig Erfahrung im Bereich Cloud-Computing. Unsere Forschungshypothese ist, dass eine Microservice-Architektur und domänenspezifische Sprachen genutzt werden können, um existierende Algorithmen zu orchestrieren und Workflows für die Prozessierung von Geodaten in der Cloud auszuführen, und damit eine effiziente Anwendungsentwicklung ermöglichen und die Erfahrung von Stakeholdern verbessern. Wir präsentieren eine Softwarearchitektur, die Erweiterungspunkte für Prozessierungsalgorithmen (oder Microservices) enthält, eine Workflow-Management-Komponente für die verteilte Service-Orchestrierung, und einen Workflow-Editor basierend auf einer domänenspezifischen Sprache. Ziel ist es, Benutzern und Entwicklern ohne tiefergehendes Wissen in verteilten Systemen den Zugang zur Cloud zu ermöglichen. Unsere Forschungsmethode basiert auf der Design Science Research Methodology. Wir führen eine Analyse der Problemdomäne durch und sammeln Anforderungen und Qualitätsattribute für unsere Architektur. Um unsere Forschungsziele zu erreichen, entwickeln wir die Architektur sowie Ansätze für Workflow-Management und -Modellierung. Wir stellen den Nutzen unserer Lösung dar, indem wir sie auf zwei praktische Anwendungsfälle anwenden. Außerdem evaluieren wir ihre Qualität anhand von definierten Szenarien. Abschließend führen wir eine kritische Bewertung unserer Ergebnisse durch. Unsere wissenschaftlichen Beiträge können in drei Bereiche gegliedert werden. Wir präsentieren eine skalierbare und erweiterbare Microservice-Architektur für die Geodatenprozessierung, die eine verteilte Entwicklung ermöglicht sowie eine hohe Verfügbarkeit bietet. Außerdem präsentieren wir neue Ansätze für die Service- Integration und -Orchestrierung in der Cloud sowie regelbasiertes und dynamisches Workflow-Management ohne a priori Wissen im Entwurf. Für die Workflow- Modellierung entwickeln wir eine domänenspezifische Sprache sowie eine neue Methode fürs Sprachdesign. Die Ergebnisse unserer Arbeit stützen unsere Forschungshypothese. Die Microservice- Architektur ermöglicht eine effiziente Entwicklung eines verteilten Systems. Die domänenspezifische Sprache sowie unser Ansatz zur Service-Integration verbessern die Erfahrung der Stakeholder. Unsere Arbeit stellt einen großen Schritt im Paradigmenwechsel zur Cloud dar und bietet Möglichkeiten für weitere Forschung.