DECS, LEI und ODBC/JDBC Mathias Bierl EnTeCo Consult GmbH Agenda • DECS – Funktionsweise und Konfiguration • LEI – Funktionsweise und Konfiguration • ODBC/JDBC – Funktionsweise und Implementierung • Vergleich der Einsatzgebiete Geschäftsfeld EnteCo Consult Die EnTeCo Consult GmbH bietet alles rund um das Thema Workgroup Lösungen – im besonderen Lotus Notes und Websphere. Das Portfolio umfasst neben den Infrastrukturthemen (Konzept, Betrieb, Migration von und zu Lotus Notes, mobile Datenanbindung) und der Datenbankentwicklung, auch die Programmierung und den Vertrieb eigener Anwendungen (z.B. Formula.Notes). Referenzen Wer bin ich ? • Mathias Bierl, Staatl. Gepr. Wirtschaftsinformatiker ([email protected]) • Notesentwicklung / Administration seit 1997 (R 4 – ND 7) • Zertifizierungen: – IBM Advanced Certified Application Developer R4/R5/ND6/ND7 – IBM Advanced Certified System Administrator R4/R5/ND6/ND7 Wer bin ich ? • Projekte mit Lotus / Domino: – Lotus Notes R4 – ND 7 – Domino.Doc, Domino.Workflow, Lotus Workflow, LEI, DECS, DGW, Quickplace, Sametime – Formelsprache, Skript, Klassen, JAVA, JS, HTML – RDBS, C-/C++-API, WIN 3.11-WIN 2000, OS/2, AIX, ... – SAP, XML/XSL, Servlet – Mobile Datenanbindung – Datenmigrationen von, zu und innerhalb Lotus Domino – Konsolidierungen von Serverumgebungen DECS • Integriert seit Domino 5 • Davor Bestandteil von Notes Pump (Vorgänger von LEI) • Nutzt sowohl native Treiber wie auch ODBC Treiber zum Zugriff auf Datenbanksysteme DECS • • • • Real-Time Zugriff auf Backend-Datenbanken Notes dient nur noch als Frontend Reagiert nur auf Ereignisse, keine Synchronisation Backend Datenbank-System muss zur Verfügung stehen DECS • Keine Datenbankverbindungen auf Client-Ebene notwendig • Zur Nutzung muss die folgende Zeile in der Notes.ini des Servers vorhanden sein: – EXTMGR_ADDINS=decsext DECS • DECS-AddIn Task muss gestartet werden – Beim ersten Start des Tasks wird die DECS Admin DB angelegt • DECS Admin DB verwaltet – Connections: Verbindungen zu Datenbanksystemen – Activities: Für DECS aktivierte Anwendungen und Mappings zu Backend-Datenbank DECS Arbeitsweise Domino/Notes Applikation überwacht DECS Extension Manager Library ODBC Manager OLE DB Treiber für ODBC und DB Treiber für OLE und DB DB2 Datenbankabhängige Zugriffsprotokolle Sonstige native Treiber DECS Konfiguration • Anlage einer Connection (Quelle Datenbank Backend System) DECS Konfiguration • Anlage einer Activity DECS Konfiguration • Starten der Activity Demo LEI • Separates Produkt • Nachfolger von Notes Pump • Nutzt sowohl native Treiber wie auch ODBC Treiber zum Zugriff auf Datenbanksysteme • LEI Server kann sowohl auf einem existierenden Server wie auch auf einem Notes Client installiert werden LEI • Auf einem Server kann nur entweder LEI oder DECS laufen – Allerdings sind die DECS Funktionalitäten vollständig in LEI integriert LEI • Bietet verschiedene Typen von Aktivitäten: – – – – – – Archive Command Direct Transfer Java Polling Replication LEI – – – – Scripted Virtual Agents Virtual Documents Virtual Fields (DECS) LEI • Aktivitäten können in Abhängigkeit voneinander laufen • Protokollierung jeder gestarteten Aktivität • Benachrichtigung bei Fehlern • Detaillierte Scheduling Konfiguration • Virtual Fields Aktivitäten werden analog zu DECS eingerichtet LEI Arbeitsweise Domino/Notes Applikation überwacht DECS Extension Manager Library ODBC Manager OLE DB Treiber für ODBC und DB Treiber für OLE und DB DB2 Datenbankabhängige Zugriffsprotokolle LEI Task Sonstige native Treiber LEI Konfiguration • Anlage der Ziel- und Quellconnections LEI Konfiguration • Anlage der Activity LEI Konfiguration • Activities können unabhängig von Schedule Einstellungen auch manuell gestartet werden Demo ODBC • • • • Open Database Connectivity Entwickelt von Microsoft Erste offizielle Vorstellung: 1991 Erlaubt den Zugriff auf alle Datenbanken für die ein ODBC Treiber existiert • Die Nutzung ist praktisch über alle bekannten Programmiersprachen möglich ODBC Komponenten • ODBC besteht aus folgenden Komponenten: – – – – – ODBC API ODBC Treiber Manager ODBC Datenbank Treiber ODBC Cursor Bibliothek ODBC Administrator ODBC Treiber Typen • ODBC Datenbank Treiber werden in folgende Level aufgeteilt: – Core : Basisfunktionalitäten – Level 1 : Core und weitere Funktionalitäten, z.b. Transaktionen – Level 2 : Core, Level 1 und weitere Funktionalitäten, z.B. Dynamische Parameter ODBC Zugriff Applikation ODBC API ODBC Manager ODBC Treiber API Treiber für ODBC und DB Treiber A Treiber B ... ODBC Implementierungsalternativen Datenbankabhängige Zugriffsprotokolle ODBC Verbindung einrichten • Konfigurieren der ODBC Verbindung über den ODBC Administrator: – Auswahl des Verbindungstyps (Benutzer, Datei, System) – (Optional) Treiberinstallation – Auswählen des Datenbanktreibers – Benennen der Verbindung – Einstellen der Verbindungsdaten (je nach Datenbanktreiber) JDBC • Entwickelt von Sun • Erste offizielle Version: 1997 • Erlaubt den Zugriff auf alle relationalen Datenbanken für die ein JDBC Treiber existiert • Bestandteil der Sun Strategie auf dem Enterprise Markt • Für JDBC gibt es eine ODBC-Bridge zum Zugriff auf ODBC Datenbanken JDBC Komponenten • JDBC besteht aus den folgenden Komponenten: – JDBC API – JDBC Treiber Manager – JDBC Datenbank Treiber JDBC Zugriff Java Applikation JDBC API JDBC Manager JDBC Treiber API JDBC Net Treiber Treiber für JDBC-ODBC Bridge Treiber A Treiber B Treiber für ODBC und DB Öffentliches Protokoll Datenbankabhängige Zugriffsprotokolle ... JDBC Implementierungsalternativen JDBC Zugriff : Schritt für Schritt • • • • Laden der Datenbanktreiber Verbindungsaufbau mit UserID und Passwort Erzeugung eines SQL Statements Senden einer SQL Anweisung über das Statement • Verarbeiten der Abfrageergebnisse über die ResultSet-Klasse JDBC Treiber Typen JDBC-ODBC-Bridge (Typ 1) Nutzen vorhandener ODBC-Treiber Native-API-Treiber (Typ 2) Basiert auf Bibliotheken des DBMS-Herstellers JDBC-Net-Treiber (Typ 3) Aufteilung Treiber in JDBC-Client und JDBC-Server Native-Protokoll-Treiber (Typ 4) Direkte Übersetzung der JDBC-Aufrufe in DBS-Aufrufe Client direkt mit Datenbankserver verbunden Nachteilig sind die i.A. proprietären DBS-Protokolle JDBC Verbindung einrichten • Eine JDBC Verbindung verlangt nur die Installation des JDBC Datenbank Treibers, z.B. als Jar-Package auf dem Ausführungsrechner des Java Codes • Die Verbindungsdaten werden in der Anwendung definiert Demo Wann setze ich was ein ? • Notes soll ausschließlich als Frontend mit einer oder mehreren Datenbanken verwendet werden – DECS • Direkt-Abgleich zwischen verschiedenen Datenbanksystemen – LEI • Abgleich zwischen verschiedenen Datenbanksystemen mit zusätzlicher Übertragungslogik – ODBC/JDBC Wann setze ich was ein ? • Schedulingverwaltung von Abgleichen, Agenten, Replikationen,… – LEI • Zugriff auf Datenbanksysteme ohne Abgleich – ODBC/JDBC Wann setze ich was ein ? • Da DECS in LEI integriert ist, kann natürlich auch statt DECS LEI verwendet werden, vor allem wenn zusätzlich auch noch Abgleiche benötigt werden • LEI unterstützt auch Scripted bzw Java Activities mit denen selbst geschriebene Notes Agenten bzw Java Klassen miteingebunden werden können Q&A • Fragen ?? Kontakt EnTeCo Consult GmbH Vogelhainweg 6 D-71065 Sindelfingen Phone: +49 (0)7031 - 49 90 96 60 Fax: +49 (0)7031 - 49 90 96 80 Web: http://www.enteco-consult.de Mathias Bierl eMail: [email protected] Mobil: +49 (0) 172 877 27 65