title: Supporting Quality of Service in Scientific Workflows
title: Supporting Quality of Service in Scientific Workflows
Creators: name: Dörnemann, Tim
Publisher: name: Philipps-Universität Marburg
Year: 2012
Subjects: Cloud Computing
Workflow
Hochleistungsrechnen
Web Services
Informatik
Prozessmanagement
High Performance Computing
Business Process Execution Language
Scheduling
Fehler
Grid Computing

description: Während Unternehmen bereits seit
      zwei Jahrzehnten auf Workflow-Systeme zur Modellierung und
      Ausführung von komplexen, IT-gestützten Arbeitsabläufen
      (Geschäftsprozesse) zurückgreifen, kommen derartige
      Technologien im wissenschaftlichen Umfeld erst seit wenigen
      Jahren verbreitet zum Einsatz. Seitdem wurde von
      Wissenschaftlern eine Reihe von Workflow-Systemen entwickelt,
      mit deren Hilfe komplexe Experimente modelliert und
      ausgeführt werden können. Dabei handelt es sich meist um
      rechenintensive, auf verteilten Rechnersystemen berechnete,
      Simulationen. Die bisher entwickelten wissenschaftlichen
      Workflow-Systeme sind in der Regel stark auf die
      Besonderheiten der Anwendungsfälle der jeweiligen
      Wissenschaftsdomäne ausgerichtet und können daher in anderen
      Anwendungsgebieten schlecht oder gar nicht eingesetzt werden.
      Ausserdem wurden die Workflow-Systeme oft sehr eng an
      bestimmte Technologien (z.B. eine Grid-Middleware) gekoppelt
      und sind daher ebenfalls in ihrer Wiederverwendbarkeit
      eingeschränkt. In dieser Doktorarbeit wird daher
      vorgeschlagen, den Industriestandard BPEL, eine
      Workflow-Sprache zur Modellierung von Geschäftsprozessen, zur
      Modellierung und Ausführung von wissenschaftlichen Workflows
      zu verwenden. Durch die grosse Verbreitung von BPEL im
      kommerziellen Umfeld existiert eine Reihe von stabilen und
      ausgereiften Software-Produkten, die auch im
      wissenschaftlichen Umfeld eingesetzt werden könnten.
      Weiterhin ist die Sprache sehr ausdrucksstark
      (Turing-vollständig) und nicht auf bestimmte
      Anwendungsbereiche eingeschränkt. Der Standard wird zunächst
      auf seine Anwendbarkeit zur Modellierung von
      wissenschaftlichen Workflows hin untersucht. Während BPEL
      sehr gut zur Modellierung geeignet ist, fehlen existierenden
      Implementierungen des Standards wichtige Fähigkeiten, die zur
      Ausführung von wissenschaftlichen Workflows notwendig sind.
      Diese Arbeit präsentiert daher Komponenten, die eine
      existierende Implementierung des BPEL-Standards erweitern und
      die identifizierten Schwachstellen beseitigen. Sie stellen
      somit die technische Grundlage zur Verwendung von BPEL im
      wissenschaftlichen Umfeld dar. Der besondere Fokus liegt
      dabei auf sog. nichtfunktionalen Anforderungen bezüglich der
      Dienstgüte (Quality of Service). Darunter sind insbesondere
      Anforderungen wie Skalierbarkeit, Zuverlässigkeit
      (Fehlertoleranz), Datensicherheit und Kosten (der Ausführung
      eines Workflows) zu verstehen. Aus technischer Sicht muss das
      Workflow-System gängige Middleware-Systeme unterstützen, um
      den Zugriff auf verschiedenartige, verteilte Ressourcen
      (insbesondere Grid und Cloud-Ressourcen) zu ermöglichen. Die
      entwickelten Hauptkomponenten decken genau diese
      Anforderungen ab: Cloud Resource Provisioner Skalierbarkeit
      wird durch die automatisierte Hinzunahme von weiteren (Cloud)
      Ressourcen erreicht, wenn das Workflow-System stark
      ausgelastet ist. Fault Tolerance Module Hohe Zuverlässigkeit
      wird durch kontinuierliche Überwachung der
      Workflow-Ausführung und korrigierender Eingriffe, wie erneute
      Ausführung eines fehlgeschlagenenWorkflow-Schritts oder
      Austausch der fehlerhaften Ressource, erreicht. Cost And Data
      Flow Aware Scheduler Viele Workflow-Systeme berücksichtigung
      bei der Auswahl von Ressourcen zur Ausührung der einzelnen
      Workflow- Schritte nur die Leistungsfähigkeit und Auslastung
      in Frage kommender Ressourcen. Das hier präsentierte System
      geht darüber hinaus: Der Workflow- Nutzer kann durch Angabe
      von Präferenzwerten entscheiden, welchen Einfluss Kosten und
      zu erwartende Workflow-Ausführungsdauer auf die Auswahl von
      Ressourcen haben soll. Der entwickelte multikriterielle
      Scheduling-Algorithmus beachtet die definierte Gewichtung und
      trifft durch den Einsatz eines heuristischen Verfahrens
      schnelle und gute Auswahlentscheidungen. Security Extensions
      Durch die Unterstützung verschiedener Verschlüsselungs-,
      Signatur- und Authentisierungsmechanismen (insbesondere Grid
      Security Infrastructure) wird Datensicherheit bei der
      Übertragung von Workflow-Daten garantiert. Weiterhin
      identifiziert diese Arbeit die Notwendigkeit,
      Workflow-Entwicklern intuitiv bedienbare Werkzeuge zur
      Workflow-Modellierung zur Verfügung zu stellen. Es werden
      zwei Modellierungswerkzeuge präsentiert, die Anwender mit
      unterschiedlichen Bedürfnissen unterstützen. DAVO
      (Domain-adaptable, Visual BPEL Orchestrator) arbeitet auf
      einem niedrigen Abstraktionsniveau und erlaubt es Anwendern
      mit Kenntnissen in BPEL, den vollen Umfang der Sprache zu
      nutzen. DAVO ist eine Software mit umfangreichen
      Erweiterungs- und Anpassungsmöglichkeiten. Diese Fähigkeiten
      werden bei der Umsetzung des zweiten Werkzeugs, SimpleBPEL
      Composer, genutzt. SimpleBPEL richtet sich an Anwender mit
      geringen Informatik- Kenntnissen und ermöglicht die schnelle
      und intuitive Entwicklung von BPELWorkflows auf Basis
      vordefinierter Bausteine.
description: While workflow management systems
      have been utilized in enterprises to support businesses for
      almost two decades, the use of workflows in scientific
      environments was fairly uncommon until recently. Nowadays,
      scientists use workflow systems to conduct scientific
      experiments, simulations, and distributed computations.
      However, most scientific workflow management systems have not
      been built using existing workflow technology; rather they
      have been designed and developed from scratch. Due to the
      lack of generality of early scientific workflow systems, many
      domain-specific workflow systems have been developed.
      Generally speaking, those domain-specific approaches lack
      common acceptance and tool support and offer lower robustness
      compared to business workflow systems. In this thesis, the
      use of the industry standard BPEL, a workflow language for
      modeling business processes, is proposed for the modeling and
      the execution of scientific workflows. Due to the widespread
      use of BPEL in enterprises, a number of stable and mature
      software products exist. The language is expressive
      (Turingcomplete) and not restricted to specific applications.
      BPEL is well suited for the modeling of scientific workflows,
      but existing implementations of the standard lack important
      features that are necessary for the execution of scientific
      workflows. This work presents components that extend an
      existing implementation of the BPEL standard and eliminate
      the identified weaknesses. The components thus provide the
      technical basis for use of BPEL in academia. The particular
      focus is on so-called non-functional (Quality of Service)
      requirements. These requirements include scalability,
      reliability (fault tolerance), data security, and cost (of
      executing a workflow). From a technical perspective, the
      workflow system must be able to interface with the middleware
      systems that are commonly used by the scientific workflow
      community to allow access to heterogeneous, distributed
      resources (especially Grid and Cloud resources). The major
      components cover exactly these requirements: Cloud Resource
      Provisioner Scalability of the workflow system is achieved by
      automatically adding additional (Cloud) resources to the
      workflow system’s resource pool when the workflow system is
      heavily loaded. Fault Tolerance Module High reliability is
      achieved via continuous monitoring of workflow execution and
      corrective interventions, such as re-execution of a failed
      workflow step or replacement of the faulty resource. Cost
      Aware Data Flow Aware Scheduler The majority of scientific
      workflow systems only take the performance and utilization of
      resources for the execution of workflow steps into account
      when making scheduling decisions. The presented workflow
      system goes beyond that. By defining preference values for
      the weighting of costs and the anticipated workflow execution
      time, workflow users may influence the resource selection
      process. The developed multiobjective scheduling algorithm
      respects the defined weighting and makes both efficient and
      advantageous decisions using a heuristic approach. Security
      Extensions Because it supports various encryption, signature
      and authentication mechanisms (e.g., Grid Security
      Infrastructure), the workflow system guarantees data security
      in the transfer of workflow data. Furthermore, this work
      identifies the need to equip workflow developers with
      workflow modeling tools that can be used intuitively. This
      dissertation presents two modeling tools that support users
      with different needs. The first tool, DAVO (domain-adaptable,
      Visual BPEL Orchestrator), operates at a low level of
      abstraction and allows users with knowledge of BPEL to use
      the full extent of the language. DAVO is a software that
      offers extensibility and customizability for different
      application domains. These features are used in the
      implementation of the second tool, SimpleBPEL Composer.
      SimpleBPEL is aimed at users with little or no background in
      computer science and allows for quick and intuitive
      development of BPEL workflows based on predefined
      components.