Caché

You’ll make breakthroughs
in
data management 
and rapid development

Caché Technology Guide

Inhaltsverzeichnis

Die postrelationale Ära der Datenverarbeitung hat begonnen

Advanced Database Technology For Breakthrough ApplicationsDas Aufkommen der relationalen Datenbanken vor 30 Jahren stellte eine große Innovation dar. Statt in monolithischen Altdatenbanken mit proprietärem Datenschema konnten Daten nun im einheitlichen Tabellenformat gespeichert werden und standen für jeden, der SQL beherrschte, zum Abruf bereit. Entsprechend erfolgreich waren relationale Datenbanken und machten SQL schnell zum allgemeinen Standard für den Zugriff auf Datenbanken. Aus heutiger Sicht betrachtet, weisen relationale Datenbanken allerdings einige Defizite auf, die ihrem Einsatzbereich Grenzen setzen – vor allem hinsichtlich Performance und Skalierbarkeit, der Bedienerfreundlichkeit sowie der Eignung für moderne Entwicklungstechnologien.

Die Nutzung und Komplexität von Computeranwendungen nimmt exponentiell zu. Heutige Systeme stellen in zunehmendem Maße Verarbeitungsanforderungen, die die Möglichkeiten relationaler Technologien übersteigen. Viele Schlüsselanwendungen, die hohe Performance und Skalierbarkeit erfordern, wurden überhaupt nicht auf relationale Datenbanken portiert und selbst einfache Anwendungen stoßen heute immer häufiger an die Grenzen der traditionellen relationalen Technolgie.

Der “Impedance Mismatch” zwischen relationalen Datenbanken und den heutigen Entwicklungstechnologien ist zu einem gravierenden Problem geworden – er macht die Entwicklung komplexer und erhöht das Risiko zu scheitern. Während die Einfachheit tabellarischer Strukturen eine elegante Abfragesprache (SQL) ermöglicht, erweist es sich als schwierig, die Datenstrukturen der realen Welt in derart grob vereinfachende Zeilen und Spalten zu zerlegen. Das Ergebnis ist eine große Anzahl an Tabellen, deren Beziehungen schwer nachzuvollziehen und mühsam zu nutzen sind – Zeilen und Spalten sind einfach, die ausufernde Notwendigkeit, “Left OuterJoins”, “Stored Procedures” und “Trigger” zu programmieren, nicht.

Moderne Anwendungen werden normalerweise objektorientiert erstellt, weil sich so Informationen schneller und intuitiver beschreiben und nutzen lassen. Das beschleunigt die Entwicklung und erhöht die  Zuverlässigkeit. Leider sind Objekte von der Grundkonzeption her nicht mit relationalen Datenbanken kompatibel. Die Vorteile der objektorientierten Technologie verblassen schnell, wenn die entstehenden Datenbankobjekte in ein zweidimensionales relationales Modell gezwängt werden müssen.

Die Anforderungen moderner transaktionsverarbeitender Anwendungen überfordern die Möglichkeiten relationaler Technologie – sie sollen umfangreiche Netzwerke umspannen, Tausende von Benutzern in exzellenter Performance bedienen, Web-kompatibel und kostengünstig zu betreiben sein. Und sie müssen schnell entwickelt werden!

Zukunftsweisende Datenbanktechnologie für bahnbrechende Applikationen

InterSystems Caché gehört zu einer neuen Generation extrem hochleistungsfähiger Datenbanktechnologien. Caché vereint eine objektorientierte Datenbank, Hochleistungs-SQL und einen multidimensionalen Datenzugriff – wobei mit allen Methoden gleichzeitig auf dieselben Daten zugegriffen werden kann. Die Daten werden in einem einzigen integrierten Data Dictionary nur einmal beschrieben und stehen sofort für alle Zugriffsmethoden zur Verfügung. Im Vergleich zu relationalen Technologien zeichnet sich Caché durch eine exzellente Performance, höchste Skalierbarkeit, kurze Entwicklungszeiten und einfache Bedienbarkeit aus.

Aber Caché ist viel mehr als nur eine Datenbanktechnologie. So verfügt Caché über einen Applikationsserver für modernste objektorientierte Programmierung, kann eine breite Palette weiterer Technologien integrieren und enthält eine Hochleistungslaufzeitumgebung mit einzigartigem Caching-Mechanismen.

Caché unterstützt nativ verschiedene Skriptsprachen: Caché Object Script, eine leistungsstarke und einfach zu erlernende objektorientierte Programmiersprache, Caché Basic, eine Obermenge der weit verbreiteten Programmiersprache Basic mit Erweiterungen für einen leistungsstarken Datenzugriff und Objekttechnologie sowie Caché MVBasic, eine Basic-Variante, die von MultiValue-Anwendungen (manchmal auch als Pick-Applikationen bezeichnet) verwendet wird. Andere Sprachen wie Java, C# und C++ werden über direkte Call-in-Schnittstellen bzw. über ODBC, JDBC, .NET u.a. unterstützt. Zudem ermöglicht eine Objektschnittstelle den Zugriff auf die Caché-Datenbank und andere Elemente von Caché als Eigenschaften und Methoden.

Auch in einem anderen Bereich geht Caché über die Möglichkeiten herkömmlicher Datenbanken hinaus: Es bringt nämlich eine umfangreiche Umgebung zur Entwicklung ausgefeilter Browser-basierter (Web-)Anwendungen mit. InterSystems’ Technologie Zen ermöglicht die schnelle Entwicklung und Inbetriebnahme funktionsreicher und im höchsten Maße interaktiver Webseiten. Dadurch können Tausende von Web-Benutzern gleichzeitig auf die Datenbankanwendungen zugreifen, selbdst wenn diese auf preiswerter Hardware laufen…. also goes beyond traditional databases by incorporating a rich environment for developing sophisticated browser-based (Web) applications. Caché Server Pages (CSP) technology allows the rapid development and execution of dynamically generated Web pages. Thousands of simultaneous Web users can access database applications, even on low-cost hardware.

Für Anwendungen, die nicht auf Browser-Technologien basieren, kann die Benutzeroberfläche mit gängigen Front-End-Werkzeugen wie Java, .NET, C# oder C++ entwickelt werden. Die besten Ergebnisse (schnellste Programmierung, höchste Performance und geringster Wartungsaufwand) erhält man in der Regel dann, wenn die gesamte restliche Entwicklungsarbeit in Caché vorgenommen wird. Doch Caché bietet auch einen äußerst hohen Grad an Interoperabilität mit anderen Technologien und unterstützt alle gängigen Entwicklungswerkzeuge, so dass ein breites Spektrum an Entwicklungsmethoden zur Verfügung steht.

The Caché Technology Guide wurde in folgende vier Hauptkategorien unterteilt: