JDBC: Bessere Performance durch kluge Treiberwahl

JDBC-Treiber kommen in vier unterschiedlichen Varianten:

  • Typ 1: Die Java-API für Datenbankkonnektivität ist ODBC-kompatibel. Soll eine Datenbank mit ODBC-Unterstützung mit Java-Code verknüpft werden, kann ein JDBC-Treiber vom Typ 1 eine Brücke zwischen ODBC und JDBC bilden. Dieser Treiber wurde speziell entworfen, um die Verwendung der JDBC zu fördern. Denn er machte diese kompatibel zur Installationsbasis, also zu bereits auf dem Markt befindlichen ODBC-Datenbanken.
  • Typ 2: Diese Treiber ähneln prinzipiell den Treibern vom Typ 1. Allerdings dienen sie als Brücke zu bestimmten Datenbankschnittstellen statt zu einem Standard. Dieser Typ wurde entwickelt, um das Java Native Interface (JNI) zu nutzen. Ein Treiber vom Typ 2 wandelt mithilfe von JNI-Datenbankaufrufe in für die Datenbank geeignete Funktionsaufrufe um.
  • Typ 3: Diese Treiber sind komplexer aufgebaut als Typ 1 oder Typ 2. Sie handhaben Aufrufe der API, indem sie diese in generische Datenbankaufrufe umwandeln und sie anschließend, unter Verwendung des Protokolls der Datenbank, wieder in Aufrufe zurückverwandeln. Sie erscheinen vielleicht ein wenig komplex, doch vom Ansatz her sind sie am geradlinigsten.
  • Typ 4: Bei diesem Typus handelt es sich um spezifische Java-Treiber, die eigens dafür geschrieben wurden, die JDBC mit bestimmten Datenbanken einzusetzen. Die Verfügbarkeit dieser Treiber nimmt natürlich im Lauf der Zeit zu. Es sind keine Aufrufe erforderlich. Das Verfahren besteht vielmehr in einer direkten Kommunikation mit der Datenbank über das jeweils geeignete Protokoll.

Grundlegende Auswahlkriterien

Im Allgemeinen sind die Treiber vom Typ 1 und Typ 3 generisch, während die vom Typ 2 und Typ 4 datenbankspezifisch funktionieren. Diese Auswahlkriterien allein genügen jedoch oft nicht für eine endgültige Entscheidung. Hier also noch einige weitere Charakteristika:

  • Typ 1: Treiber vom Typ 1 kommen selten zum Einsatz. Ausnahme: Es wird bereits eine Datenbank mit Unterstützung für die ODBC, jedoch nicht für die JDBC verwendet. Im Java SDK ist zwar ein generischer JDBC-ODBC-Brückentreiber enthalten, doch der veranschaulicht nur die Schwachstelle dieses Typs: die geringe Geschwindigkeit. Es gibt kaum Gründe dafür, einen JDBC-Treiber vom Typ 1 zu benutzen, wenn ein anderer Typ zur Verfügung steht.
  • Typ 2: Derzeit mangelt es an Treibern vom Typ 2. Schon deshalb dürfte die Wahl vermutlich nicht auf diesen Typ fallen. Bei eigenständigen Anwendungen und Server-Anwendungen können diese Treiber jedoch die richtige Lösung anbieten. Zudem erfordern sie gewöhnlich weniger technische Kenntnisse der Funktionsweise der Zieldatendank.
  • Typ 3: Treiber vom Typ 3 sind Treibern vom Typ 1 eindeutig überlegen. Es kommt mitunter vor, dass für eine bestimmte Datenbank einfach keine Treiber vom Typ 2 oder vom Typ 4 verfügbar sind. Microsoft Access liefert ein Beispiel hierfür. Wenn kein Treiber vom Typ 4 existiert, bleibt die Wahl zwischen einem Treiber vom Typ 2 oder einem vom Typ 3. Der Typ 3 bietet dann mehr Portierungsmöglichkeiten, sofern dies von Belang ist.
  • Typ 4: Typ-4-Treiber sind häufig die effizienteste Alternative. Sie stellen eine direkte Verbindung her, statt Aufrufe umzuleiten. Falls es für die konkret verwendete Datenbank einen Treiber vom Typ 4 gibt, sollte die Wahl generell auch auf diesen fallen. Ausnahmen hiervon bilden eigenständige Anwendungen und Server-Anwendungen, für die die protokollspezifische Beschaffenheit von Typ 4 keine Vorteile bringt. Trotzdem ist die Geschwindigkeit eines Typ-4-Treibers (ebenso wie bei Typ 2) sehr hoch. Denn es gibt nur einen Umwandlungsschritt.

Weitere Informationen zu den JDBC-Treibern bietet die Sun-Website.

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Netzwerk-Portfolio für das KI-Zeitalter

Huawei stellt auf der Connect Europe 2024 in Paris mit Xinghe Intelligent Network eine erweiterte…

1 Tag ago

Internet-Tempo in Deutschland: Viel Luft nach oben

Höchste Zeit für eine schnelle Kupfer-Glas-Migration. Bis 2030 soll in Deutschland Glasfaser flächendeckend ausgerollt sein.

1 Tag ago

Erste Entwickler-Preview von Android 16 verfügbar

Schon im April 2025 soll Android 16 den Status Plattformstabilität erreichen. Entwicklern gibt Google danach…

1 Tag ago

Kaspersky warnt vor Cyberangriff auf PyPI-Lieferkette

Die Hintermänner setzen KI-Chatbot-Tools als Köder ein. Opfer fangen sich den Infostealer JarkaStealer ein.

2 Tagen ago

Digitale Produkte „cyberfit“ machen

Vernetzte Produkte müssen laut Cyber Resilience Act über Möglichkeiten zur Datenverschlüsselung und Zugangsverwaltung verfügen.

2 Tagen ago

Google schließt schwerwiegende Sicherheitslücken in Chrome 131

Das jüngste Update für Windows, macOS und Linux stopft drei Löcher. Eine Anfälligkeit setzt Nutzer…

2 Tagen ago