Abstract (deu)
Im Gegensatz zu dem traditionellen Begriff eines Supercomputers, der aus vielen mittels
superschneller, lokaler Netzwerkverbindungen miteinander verbundenen Superrechnern
besteht, basieren heterogene Computerumgebungen auf "kompletten" Computersystemen,
die mit Hilfe eines herkömmlichen Netzwerkanschlusses an private oder öffentliche Netzwerke angeschlossen sind. Der Bereich des Computernetzwerkens hat sich über die letzten drei Jahrzehnte entwickelt und ist, wie viele andere Technologien, in bezug auf Performance, Funktionalität und Verlässlichkeit extrem gewachsen. Zu Beginn des 21.Jahrhunderts zählt das betriebssichere Hochgeschwindigkeitsnetz genauso zur Alltäglichkeit wie Elektrizität, und auch Rechnerressourcen sind, was Verfügbarkeit und universellen Gebrauch anbelangt, ebenso Standard wie elektrischer Strom.
Wissenschafter haben für die Verwendung von heterogenen Grids bei verschiedenen rechenintensiven Applikationen eine Architektur von computational Grids konzipiert und
darin Modelle aufgesetzt, die zum einen Rechenleistungen defnieren und zum anderen
die komplexen Eigenschaften der Grid-Organisation vor den Benutzern verborgen halten.
Somit wird die Verwendung für den Benutzer genauso einfach wie es möglich ist elektrischen Strom zu beziehen. Grundsätzlich existiert keine generell akzeptierte Definition für Grids. Einige Wissenschafter bezeichnen sie als hochleistungsfähige verteilte Umgebung.
Manche berücksichtigen bei der Definierung auch die geographische Verteilung und ihre
Multi-Domain-Eigenschaft. Andere Wissenschafter wiederum definieren Grids über die
Anzahl der Ressourcen, die sie verbinden.
Parallele Datenbanksysteme haben in den letzten zwei Jahrzehnten große Bedeutung
erlangt, da das rechenintensive wissenschaftliche Arbeiten, wie z.B. auf dem Gebiet der
Bioinformatik, Strömungslehre und Hochenergie physik die Verarbeitung riesiger verteilter
Datensätze erfordert. Diese Tendenz resultierte daraus, dass man von der fehlgeschlagenen
Entwicklung hochspezialisierter Datenbankmaschinen zur Verwendung herkömmlicher
paralleler Hardware-Architekturen übergegangen ist. Grundsätzlich wird die gleichzeitige
Abarbeitung entweder durch verteilte Datenbankoperationen oder durch Datenparallelität
gelöst. Im ersten Fall wird ein unterteilter Abfragenabarbeitungsplan durch verschiedene
Datenbankoperatoren parallel durchgeführt. Im Fall der Datenparallelität erfolgt eine
Unterteilung der Daten, wobei mehrere Prozessoren die gleichen Operationen parallel an
Teilen der Daten durchführen.
Es liegen genaue Analysen von parallelen Datenbank-Arbeitsvorgängen für sequenzielle
Prozessoren vor. Eine Reihe von Publikationen haben dieses Thema abgehandelt
und dabei Vorschläge und Analysen für parallele Datenbankmaschinen erstellt.
Bis dato existiert allerdings noch keine spezifische Analyse paralleler Algorithmen mit dem
Fokus der speziellen Eigenschaften einer "Grid"-Infrastruktur.
Der spezifische Unterschied liegt in der Heterogenität von Grid-Ressourcen. In "shared
nothing"-Architekturen, wie man sie bei klassischen Supercomputern und Cluster-
Systemen vorfindet, sind alle Ressourcen wie z.B. Verarbeitungsknoten, Festplatten und
Netzwerkverbindungen angesichts ihrer Leistung, Zugriffszeit und Bandbreite üblicherweise
gleich (homogen). Im Gegensatz dazu zeigen Grid-Architekturen heterogene Ressourcen
mit verschiedenen Leistungseigenschaften. Der herausfordernde Aspekt dieser Arbeit bestand
darin aufzuzeigen, wie man das Problem heterogener Ressourcen löst, d.h. diese Ressourcen einerseits zur Leistungsmaximierung und andererseits zur Definition von Algorithmen
einsetzt, um die Arbeitsablauf-Orchestrierung von Datenbankprozessoren zu
optimieren.
Um dieser Herausforderung gerecht werden zu können, wurde ein mathematisches Modell
zur Untersuchung des Leistungsverhaltens paralleler Datenbankoperationen in heterogenen
Umgebungen, wie z.B. in Grids, basierend auf generalisierten Multiprozessor-
Architekturen entwickelt. Es wurden dabei sowohl die Parameter und deren Einfluss auf
die Leistung als auch das Verhalten der Algorithmen in heterogenen Umgebungen beobachtet.
Dabei konnte man feststellen, dass kleine Anpassungen an den Algorithmen zur
signifikanten Leistungsverbesserung heterogener Umgebungen führen. Weiters wurde eine
graphische Darstellung der Knotenkonfiguration entwickelt und ein optimierter Algorithmus,
mit dem ein optimaler Knoten zur Ausführung von Datenbankoperationen gefunden
werden kann.
Diese Ergebnisse zum neuen Algorithmus wurden durch die Implementierung in einer serviceorientierten Architektur (SODA) bestätigt. Durch diese Implementierung konnte
die Gültigkeit des Modells und des neu entwickelten optimierten Algorithmus nachgewiesen
werden.
In dieser Arbeit werden auch die Möglichkeiten für eine brauchbare Erweiterung des
vorgestellten Modells gezeigt, wie z.B. für den Einsatz von Leistungskennziffern für Algorithmen zur Findung optimaler Knoten, die Verlässlichkeit der Knoten oder Vorgehensweisen/Lösungsaufgaben zur dynamischen Optimierung von Arbeitsabläufen.