Green-IT und Datenbanken - ODBMS
Green-IT und Datenbanken - ODBMS
Green-IT und Datenbanken - ODBMS
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
2 Gr<strong>und</strong>lagen<br />
Die Zuordnung der Objekte <strong>und</strong> Tabellen in die multidimensionale Struktur erzeugt<br />
Caché automatisch, obwohl den Programmierern auch die Möglichkeit gegeben wird,<br />
diese Zuordnung selbst festzulegen.<br />
"Die multidimensionale Daten-Engine selbst kennt kein Data Dictionary <strong>und</strong> folglich<br />
auch keine Datendefinitionen."[Cac]<br />
Ein weiterer Vorteil von Caché ist die Möglichkeit, dass Entwickler direkt auf die<br />
Globals zugreifen können, wodurch besonders performante Anwendungen entwickelt<br />
werden können, da der Umweg über die virtuellen Maschinen für die SQL -<strong>und</strong> Objektinterpretation<br />
vermieden wird. Für den direkten Zugriff auf die Globals stehen<br />
Scriptsprachen wie Caché Object Script (basierend auf MUMPS) zur Verfügung.<br />
In den Globals können Daten mit einer beliebigen Anzahl von Subscripts gespeichert<br />
werden, die nicht notwendigerweise vom gleichen Typ sein müssen. So kann ein<br />
Subscript vom Typ Integer <strong>und</strong> ein anderer vom Typ String sein, obwohl sie sich<br />
auf der gleichen Subscript-Ebene befinden. Nach Angaben von Intersystems laufen<br />
Anwendungen auf Caché, die mit gewöhnlichen SQL-Abfragen arbeiten, aufgr<strong>und</strong> der<br />
effizienten multidimensionalen Struktur performanter als auf traditionellen relationalen<br />
<strong>Datenbanken</strong>. [Cac]<br />
Trotz der guten Unterstützung des relationalen Datenbankmodells, unter anderem<br />
auch durch standardisierte Schnittstellen wie ODBC- <strong>und</strong> JDBC-Treiber, ist Caché,<br />
wie bereits erwähnt, eine objektorientierte Datenbank. Da das Objektmodell von<br />
Caché auf dem ODMG-Standard (Object Database Management Group) basiert, werden<br />
alle aus der objektorientierten Programmierung bekannten Konzepte wie Kapselung,<br />
Mehrfachvererbung, Polymorphismus <strong>und</strong> Collections unterstützt. Um die<br />
Arbeit für Entwickler zusätzlich zu vereinfachen, stellt Caché eine Sammlung von<br />
Klassen bereit, mit deren Hilfe Objekte direkt aus .NET, C++ oder Java bearbeitet<br />
werden können, um nur einige zu nennen.<br />
Eine weitere Besonderheit von Caché ist die transaktionale Bitmap-Indizierung, durch<br />
die die Performance komplexer Aufgaben signifikant erhöht werden kann.[Cac] Die<br />
Bitmap-Indizierung stellt für jeden Wert einer Spalte oder Eigenschaft einen Bitstring<br />
bereit. Jede Stelle des Bitstrings steht für ein in der Datenbank gespeichertes Objekt.<br />
Eine 1 im Bitstring bedeutet, dass dieses Objekt die Eigenschaft aufweist, eine 0, dass<br />
es diese nicht aufweist. Durch diese Art der Darstellung können komplexe Abfragen<br />
durch Boolesche Operationen auf den Bitstrings durchgeführt werden, wodurch die<br />
Antwortzeiten von Abfragen auf großen Datenmengen um den Faktor 100 beschleunigt<br />
werden können. [Cac] Die Nachteile einer herkömmlichen Bitmap-Indizierung,<br />
wie langsame Aktualisierungszeit <strong>und</strong> großer Speicherplatzbedarf, werden bei transaktionalen<br />
Bitmap-Indizes durch die multidimensionale Struktur eliminiert.<br />
Für die Verwaltung der Datenbank <strong>und</strong> den Zugriff auf die Daten bietet Caché drei<br />
Werkzeuge (Systemmanagement-Portal, Studio, Terminal) an, die im Folgenden kurz<br />
16