Anforderungen neuer DB Systeme durch Grid Computing

Werbung
Thema: Anforderungen neuer DB Systeme durch
Grid Computing
Studienarbeit
von
Lars Franke
aus Rudolstadt
BERUFSAKADEMIE LÖRRACH
– STAATLICHE STUDIENAKADEMIE –
UNIVERSITY OF COOPERATIVE EDUCATION
Ausbildungsbereich Wirtschaft
Betreuende(r) Dozent(-in):
Abgabetermin:
Kurs:
Fachrichtung
Unternehmen
Betreuer(in) im Betrieb:
Dirk Ücker
8. März 2004
WWI01B
Wirtschaftsinformatik
Delta Energy Solution AG
Jörg Sobottka
Ehrenwörtliche Erklärung
Ich versichere hiermit, dass ich meine Studienarbeit mit dem Thema
Anforderungen neuer DB Systeme durch Grid Computing
selbstständig verfasst und keine anderen als die angegebenen Quellen und Hilfsmittel benutzt
habe.
Basel, 08.04.2017
Anforderungen neuer DB Systeme durch Grid Computing 2
Kurzfassung
In dieser Studienarbeit geht es hauptsächlich um Grid Computing und Datenbanken. Es wird
kurz erklärt, was ein Cluster und ein Grid ist. Die Entwicklung dieser Techniken wird aufgezeigt.
Daraufhin werden die Anforderungen an Datenbanken im Grid erarbeitet. Diverse
Anforderungen im Bereich der Clustertechnik, der Informationsverwaltung, des
Ressourcenmanagement, der Einhaltung von Standards, der Portabilität, Sicherheit sowie
Selbstverwaltung werden erarbeitet. Alle diese Punkte werden durch spezielle Techniken
umgesetzt und optimiert. Einen grossen Teil der Arbeit ist die Umsetzung dieser Anforderungen
durch die Firma Oracle Mit deren neuer Datenbank 10g, einer Grid – fähige Datenbank, sollen
neue Leistungsressourcen ausgeschöpft werden. Die Datenbank selbst bringt schon viele
Werkzeuge mit, um einen Grid zu realisieren. Der Leser soll einen Eindruck erhalten über die
unterschiedlichen Werkzeuge von Oracle, und ob die erarbeiteten Anforderungen erfüllt wurden.
Anforderungen neuer DB Systeme durch Grid Computing 3
Inhaltsverzeichnis
Seite
Ehrenwörtliche Erklärung ...................................................................................2
Kurzfassung.........................................................................................................3
Abkürzungsverzeichnis ......................................................................................6
Abbildungsverzeichnis .......................................................................................7
Tabellenverzeichnis.............................................................................................8
1
Einleitung.....................................................................................................9
1.1
1.2
1.3
1.4
Motivation............................................................................................................. 9
Problemstellung und -abgrenzung ..................................................................... 9
Ziel der Arbeit..................................................................................................... 10
Vorgehen ............................................................................................................ 10
2
Grundlagen ................................................................................................ 11
2.1
2.2
2.3
2.4
Definition von Clustern und Grid Computing ................................................... 11
Entstehung von Clustering und Grid Computing ............................................. 11
Die Entwicklung von Grid Computing .............................................................. 12
Grid Computing als Nachfolger des Internet ................................................... 13
3
Anforderungen an Datenbanken im Grid ................................................14
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
Anforderungen an die Clustertechnik .............................................................. 14
Anforderungen an die Informationsverwaltung............................................... 15
Anforderungen an Ressourcenmanagement ................................................... 15
Anforderung an Einhaltung von Standards ..................................................... 15
Anforderungen an die Portabilität .................................................................... 16
Anforderungen an die Sicherheit...................................................................... 16
Anforderungen an ein Selbstverwaltendes System ........................................ 17
Zusammenfassung ............................................................................................ 18
4
Lösungskonzept am Beispiel von Oracle 10g, Grid Datenbank ...........19
4.1
4.2
4.3
Oracle Real Application Cluster (RAC) ............................................................. 19
Resonanzen ....................................................................................................... 20
Informationsaustausch bei Oracle ................................................................... 21
4.3.1 Oracle Transportable Tablespaces ........................................................... 21
4.3.2 Oracle Streams ........................................................................................ 21
4.3.3 Distributed SQL und Distributed Transactions .......................................... 21
4.3.4 Heterogener Zugang mit gewöhnlichen Verbindungen und transparentem
Gateways ................................................................................................. 22
4.3.5 Externe Tabellen und BFILES................................................................... 22
Scheduling und Ressourcenmanagement ....................................................... 22
Einhaltung von Standards ................................................................................. 23
Portabilität .......................................................................................................... 23
Sicherheitsmechanismen .................................................................................. 24
4.7.1 Enterprise User Security........................................................................... 24
4.7.2 Virtual Private Database ........................................................................... 24
4.7.3 Oracle Label Security ............................................................................... 24
4.4
4.5
4.6
4.7
Anforderungen neuer DB Systeme durch Grid Computing 4
4.8
4.9
Selbst verwaltende Datenbank ......................................................................... 24
4.8.1 Höchste Verfügbarkeit .............................................................................. 25
4.8.2 Selbst führend .......................................................................................... 25
4.8.3 Oracle Enterprise Manager Grid Control .................................................. 25
Zusammenfassung ............................................................................................ 26
5
Erreichte Ergebnisse und Ausblick .........................................................27
5.1
5.2
Erreichte Ergebnisse ......................................................................................... 27
Ausblick ............................................................................................................. 27
Quellenverzeichnis ............................................................................................28
Stichwortverzeichnis.........................................................................................29
Anforderungen neuer DB Systeme durch Grid Computing 5
Abkürzungsverzeichnis
IT
Informations Technologie
TCO
Total Cost of Ownership
SMP
Symmetric Multiprocessing
SQL
Structured Query Language
ODBC
Open Database Connectivity
OLEDB
Object Linking and Embedding Database
SDK
Software Developement Kit
DBA
Database Administrator
OEMGC
Oracle Enterprise Manager Grid Control
SSL
Secure Socket Layer
GGF
Global Grid Forum
DB
Datenbank
DBMS
Datenbank Management System
z.B.
zum Beispiel
RAC
Real Application Cluster
Usw.
Und so weiter
PL/SQL
Programming Language / Structured Query Language
API
Application Programming Interface
VPD
Virtual Private Database
GUI
Graphical User Interface
Anforderungen neuer DB Systeme durch Grid Computing 6
Abbildungsverzeichnis
Seite
Abbildung 1: Die Entwicklung von Grid Computing ..................................................... 12
Abbildung 2: Shared Disk vs. Shared Nothing Architektur ........................................... 20
Anforderungen neuer DB Systeme durch Grid Computing 7
Tabellenverzeichnis
Seite
Tabelle 1: Anforderungen von DB Systemen im Grid................................................... 18
Anforderungen neuer DB Systeme durch Grid Computing 8
1 Einleitung
1.1
Motivation
Zur heutigen Zeit ist es normal, dass Informationen über das Internet ausgetauscht werden. Doch
was wäre, wenn die heutige Infrastruktur des Internet noch effektiver genutzt werden könnte? Es
ist heute schon möglich über das Internet nicht nur Informationen, sondern auch Rechenleistung
oder Speicherkapazität gemeinsam zu nutzen. So könnten ungenutzte Ressourcen mehrerer
Computer zur Verfügung gestellt werden, um einen ausgelasteten Rechner zu entlasten.
Datenbanken benötigen immer sehr viele Ressourcen, da sie grosse Datendateien möglichst
schnell bearbeiten müssen. Für Datenbankanwendungen ist es also ein sehr grosser Vorsprung,
wenn auch die Ressourcen von anderen Rechnern mitgenutzt werden können. Dadurch können
nicht nur die vorhandenen IT - Systeme effizient genutzt werden, es folgt auch automatisch eine
Senkung der TCO im IT Bereich.
Grid Computing ist der Nachfolger des Internet. Das ist bei vielen Firmen zu sehen. Oracle
ändert z.B. den Namen seiner neusten Datenbank von ursprünglich Oracle 9i (i wie Internet)
nach Oracle 10g (g wie Grid Computing). Auch für IBM ist Grid Computing eine
Schlüsseltechnologie, hier werden jährlich mehr als 4 Mrd. $ in Grid Computing investiert. Grid
Computing basiert auf offene Standards und ist eine zukunftsfähige Technologie. Wer sich mit
Grid Technologien beschäftigt, kann mit Sicherheit einen Nutzen daraus ziehen.
1.2
Problemstellung und -abgrenzung
„Datenbanksysteme finden ihren Einsatz in bestimmten Gebieten, in denen sie möglichst
aktuelle Auskünfte über deren Sachverhalte und Vorgänge geben sollen. Um diese Auskünfte
geben zu können, bedarf es einer sehr hohen Performanz sowie Ausfallsicherheit des Systems.
Die benötigte Performanz und Geschwindigkeit, aber auch die Verfügbarkeit des Systems wird
einerseits durch die entsprechende Hardware garantiert, andererseits ist eine möglichst
zielbewusste Einteilung der vorhandenen Ressourcen unabdingbar.“1 In der Vertiefungsarbeit des
Autors vom 28.07.2003 mit dem Titel „Architekturen von SQL Datenbankservern“ wurde näher
auf die Einteilung der vorhandenen Ressourcen eines einzelnen Datenbankservers eingegangen.
In der heutigen Arbeit stehen die Optimierung der Hardware durch Clustering genauso wie die
1
Zitat von [LAFR03], Seite 9
Anforderungen neuer DB Systeme durch Grid Computing 9
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
Einteilung der vorhandenen Ressourcen im Cluster oder Grid im Mittelpunkt. Während in der
Vertiefungsarbeit die Prozesse eines einzelnen Datenbankservers diskutiert wurden, liegt nun der
Fokus auf den Prozessen zwischen mehreren Servern, die gemeinsam vorhandene Aufgaben im
Computergrid lösen. Um die Komplexität der Prozesse zu verdeutlichen, werden die
Anforderungen an ein Datenbanksystem im Grid herausgearbeitet. Deren Umsetzung wird
anschliessend am Beispiel von Oracle 10g verdeutlicht.
1.3
Ziel der Arbeit
Ziel der Arbeit ist es, die Anforderungen von Datenbanksystemen im Computergrid
herauszuarbeiten. Zu Beginn werden die Grundlagen des Grid Computing behandelt. Die
Umsetzung der Anforderungen sollen am Beispiel von Oracle Datenbank 10g, der neuen Grid fähigen Datenbank von Oracle, erläutert werden. Am Ende der Arbeit sollte sich der Leser ein
Urteil bilden können, ob mit dieser Datenbank ein Grid – fähiges System ermöglicht wurde.
1.4
Vorgehen
Die Arbeit beginnt mit einer kurzen Definition von Clustering und Grid Computing, da diese
beiden Begriffe sehr nah beieinander liegen. Weiterhin soll kurz auf die Entstehung von
Clustering und Grid Computing sowie die weitere Entwicklung von Grid Computing
eingegangen werden. Es wird gezeigt, wieso Grid Computing der Nachfolger des Internet ist.
Nach der Einleitung werden die Anforderungen an Datenbanken im Grid erarbeitet. Die
Anforderungen beziehen sich vor allem auf die Bereiche der Clustertechnik, der
Informationsverwaltung, des Ressourcenmanagement, der Portabilität, der Sicherheit und der
Selbstverwaltung des Systems. Weiterhin wird gezeigt welche Standards vorhanden sind. Die
Wichtigkeit der Einhaltung von Standards wird erläutert.
Im Lösungskonzept wird gezeigt, wie die Firma Oracle mit ihrer neuen Datenbank 10g diese
Anforderungen umgesetzt hat und welche Werkzeuge dafür eingesetzt bzw. entwickelt wurden.
Auch die Hardwareanforderungen werden aufgezeigt.
Im letzten Teil der Arbeit werden die erreichten Ergebnisse zusammengefasst. Ein Blick in die
Zukunft soll die weitere Entwicklung von Grid Computing andeuten.
Anforderungen neuer DB Systeme durch Grid Computing 10
2 Grundlagen
2.1
Definition von Clustern und Grid Computing
Mehrere Rechner gemeinsam zu nutzen ist keine neue Idee. In vielen Forschungszentren oder
grossen Rechenzentren werden mehrere Computer zu einem Cluster zusammengefügt. „In a
computer system, a cluster is a group of servers and other resources that act like a single system
and enable high availability and, in some cases, load balancing and parallel processing.” 2 Ein
Cluster ist also eine Gruppe von Servern, z.B. in einem Serverschrank, die zusammen wie ein
einzelnes System agieren und somit eine hohe Verfügbarkeit garantieren. In einigen Fällen ist es
möglich, die Rechenleistung zu verteilen, oder bestimmte Berechnungen parallel zu verarbeiten.
Bei Grid Computing werden hingegen die freien Ressourcen von allen Rechnern im Intranet oder
sogar im Internet genutzt. „Grid Computing (englisch: "Gitter-Berechnung") bezeichnet alle
Methoden, die Rechenleistung vieler Computer innerhalb eines Netzwerkes so
zusammenzufassen, dass über den reinen Datenaustausch hinaus die (parallele) Lösung von
extrem rechenintensiven Problemen ermöglicht wird (verteiltes Rechnen). Aus jedem Computer
in dem "Gitter" wird gewissermaßen eine, den anderen Einheiten gleichgestellte, CPU mitsamt
Speicher. So kann - im Prinzip - sowohl die Kapazität als auch die Rechenleistung von heutigen
Supercomputern zu deutlich geringeren Kosten übertroffen werden.“3 Wie dieses Zitat zeigt,
handelt es sich bei Grid Computing um einen günstigen Weg, viel Rechenleistung zur Verfügung
zu stellen. Weiterhin ist das System sehr ausfallsicher, es spielt eine geringe Rolle wenn ein
Rechner im Grid ausfällt, da die anderen Rechner dessen Arbeit übernehmen können.
2.2
Entstehung von Clustering und Grid Computing
Der erste Cluster wurde von IBM in den 70er Jahren für die Airforce entwickelt. Einen
deutlichen Einfluss in dieser Zeit hatte die Entwicklung von Personalcomputern, das erste
multitaskingfähige Unix System und die Verabschiedung von Ethernet als Standard für lokale
Netzwerke.
Bereits Anfang der 90er Jahre entstand mit den ersten Client-Server Architekturen die
Vorstellung für Grid Computing. Das Wort Grid kann analog zum Stromnetz (engl. Power Grid)
2
3
Zitat aus [WHAT04]
Zitat aus [NETL04]
Anforderungen neuer DB Systeme durch Grid Computing 11
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
gesehen wurde. Vorerst kam es zum Clustering, wobei mehrere Computer für einzelne Aufgaben
zusammen zur Verfügung gestellt werden. Bei Grid Computing im heutigen Sinne werden
mehrere verschiedene Rechner, egal ob Supercomputer oder Desktop, zu einem virtuellen
Supercomputer verbunden. Dabei spielt keine Rolle, ob die Rechner lokal oder global verteilt
sind.
2.3
Die Entwicklung von Grid Computing
Abbildung 1: Die Entwicklung von Grid Computing
In dieser Grafik sind verschiedene Stufen der Entwicklung von Grid Computing zu sehen. Der
Nutzenwert von Grid Computing steigt im Laufe der Zeit immer mehr. Der erste Abschnitt der
Grid Entwicklung wird hier als Cluster bezeichnet. Cluster Grids sind heute bereits realisiert. Die
Verteilung von Jobs und das Bereitstellen einer Verarbeitungswarteschlange in einem Cluster
System sind hier das Hauptaugenmerk.
Der zweite Schritt sind die Intra Grids. Es handelt sich um Standortunabhängige Grids in einem
Firmennetzwerk. Eine wichtige Rolle spielen hier die Sicherheitsaspekte und einheitliche
Authentifizierung. In den Intra Grids stehen erweiterte Möglichkeiten, wie die Lastverteilung zur
Verfügung. Die CPU Last wird in einem Verteilten System koordiniert, der Nutzenwert solcher
Systeme ist bereits höher als bei Clustern.
Die Extra Grids sind unternehmensübergreifende Grids. Hier spielt die IT Infrastruktur von
mehreren Partnerunternehmen zusammen. Eine Lastverteilung zwischen allen Beteiligten
erfordert neue Sicherheitsmassnahmen, die Leistung des Systems steigt allerdings enorm.
Der letzte Schritt ist derzeit noch ein langfristiges Ziel – die Inter Grids oder auch Wide Area
Service Grids, die ein regionales, nationales oder sogar globales Ausmass haben sollen. Diese
Anforderungen neuer DB Systeme durch Grid Computing 12
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
Stufe bezeichnet den eigentlichen Wunschtraum von Grid Computing. Dieser ist ein Netzwerk,
in dem Rechen- oder Speicherleistung genau so bezogen werden kann wie Strom aus der
Steckdose. Es könnte wie ein Pear to Pear Netzwerk sein, in dem jeder Benutzer gewisse Dateien
für den Upload freigibt und dafür andere Dateien von anderen Benutzern herunterladen darf. Der
einzige Unterschied ist, dass im Pear to Pear Netzwerk Dateien getauscht werden und im Grid
Netzwerk die Rechen- und Speicherleistung.
2.4
Grid Computing als Nachfolger des Internet
Die Zeit ist reif für Grid Computing. Folgende Punkte unterstreichen die unaufhaltsame
Nachfolge des Internet in Form von Grid Computing

In heutigen Unternehmen muss auf Erschwinglichkeit geachtet werden. Die Kosten
sollen möglichst gering sein und die Effizienz möglichst hoch. Genau das soll durch Grid
Computing ermöglicht werden, indem die Leistung von sonst ungenutzter Hardware
effizient genutzt wird. Statt ungenutzten Computerinseln entsteht ein virtueller
Supercomputer, zusammengesetzt aus den einzelnen Rechnern des Unternehmens.

Bei der Hardware werden heute überall Blades angeboten. Bei Blades handelt es sich um
günstige und ausbaufähige Hardware, Blades werden in so genannte Blade Farmen
montiert. Miteinander verbunden entsteht aus der Blade Farm ein Computer Cluster, der
leicht durch weitere Blades erweitert werden kann. Durch die Nutzung von Grid
Computing entsteht ein sehr leistungsfähiges und erweiterbares Computersystem.

Im Softwarebereich wächst Linux schneller als jedes andere Betriebssystem. Heutzutage
ist Linux noch nicht fähig, grosse SMP4 zu skalieren. Allerdings bei Blades mit 1 – 4
CPU, also kleine SMP, fühlt sich Linux schon heute heimisch. Die ökonomischen
Aspekte von Blades, sowie die Verträglichkeit von Linux mit Blades wird Linux zu
einem weitern Aufschub verhelfen. Ein weiterer grosser Vorteil von Linux ist dessen
Preis. Deshalb werden sich Blade Cluster mit Linux immer mehr durchsetzen.

Eines der neusten Modeworte in der Software- und Hardwareindustrie ist das Wort
„Virtualisierung“. Doch nichts ist virtueller wie der Versorgungsbetrieb. Genau das ist
eines der Ziele von Grid Computing, die Versorgung mit Rechenleistung bzw. Speicher.

Grosse Unternehmen wie Oracle oder IBM beschäftigen sich immer mehr mit Grid
Computing. Diese Unternehmen wirken im GGF5 zusammen, um sich auf
Standardtechnologien zu einigen.

IT Organisationen streben auch Grid Technologien an. Durch Grid Computing kann
bestehende Hardware effektiv genutzt werden. So werden nutzlose Rechner genauso wie
Rechner unter Volllast vermieden. Jeder Rechner im Unternehmen kann dadurch der
gleichen Auslastung unterliegen.
4
SMP (Symmetric Multiprocessing) ist die Verarbeitung von Programmen mit mehreren Prozessoren, die sich das
Betriebssystem und Hauptspeicher teilen.
5
Global Grid Forum, grosse Unternehmen der Software Industrie beschliessen Standards für Computergrids
Anforderungen neuer DB Systeme durch Grid Computing 13
3 Anforderungen an Datenbanken im Grid
3.1
Anforderungen an die Clustertechnik
Das Grid System baut auf einen Computercluster auf. In diesem Cluster befinden sich mehrere
einzelne Rechner, die zusammen einen virtuellen Supercomputer bilden. Wenn die Auslastung
des Systems steigt, müssen neue Rechner zum Cluster hinzugefügt werden bzw. wenn der
Cluster zu wenig ausgelastet ist, können Rechner entfernt werden um andere Aufgaben zu
erledigen. Dabei werden Techniken benötigt, die ein Entfernen oder Hinzufügen von Rechnern
ermöglichen, ohne dass das komplette System heruntergefahren werden muss.
Weiterhin ist es erstrebenswert, günstige Systeme im Cluster einzusetzen. Dabei kann es
wiederum schneller zu Ausfällen von einzelnen Rechnern kommen. Es werden also Techniken
benötigt, um die Daten auf den einzelnen Rechnern in einer gemeinsamen Datenbasis abzulegen.
Dadurch wären die Daten weiterhin verfügbar, auch wenn einer der Rechner ausfällt. Die
anderen Rechner im Cluster müssten anschliessend automatisch die Arbeit des ausgefallenen
Rechners übernehmen, um einen unterbrechungsfreien Betrieb zu garantieren.
Auch eine automatische Lastverteilung im Cluster ist von Vorteil. Dadurch könnten automatisch
mehr Ressourcen zur Verfügung gestellt werden, wenn ein Rechenintensiver Prozess
abzuarbeiten ist. Die Lastverteilung sollte dabei auch manuelle Eingriffsmöglichkeiten haben.
Dadurch könnte einer Datenbank z.B. zwischen 22:00 Uhr und 03:00 Uhr täglich besonders viel
Rechenleistung zur Verfügung gestellt werden. Die Ursache könnte dabei das Füllen eines Data
Warehouse mit den aktuellen Daten sein, dieses benötigt besonders viel Rechenleistung.
Neben der reinen Lastverteilung im Cluster kann es auch möglich sein, das bestimmte
Datenbankeinheiten heruntergefahren werden, weil diese vorübergehen nicht benötigt werden.
Diese müssten wieder gestartet werden, wenn die Performanz unter der geforderten Grenze liegt.
In einem grossen Cluster mit sehr vielen Datenbanken ist das sehr schwer manuell zu
kontrollieren, da die Performanz aller Datenbanken manuell überwacht werden müsste.
Weiterhin könnten die DB Einheiten gerade beschäftigt sein, so das der Benutzer warten muss,
bis die Arbeit beendet ist. Das Herunterfahren, einschliesslich Weiterleitung der anliegenden
Arbeiten, sowie das Hochfahren von DB Einheiten sollte automatisch geschehen.
Anforderungen neuer DB Systeme durch Grid Computing 14
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
3.2
Anforderungen an die Informationsverwaltung
In einem Computergrid werden Informationen zwischen verschiedenen Systemen ausgetauscht
und in unterschiedlichen Datenbanken oder Dateisystemen gespeichert. Um die Informationen an
einem Ort aufzubewahren oder um einen Rechner im Grid auszuwechseln, müssen die
Datendateien der DB kopiert oder verschoben werden können. Doch die Daten alleine reichen
oft nicht aus, zusätzlich müssen auch die Metadaten in die neue Datenbank übernommen werden.
Das DBMS im Grid muss also Möglichkeiten bieten, um die Daten und Metadaten möglichst
einfach zu exportieren und wieder zu importieren. Dabei sollte der Import und Export auch
Betriebssystemübergreifend funktionieren, da in einem Grid die Möglichkeit bestehen muss, dass
alle auf dem Markt vorhandenen Systeme integriert werden können.
Die Daten einer Abfrage kommen möglicherweise aus unterschiedlichen Datenbanken
verschiedener Hersteller, die sich im Grid befinden. Es muss eine Möglichkeit geboten werden,
dass solche Abfragen durchgeführt werden können. Dadurch könnte eine Applikation mehrere
Datenbanken im Grid nutzen. Beispiel einer solchen Abfrage: Ich möchte die Telefonnummer
aus einer Informix Datenbank zusammen mit den Kundendaten aus der Oracle Datenbank
abfragen. Ein wichtiger Punkt beim Arbeiten mit mehreren Datenbanken ist die Sicherung von
Transaktionen zwischen den Datenbanken. Dadurch können auch geschäftskritische Daten über
mehrere Datenbanken hinweg verarbeitet werden, ohne dass eine zusammenhängende Abfragen
nur zur Hälfte durchgeführt wird.
Es muss weiterhin denkbar sein, das eine Applikation über Standardschnittstellen auf jede
beliebige Datenbank gleichermassen zugreift. Trotzdem sollten bestimmte Besonderheiten oder
Fähigkeiten der jeweiligen Datenbank bekannt sein, um sinnvoll mit diesen umgehen zu können.
Nicht nur fremde Datenbanken, sondern auch Daten im Dateisystem sollten genutzt werden
können. Das Sinnvollste hierbei wäre, wenn auch die Daten im Dateisystem genauso wie eine
relationale Datenbank und zusammen mit anderen Daten aus einer Datenbank abgefragt werden
können.
3.3
Anforderungen an Ressourcenmanagement
Ein Werkzeug zum Einteilen der vorhandenen Ressourcen wird benötigt. Da jede Aufgabe die
Leistung von mehreren Datenbankinstanzen im Grid beanspruchen kann, ist es notwendig, eine
Art Warteschlange für die anstehenden Arbeiten zu haben. Dabei muss allerdings definiert
werden können, ob ein Vorgang auf mehreren Rechnern verarbeitet werden darf oder nur auf
einem speziellen Rechner. Es könnte weiterhin sein, dass einer der Datenbankbenutzer besonders
viel Rechenleistung benötigt und somit die Performanz aller anderen Benutzer des Systems
einschränkt. Um das zu verhindern, muss ein Leistungslimit auf Benutzerebene gesetzt werden
können.
3.4
Anforderung an Einhaltung von Standards
Das System im Grid sollte auf Standards basieren. Wenn alle Grid Systeme auf die gleichen
Standards basieren, ist es leichter, in ferner Zukunft einen globalen Grid zu ermöglichen. Schon
jetzt kann durch Standards eine einheitliche Verbindung gewährleistet werden. Das Global Grid
Forum arbeitet daran, Standards für Grid Technologien zu entwickeln. Unterschiedliche
Arbeitsgruppen und Komitees, bestehend aus wissenschaftlichen Teilnehmern, Forschern und
Mitgliedern grosser Unternehmen, konzentrieren sich auf diverse Aspekte von Grid Computing.
Anforderungen neuer DB Systeme durch Grid Computing 15
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
Das Datenbanksystem im Grid sollte auf jeden Fall auf diesen Standards basieren und möglichst
am Global Grid Forum beteiligt sein.
Der Globus Toolkit, der viele Komponenten zum Erstellen eines Grid beinhaltet, setzt sich als
Standard durch. Er sollte auch ein Datenbanksystem im Grid unterstützen. Der Globus Toolkit
enthält zudem viele Werkzeuge, um Komponenten und Ressourcen im Grid zu kontrollieren, zu
überwachen, sie zu steuern und zu verbinden. Das erleichtert den Umgang mit den Komponenten
im Grid und sorgt als Standard für einheitliche Grids.
3.5
Anforderungen an die Portabilität
Das System im Grid sollte möglichst portabel sein. Das heisst z.B. die Datenbank im Grid muss
jederzeit auf andere Hardware mit einem anderen Betriebssystem übertragen werden können.
Nur so kann der Grid funktionieren. Es darf nicht sein, das im Grid Probleme entstehen, weil
eine fremde Hardware hinzugefügt wurde. Wenn jede Hardware genutzt werden kann, ist der
Grid homogen. Eine Datenbank in einem homogenen Grid sollte auch auf jedem System die
gleichen Eigenschaften und Funktionen bieten.
3.6
Anforderungen an die Sicherheit
Die Sicherheit im Grid wird durch dessen Dynamik stark beeinflusst und ist daher besonders
wichtig. Jeder Benutzer darf nur auf die ihm anvertrauten Daten zugreifen. Wichtige
unternehmenskritische Daten dürfen auf keinen Fall von den falschen Personen gesehen oder
manipuliert werden. Grundsätzliche Sicherheitsalgorithmen für eine sichere Kommunikation,
den Umgang mit vertraulichen Daten und neue Mechanismen für die feinkörnige
Zugangskontrolle werden benötigt.
Grid Systeme und Applikationen im Grid werden viele oder alle der Standard
Sicherheitsfunktionen benötigen. Diese sollen nun dargelegt werden.

Authentifizierung: Jeder Benutzer der sich Zugang zum System verschaffen will, muss
sich identifizieren. Das geschieht z.B. durch eine Anmeldung mit Benutzername und
Passwort. Die Verwaltung der Kennwörter bzw. Zugangscodes sollte möglichst zentral
erfolgen. Der Anmeldeprozess sollte über eine sichere Verbindung erfolgen.

Zugangskontrolle oder Autorisierung: Nachdem sich der Benutzer eingeloggt hat,
ermittelt das System aus einem zentralen Verzeichniss, zu welchen Bereichen der
jeweilige Benutzer Zugang bekommt. Möglicherweise darf nicht jeder Benutzer des Grid
Systems auch jeden Bereich nutzen. Deshalb sollten auch die Benutzerrechte zentral
verwaltet werden.

Integrität: Die Sicherheitsrichtlinien müssen sich vollständig in das Grid System
integrieren können. Deshalb sollte die Sicherheit zentral verwaltet werden. So können
Redundanzen in den Sicherheitsrichtlinien verhindert werden.

Privatbereiche: Das Grid System benötigt z.B. für die Besitzer des Computersystems im
Grid private Bereiche, um vertrauenswürdige Dokumente abzulegen, und um
Geheimnisse in der Abarbeitung zu verstecken. Diese Privatbereiche können durch die
Autorisierung sichergestellt werden.
Anforderungen neuer DB Systeme durch Grid Computing 16
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.

3.7
Nachweisbarkeit: Vorgänge und auch Fehler müssen über eine längerfristige Zeit
dokumentiert werden, um sie nachzuvollziehen und somit in der Zukunft
auszuschliessen. Auch Grid interne Angriffe können somit abgewehrt werden, weil der
Angreifer durch seine Zugangscodes identifiziert und daraufhin aus dem Grid
ausgeschlossen werden kann.
Anforderungen an ein Selbstverwaltendes System
Ein Grid System sollte sich möglichst selbst verwalten und steuern. Grid Systeme sollten sich an
die sich ändernden Umstände selbst anpassen. Dazu gehört auch eine Toleranz gegenüber
alltäglichen Fehlern. Die wichtigsten Punkte der Selbstverwaltung sind:

Höchste Verfügbarkeit und Ausfallsicherheit, das sollte nicht nur auf teurer Hardware
sondern auch auf günstiger Hardware erfolgen. Wenn einer der Rechner im System
ausfällt, sollte daher diese Ressource sofort wiederhergestellt werden. Die Arbeit kann
etwa von den anderen Rechnern im Grid übernommen werden, so dass der Ausfall kaum
Bemerkt wird. Lediglich eine Nachricht an den Administrator des Systems sollte
verschickt werden um den ausgefallenen Rechner gegebenenfalls wieder instand zu
setzen.

Selbst führendes System, das System sollte sich selbst beobachten und somit selbst
Engpässe feststellen können. Wird ein Engpass festgestellt, muss dieser sofort behoben
werden, etwa durch das automatische Freigeben einer neuen Ressource. Somit gäbe es
nie einen einzigen überlasteten Rechner. Dadurch, dass die Rechner somit selten an ihre
Leistungsgrenzen stossen, wird das Leben der Hardware verlängert und die TCO
verringert.

Ein Werkzeug wird benötigt um möglichst alle Elemente im Grid zu kontrollieren und zu
steuern. Zu den Elementen gehört die Lastverteilung der Server, genauso wie das
Management von Storage Elemente. Der Administrator sollte dieses Werkzeug nutzen
können, um den Grid zu kontrollieren und selbst anzupassen.
Anforderungen neuer DB Systeme durch Grid Computing 17
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
3.8
Zusammenfassung
In der folgenden Tabelle sind alle Anforderungen an Datenbanksysteme im Grid und die
wichtigsten Punkte der jeweiligen Anforderung aufgezählt. Sie soll einen kurzen Überblick
geben, um auf einen Blick die Anforderungen an ein Datenbanksystem im Computergrid zu
überblicken.
Herausgearbeitete
Anforderung
Wichtigste Aufgaben in Bezug auf die jeweilige Anforderung:

Rechner hinzugügen und entfernen

Einsatz von günstiger Hardware

Automatische Lastverteilung

Performance überwachen und DB’s starten oder herunterfahren

Daten und Metadaten kopieren und verschieben

Abfragen auch fremder DB’s im Grid

Zugriff von Applikationen über Standardschnittstellen
Ressourcenmanage
ment

Gute Warteschlange zum Einteilen aller Prozesse auf alle
Systeme im Grid
Einhaltung von
Standards

Mitarbeit im Global Grid Forum

Nutzung des Globus Toolkit
Portabilität

Plattformunabhängigkeit und Betriebssystemunabhängigkeit
Sicherheit

Authentifizierung und Autorisierung

Integrität und zentrale Verwaltung der Sicherheitsrichtlinien

Vorhandensein von Privatbereichen

Nachweisbarkeit

Höchste Verfügbarkeit

Führung durch Erkennung von Engpässen

Eigene Überwachung
Clustertechnik
Informationsverwalt
ung
Selbstverwaltung
Tabelle 1: Anforderungen von DB Systemen im Grid
Anforderungen neuer DB Systeme durch Grid Computing 18
4 Lösungskonzept am Beispiel von Oracle 10g,
Grid Datenbank
Die Firma Oracle hat schon mit der Version 9i ihrer Datenbank einen Schritt Richtung Grid
Computing unternommen und einige entsprechende Techniken entwickelt. Vor kurzer Zeit kam
nun die Version 10g der Oracle Datenbank auf den Markt. Es fällt auf, das die
Versionsbezeichnung der Datenbank von 9i nach 10g gewechselt hat. Das hat den Ursprung
darin, das Oracle jetzt aktiv mit der Grid Computing Technik wirbt. Das „g“ in Oracle 10g steht
für Grid Computing und das „i“ in den früheren Versionen steht für Internet. Der Werbespruch
von Oracle ist: „Internet ist out, Grid Computing ist in“. Aufgrund dieses Umstandes wird sich
das Lösungskonzept auf die Grid Datenbank von Oracle beziehen. Die wichtigsten Bestandteile
von Oracles Grid Datenbank sollen nun aufgezeigt und erläutert werden.
4.1
Oracle Real Application Cluster (RAC)
Der RAC von Oracle erlaubt es, echte Applikationen auf Komponenten für den Massenmarkt
laufen zu lassen. Oracle ist mit dem RAC auf Linux Clustern unlimitiert skalierbar. In der
Architektur sind keine Limits vorhanden. RAC ermöglicht damit einen hohen Nutzenwert auf
günstigen Blade Farmen. Durch RAC können jederzeit beliebige Blades zum Cluster
hinzugefügt werden, um die Speicherkapazitäten oder die Rechenleistung zu steigern, oder sie
können entfernt werden, wenn sie nicht mehr benötig werden. Da RAC auf eine Shared Disc
Architektur aufbaut, kann der Cluster erweitert oder verkleinert werden, ohne das System
herunterzufahren.
RAC ist weiterhin eine kostengünstige Methode um viel Leistung zu erzielen. Statt einen grossen
Supercomputer zu kaufen, werden mehrere Blades oder andere günstige Systeme gekauft. Diese
zusammen ergeben einen virtuellen Supercomputer. Es entsteht ein sehr ausfallsicheres System.
Fällt einer der Blades aus, kann dessen Arbeit sofort von anderen Blades übernommen werden.
Es handelt sich bei Oracle und RAC um die sogenannte „Shared Disk“ Architektur, bei der nur
eine gemeinsame Datenbasis vorhanden ist. Dadurch kann auch jederzeit ein Blade hinzugefügt
oder entfernt werden, ohne die Daten neu zu paritionieren bzw. aufzuteilen. Die Daten sind
natürlich partitioniert. Die Shared Disk Architektur ist also eine wichtige Grundlage für den
Computer Grid, da es ohne diese Architektur schwieriger ist, neue Komponenten zu ergänzen
oder zu entfernen.
Anforderungen neuer DB Systeme durch Grid Computing 19
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
Die meisten anderen Datenbankhersteller arbeiten mit der „Shared Nothing“ Architektur. Dabei
hat jedes Blade eine eigene Datenbasis. Fällt hier ein Blade aus, so fallen auch die Daten dieses
Blades aus. Beim Hinzufügen oder Entfernen von Blades müssen die Daten immer wieder erneut
partitioniert werden da bei diesem System die Daten künstlich angeordnet sind. Diesen
Sachverhalt und den Unterschied zur Shared Disk Architektur soll die folgende Abbildung
verdeutlichen.
Abbildung 2: Shared Disk vs. Shared Nothing Architektur
Oracle 10g bietet weiterhin automatische Lastverteilung für Dienste im RAC an. Der RAC
verteilt automatisch die Last der Verbindungen, so wie sie zwischen den Instanzen entstehen.
Zusätzlich, durch Nutzung des Resource Manager, kann der Benutzer Taktiken definieren, um
die Ressourcenbelegung für die Dienste, die in der RAC Datenbank ablaufen, zu steuern. Um
diese Taktiken einzuhalten, werden automatisch die Datenbankinstanzen den jeweiligen Diensten
durch den RAC zugeteilt.
Weiterhin bietet Oracle 10g die Möglichkeit, mit einem Knopfdruck neue Server zum RAC
hinzuzufügen oder zu entfernen. Dabei installiert die Oracle Datenbank alle benötigte Software
und startet eine Datenbank Instanz auf dem neuen Server. Der neue Server ist anschliessend
sofort einsatzbereit und im Grid integriert. Ähnlich, durch einen Knopfdruck, kann ein
Datenbankserver vom RAC entfernt werden.
4.2
Resonanzen
Durch Resonanzen wird die Anzahl der Server in einem Cluster, die für die jeweilige Datenbank
benötigt wird, automatisch vergrössert und verkleinert, so dass gewünschte Anforderungen an
Geschwindigkeit etc. erfüllt werden. In einem grossen Cluster mit vielen Datenbanken wäre es
Anforderungen neuer DB Systeme durch Grid Computing 20
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
schwierig, dieses manuell zu kontrollieren. Der Benutzer müsste alle Datenbanken im Cluster
überwachen und manuell für jede Datenbank neue Instanzen starten oder beenden um die
gewünschte Performanz zu erreichen. Das könnte sehr lange dauern da jeweils zuerst gewartet
werden muss, bis die aktiven Datenbanksitzungen beendet sind, bevor die Instanz
heruntergefahren wird. Diese Aufgabe übernimmt Oracle 10g automatisch. Die Last der
Datenbanken wird automatisch überwacht. Wenn eine Instanz heruntergefahren wird, werden die
aktiven Sitzungen automatisch auf eine andere Instanz verlagert. Wird eine neue Instanz gestartet
so kommt es automatisch zu einer Lastverteilung zwischen allen verfügbaren Instanzen.
4.3
Informationsaustausch bei Oracle
Um das Arbeiten in einem Grid zu ermöglichen, müssen Informationen zwischen verschiedenen
Systemen ausgetauscht werden. Diese Informationen können in unterschiedlichen Datenbanken
oder auch im Dateisystem abgelegt sein. Im Folgenden werden Verfahren zum
Informationsaustausch, die von Oracle angeboten werden, aufgezeigt und erklärt.
4.3.1
Oracle Transportable Tablespaces
Die Datendateien einer Oracle Datenbank haben den Namen Tablespace. Durch transportable
Tablespaces wird dem Benutzer eines Grids eine sehr schnelle Möglichkeit geboten, einen Teil
der Daten von einer Oracle Datenbank zu einer anderen zu befördern. Die Datendateien können
von der Datenbank abgekoppelt werden, an einen anderen Ort kopiert und wieder eingefügt
werden. Durch das Abkoppeln und Anschliessen von Datendateien muss nur ein kleiner Teil der
Metadaten neu eingelesen oder geladen werden.
Oracle Data Pump, ein neues Feature in Oracle Datenbank 10g, wird auch zum Importieren und
Exportieren von Datendateien genutzt. Es handelt sich um eine schnelle, parallele Infrastruktur,
die eine zügige Migration der Daten und Metadaten von einer Datenbank zu einer anderen
erlaubt. Werden transportable Tablespaces in eine andere Datenbank verschoben, so kann der
Data Pump genutzt werden, um die Metadaten zu extrahieren und in der neuen Datenbank
wieder zu erstellen.
4.3.2
Oracle Streams
Manche Daten müssen, während sie erstellt oder verändert werden, gemeinsam genutzt werden.
Durch Oracle Streams können Daten zwischen Datenbanken, Datenknoten oder Blade Farmen
fliessen. So wird ein einheitliches System geboten um Informationen auszutauschen,
Nachrichten kombiniert in eine Warteschlange zu stellen, Daten nachzubilden, Ereignisse
abzuarbeiten, ein Data Warehouse zu füllen, Anzeigen und das Veröffentlichen oder Bestellen in
einer einzelnen Technologie bereitzustellen. Beim Anstehen einer Änderung können also zwei
oder mehrere Kopien von Daten synchron aktualisiert werden.
4.3.3
Distributed SQL und Distributed Transactions
Durch verteiltes SQL6 ist es in einem Computergrid möglich, auf Daten in mehreren
Datenbanken zuzugreifen oder Daten zu integrieren. Dabei spielt es keine Rolle, ob alle anderen
Datenbanken von Oracle sind oder nicht. Ein transparenter Fernzugriff auf die Daten mit
6
SQL = Structured Query Language, die Standard Abfragesprache für Datenbanken
Anforderungen neuer DB Systeme durch Grid Computing 21
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
verteiltem SQL erlaubt es dem Benutzer des Grids, die Applikationen gegen jede beliebige
Datenbank laufen zu lassen, ohne den Programmcode anzupassen.
Verteilte Transaktionen erlauben die Sicherung von Transaktionen über mehrere Datenbanken
hinweg. Die Transaktionen werden dabei über verschiedene Applikationen hinweg gesichert, wie
z.B. Altsysteme oder Systeme anderer Anbieter.
4.3.4 Heterogener Zugang mit gewöhnlichen Verbindungen und
transparentem Gateways
Die Funktion des heterogenen Zugangs erlaubt es, dass Oracle Datenbankapplikationen ohne
eine Änderung von Code auf jeder Nicht - Oracle Datenbank funktionieren. Die Applikationen
greifen dabei auf die fremde Datenbank genau so wie auf eine Oracle Datenbank zu. Die
gewöhnlichen Verbindungen mit denen der Zugriff auf die Nicht – Oracle Datenbanken erfolgt,
sind Industriestandards wie ODBC7 und OLEDB8.
Transparente Gateways sorgen dafür, dass Oracle die Ressourcen bzw. Fähigkeiten von den
Nicht Oracle Datenbanken kennt. Dadurch kann Oracle die Daten in das Format der anderen
Datenbank übersetzen und den Zugriff optimieren. Oracle unterstützt dabei die
Datenbanksysteme der grössten Anbieter, also DB2, Microsoft SQL Server, Informix, Ingres und
Sybase.
4.3.5
Externe Tabellen und BFILES
Durch die externen Tabellen von Oracle erhält der Grid Benutzer einen relationalen Zugriff auf
die im Dateisystem gespeicherten Daten. Die Daten aus dem Dateisystem können dabei
gemeinsam mit anderen Daten aus der Datenbank abgefragt werden, als wären sie auch in einer
Datenbank. Somit können Daten eines Dateisystems und Daten einer Datenbank in einer Abfrage
vereinigt werden.
BFILES erlauben es, die Metadaten zu steuern und auf Daten in Dateien zuzugreifen. BFILES
sind grosse binäre Datenobjekte die sich ausserhalb eines Tablespace in Systemdateien des
Betriebssystems befinden.
4.4
Scheduling und Ressourcenmanagement
Der Benutzer eines Computer Grid kann die Ressourcen der Oracle Datenbank einteilen und die
Abarbeitung der einzelnen Arbeiten steuern. Die Oracle job queue, also die Warteschlange der
anstehenden Arbeiten, stellt einen flexiblen Mechanismus bereit, um die Abarbeitung von
Datenbankaufgaben zu steuern. Dabei können Aufgaben zu einer bestimmten Zeit in einem
bestimmten Intervall abgearbeitet werden, weiterhin kann die Anzahl der Abarbeitungsprozesse
bestimmt werden. In einer Oracle RAC Umgebung kann eine Aufgabe entweder auf allen
verfügbaren Datenbankinstanzen oder auf einer spezifischen Datenbankinstanz abgearbeitet
werden.
7
8
ODBC = Open Database Connectivity, ist eine Standardschnittstelle für den Zugriff auf Datenbanken
OLEDB = Object Linking and Embedding Database, ist eine Schnittstelle für den Datenzugriff
Anforderungen neuer DB Systeme durch Grid Computing 22
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
Der Oracle Ressourcen Manager erlaubt die Begrenzung der Oracle Ressourcen für einen Grid
Benutzer. Dadurch wird eine gerechte Nutzung der verfügbaren Ressourcen für alle Benutzer des
Computer Grid sichergestellt.
4.5
Einhaltung von Standards
Das Global Grid Forum arbeitet daran, Standards für Grid Computing zu entwickeln.
Verschiedene Komitees und Arbeitsgruppen konzentrieren sich auf die unterschiedlichen Aspekte
von Grid Computing. Sie bestehen aus wissenschaftlichen Teilnehmern, Forschern und aus
Mitgliedern grosser Unternehmen wie Oracle, IBM usw.
Der Globus Toolkit hat sich durchgesetzt als ein Standard zum Erstellen eines Grids. Er bietet
verschiedene nützliche Komponenten, um Grid Applikationen und Entwicklungsumgebungen für
den Grid aufzubauen. Der Globus Toolkit ist der de facto Standard um einen Grid aufzubauen.
Der Oracle Globus Development Kit stellt Scripte zur Verfügung, um die Technologien von
Oracle effizient mit dem Globus Toolkit zu benutzen.
Der Globus Resource Allocation Manager steuert die Belegung von Ressourcen, das Erstellen
von Prozessen, sowie Überwachungs- und Verwaltungsaufgaben. Es werden hinterlegte
Kommandos einer Sprache namens Resource Specification Language übersetzt in die Sprache,
die vom lokalen Computer und Scheduler verstanden werden. Dadurch können über ein
Netzwerk die Funktionen der Oracle Datenbank aufgerufen werden. Zu den Funktionen gehört
der Import, Export oder das Ausführen von Datenbankoperationen über SQL Plus. Dieser
Mechanismus erlaubt es, eine entfernte Datenbank für Grid Aufgaben einzurichten.
Weiterhin können über die Resource Specification Language des Globus Ressource Allocation
Manager Datenbankabfragen und PL/SQL Routinen abgearbeitet werden. So können Aufgaben
an den Scheduler von Oracle über dessen PL/SQL API9 weitergeleitet werden. Somit kann der
Grid Benutzer die Arbeiten auf dem entfernten System ausführen, planen und überwachen.
Der Grid Resource Information Service des Globus Toolkit stellt Informationen bereit, um die
Ressourcen im Grid zu finden und zu überwachen. Dadurch können Oracle Datenbanken
gefunden und überwacht werden, weiterhin werden für den Benutzer wichtige
Datenbankeigenschaften dargelegt.
4.6
Portabilität
Oracle Portability zwischen verschiedenen Betriebssystemen und Hardware bedeutet, dass ein
heterogener Grid ermöglicht werden kann. Ein heterogener Grid besagt, dass im Grid jede
beliebige Hardware von jedem beliebigen Hersteller hinzugezogen werden kann. Dadurch kann
eine Applikation, die im SMP entwickelt wurde, jederzeit in eine Grid Umgebung übertragen
werden. Die Oracle Datenbank ist für jedes wichtige Betriebssystem verfügbar und bietet jeweils
die gleichen Funktionen und Ressourcen in allen unterstützten Systemen, solange eine
einheitliche Code Basis vorliegt.
9
API = Application Programming Interface, ist eine Programmierschnittstelle
Anforderungen neuer DB Systeme durch Grid Computing 23
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
4.7
Sicherheitsmechanismen
Oracle stellt industriegeprüfte Sicherheitsmassnahmen für den Grid zur Verfügung. Die
Sicherheitsmechanismen von Oracle wurden von 15 unabhängigen Testern für Sicherheit
überprüft. Oracle bietet umfassende Funktionen um Sicherheitsbedürfnisse aus den Unternehmen
heraus zu behandeln. Es bietet die vollständigsten Funktionen für sichere Datenübertragung,
Authentifizierung, Autorisierung und Überprüfung. Reihenweise Sicherheitsleistungen und
Datenverschlüsselungen werden bereitgestellt, um unternehmenskritische Daten zu schützen.
4.7.1
Enterprise User Security
Enterprise User Security zentralisiert die Verwaltung der Beglaubigung und Berechtigung der
Benutzer in einem Verzeichnis. Dadurch muss nicht jeder Benutzer in jeder Datenbank erneut
erstellt werden, sondern nur einmal. Der Benutzer kann anschliessend auf alle Datenbanken in
seiner Domäne zugreifen, sofern es die im Verzeichnis definierten Berechtigungen zulassen.
Oracle 10g bietet weiterhin die Möglichkeit, eine Smart Card mit einem SSL10 Zertifikat zu
versehen, das einem Benutzer den Roaming Zugang zum Grid erlaubt. Auch
Berechtigungszertifikate können eingesetzt werden.
4.7.2
Virtual Private Database
Eine VPD11 bietet eine vom Server erzwungen, feinkörnige Zugangskontrolle und einen
Zusammenhang zu sicheren Applikationen der innerhalb der Grid Einstellungen genutzt wird.
Dadurch wird mehreren Kunden, Partnern oder Abteilungen ermöglicht, die gleiche Datenbank
über einen sicheren Zugang abzufragen, um Zugriff auf Unternehmenskritischen Daten zu
erhalten. VPD ermöglicht es, gewisse Daten einem Kunden oder Partner zuzuordnen, mit der
Zusicherung auf physische Datentrennung. Diese Trennung kann bei Oracle 10g auf einzelne
Views, Tabellen oder sogar Spalten herunter gebrochen werden.
4.7.3
Oracle Label Security
Oracle Label Security ermöglicht es, gewisse Sicherheitsrichtlinien für einzelne Spalten oder
Zeilen zu definieren, um den Zugang auf diese zu kontrollieren und um Sicherheitspolicen zu
sparen. Über ein GUI12 kann der DBA13 diese Richtlinien schnell erstellen. Durch die
Verknüpfung mit dem Oracle Internet Directory können diese Richtlinien zentral verwaltet
werden obwohl der Grid ständigen Änderungen unterliegt.
4.8
Selbst verwaltende Datenbank
Einer der wichtigsten Punkte bei Grid Systemen ist, dass sie auf sich selbst angewiesen sind, also
sich selbst steuern und mit sich verändernden Umständen zu Recht kommen. Eine Grid
Infrastruktur muss fehlertolerant gegenüber individuellen Komponenten sein und höchste
Verfügbarkeit in allen Zusammenstellungen bieten.
10
SSL = Secure Socket Layer, ein Sicherheitsmechanismus
Virtual Private Database, im folgenden mit VPD bezeichnet
12
Graphical User Interface, Grafische Benutzeroberfläche
13
Datenbank Administrator, Verwalter der Datenbank
11
Anforderungen neuer DB Systeme durch Grid Computing 24
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
4.8.1
Höchste Verfügbarkeit
Die Oracle Datenbank 10g bietet die höchste Stufe an Verfügbarkeit und Ausfallsicherheit für
den Grid. Das ist auch der Fall bei günstiger Standardhardware. Abgesehen davon, dass Fehler
immer wieder passieren, bietet Oracle 10g eine beinahe sofortige Wiederherstellung von
Systemfehlern.
Weiterhin ist eine widerstandsfähige Funktion integriert, um vor Datenfehlern und
Missgeschicken zu schützen. Die neue flashback Funktion der Datenbank erlaubt die
Wiederherstellung einer DB zu einer bestimmten Zeit, um vor menschlichen Fehlern zu
schützen. Mit dieser Flash Backup Funktion können nun günstige Standardlaufwerke für ein
Backup verwendet werden.
Zusätzlich werden Funktionen angeboten, um die geplanten Stillstandszeiten zu minimieren, da
diese vor allem im Dauerbetrieb immer kritisch zu betrachten sind. Geplante Stillstandszeiten
entstehen beispielsweise durch ein Update der Datenbanksoftware. Die Rolling Update Funktion
verhindert diese Auszeiten, die Datenbank muss nicht heruntergefahren werden, um ein Update
auszuführen. Im Computergrid z.B. in einer Blade Farm organisiert die Datenbank das Update
so, dass ein Blade nach dem anderen ein Update erhält. Die Arbeit des einzelnen Blade
übernimmt in dieser Zeit ein anderes Blade. Dadurch bleibt die Datenbank immer online und die
Benutzer können mit den Daten arbeiten.
4.8.2
Selbst führend
Durch die selbst führenden Funktionen ist Oracle ein grosser Schritt zur Selbstverwaltung der
Datenbank gelungen. Die Funktionen enthalten einen Datenbankmonitor, um alle für die
Performanz des Systems wichtigen Daten zu erfassen. Aufgrund dieser Informationen werden
durch das Oracle Database Automatic Memory Managment automatisch Speicherressourcen auf
verschiedene Bestandteile der Datenbank verteilt. Das automatische Gesundheitsmanagement
der Datenbank versendet Nachrichten über diverse Aspekte der Datenbank um die Überwachung
zu vereinfachen.
4.8.3
Oracle Enterprise Manager Grid Control14
Durch den OEMGC ist es nicht nur möglich die Datenbank oder den Application Server von
Oracle zu steuern, sondern auch Bestandteile anderer Anbieter. Dazu gehören Web
Applikationen, Hosts, Storage Elemente und die Lastverteilung der Server. Das OEMGC enthält
weiterhin einen SDK15, um weitere Elemente darüber kontrollieren zu können. Grid Control
bezeichnet eine zentrale und einfache Verwaltungsumgebung, um Bestandteile im Grid zu
kontrollieren und die Performanz vom Grid zu überwachen. Das gilt für alle Bestandteile im
Grid und von jedem Ort im Netzwerk. Der DBA kann über OEMGC auf alle Funktionen der im
Grid enthaltenen Datenbanken zugreifen.
Grid Control betrachtet die Performanz und Verfügbarkeit des Grid als ein einheitliches ganzes
Gebilde statt als isolierte Speichereinheiten, Datenbanken und Applikationsservern. Das IT
Personal kann die einzelnen Hardwarebestandteile als logische Einheiten gruppieren und diese
14
15
Im weiteren Verlauf der Arbeit mit OEMGC bezeichnet
SDK = Software Developement Kit, eine Entwicklungsumgebung für Programme
Anforderungen neuer DB Systeme durch Grid Computing 25
ERROR! USE THE HOME TAB TO APPLY ÜBERSCHRIFT 1 TO THE TEXT THAT YOU WANT TO APPEAR HERE.
als eine Ressource managen. Dadurch wächst nicht die Komplexität des Systemmanagement,
wenn der Grid aus sehr vielen Rechnern besteht.
4.9
Zusammenfassung
Oracles neue Datenbank erfüllt die herausgearbeiteten Anforderungen und übertrifft diese sogar
teilweise. Damit ist ein guter Schritt Richtung Grid Datenbank erfolgt. Vor allem im Bereich der
Clustertechnik war Oracle schon in der letzten Version auf einem ähnlich guten Stand. Die
Verwaltung von Informationen wurde auf vielfältige Arten umgesetzt. Durch die Nutzung von
Standards können fremde Systeme jederzeit verbunden werden, solange diese auch die Standards
nutzen. Im Bereich der Sicherheit, der besondere Aufmerksamkeit erfordert, sind hohe
Massstäbe gesetzt. Auch die Anforderungen der Selbstverwaltung wurden umgesetzt. Dem Grid fähigen Datenbanksystem sollten keine Hindernisse mehr im Weg stehen.
Anforderungen neuer DB Systeme durch Grid Computing 26
5 Erreichte Ergebnisse und Ausblick
5.1
Erreichte Ergebnisse
Das Ziel der Arbeit, die Anforderungen von Datenbanken im Computergrid herauszuarbeiten,
wurde erreicht. Dafür wurden als erstes die Grundlagen des Grid Computing gezeigt. Die
Umsetzung der herausgearbeiteten Anforderungen wurde an der Oracle Datenbank 10g, der
neuen Grid – fähigen Datenbank von Oracle, gezeigt. Hierbei wurden viele Werkzeuge und
Techniken, die Oracle einsetzt, gezeigt um einen Eindruck von der Komplexität des Systems zu
erhalten. Der Leser kann sich nun einen Eindruck verschaffen, ob die Erarbeiteten
Anforderungen umgesetzt wurden.
5.2
Ausblick
Heute wird davon ausgegangen das Grid Computing der Nachfolger des Internet ist. In den
Grundlagen wurde in Abbildung 1 die Entwicklung vom heutigen Cluster zu zukünftigen Inter
Grids gezeigt. Inter Grids sollen einen nationalen oder sogar internationalen Umfang annehmen.
Ob es tatsächlich eine derartige Entwicklung geben wird, steht nicht genau fest. Wenn sich
allerdings alle Anbieter von Grid Produkten an die Standards des Global Grid Forum halten und
den Globus Toolkit als Standard Toolkit nutzen, stehen die Chancen für einen globalen Inter Grid
ziemlich gut.
Da diese Arbeit nur die theoretischen Aspekte zeigt, ist es natürlich fraglich, ob diese Techniken
auch in der Praxis so gut funktionieren, wie sie sich in der Theorie anhören. Um nun also auch
die praktischen Aspekte zu erfahren, darf sich der Leser auf die in naher Zukunft folgende
Diplomarbeit freuen. Die Diplomarbeit wird sich mit der Modularisierung einer bestehenden
Software Architektur durch Grid Computing unter besonderer Berücksichtigung von Oracles
Grid Datenbank 10g beschäftigen.
Anforderungen neuer DB Systeme durch Grid Computing 27
QUELLENVERZEICHNIS
Quellenverzeichnis
Quellen aus dem Internet:
[WHAT04]
http://whatis.techtarget.com/definition/0,,sid9_gci211801,00.html, Definition von
Cluster, abgerufen am 19.02.2004
[NETL04]
http://www.net-lexikon.de/Grid-Computing.html, Definition von Grid Computing,
abgerufen am 19.02.2004
[LIGH04]
http://www.lightreading.com/document.asp?doc_id=33405, Grid Networking,
abgerufen am 19.02.2004
[VISE04]
http://www.visek.de/?16430, Geschichte von Grid Computing, abgerufen am
19.02.2004
[GRID04]
http://www.gridcomputing.com/, Grid Computing Info Centre, abgerufen am
20.02.2004
[GRIF04]
http://www.gridforum.org/, Global Grid Forum, abgerufen am 20.02.2004
[ORAC04]
http://www.oracle.com/, Oracle, abgerufen am 20.02.2004
[TECH04]
http://technet.oracle.com/, Oracle Technet, abgerufen am 20.02.2004
PDF Dokumente
[ORAC02]
Oracle and the Grid, Oracle White Paper, Stand November 2002
[ORAC03]
Oracle Database 10g: The Database for the Grid, Oracle White Paper, Stand November 2003
[LAFR03]
Vertiefungsarbeit Lars Franke vom 28.07.2003 mit dem Titel „Architekturen von
SQL Datenbankservern“
Bücher:
[ERRA94]
Mehrrechner-Datenbanksysteme, von Erhard Rahm, Addison-Wesley Verlag, 1994
[KDAG01]
Component Database Systems, von Klaus R. Dittrich und Andreas Geppert,
DPunkt Verlag, 2001
[PEDA96]
Verteilte Datenbanken und Client/Server-Systeme, von Peter Dadam, Springer
Verlag, 1996
Anforderungen neuer DB Systeme durch Grid Computing 28
Stichwortverzeichnis
A
H
Anforderungen an Datenbanken im Grid 14
Heterogener
Zugang
mit
gewöhnlichen
Verbindungen und transparentem Gateways
22
Anforderungen an die Clustertechnik 14
Anforderungen an die Informationsverwaltung
15
Anforderungen an die Portabilität 16
Anforderungen an die Sicherheit 16
Anforderungen
System 17
an
ein
Selbstverwaltendes
Anforderungen an Einhaltung von Standards 15
Hohe Verfügbarkeit 24
I
Informationsaustausch bei Oracle 21
L
Anforderungen an Ressourcenmanagement 15
Ausblick 27
D
Definition von Clustern und Grid Computing 11
Die Entwicklung von Grid Computing 12
Lösungskonzept am Beispiel von Oracle 10g,
Grid Datenbank 19
M
Motivation 9
Distributed SQL und Distributed Transactions
21
O
E
Oracle Enterprise Manager Grid Control 25
Einhaltung von Standards 23
Oracle Real Application Cluster (RAC) 19
Einleitung 9
Oracle Streams 21
Enterprise User Security 24
Oracle Transportable Tablespaces 21
Entstehung von Clustering und Grid Computing
11
P
Erreichte Ergebnisse 27
Externe Tabellen und BFILES 22
G
Grid Computing als Nachfolger des Internet 13
Grundlagen 11
Oracle Label Security 24
Portabilität 23
Problemstellung und - abgrenzung 9
Q
Quellenverzeichnis 28
Anforderungen neuer DB Systeme durch Grid Computing 29
STICHWORTVERZEICHNIS
R
V
Resonanzen 20
Virtual Private Database 24
S
Vorgehen 10
Z
Scheduling und Ressourcenmanagement 22
Selbstführend 25
Ziel der Arbeit 10
Selbstverwaltende Datenbank 24
Zusammenfassung der Anforderungen 18
Sicherheitsmechanismen 23
Zusammenfassung Lösungskonzept 25
Anforderungen neuer DB Systeme durch Grid Computing 30
Herunterladen