Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M...

29
DB/CRM (C) J.M.Joller 2002 131 Architekturen Von der DB basierten zur Multi-Tier Anwendung

Transcript of Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M...

Page 1: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 131

Architekturen

Von der DB basierten zur Multi-Tier Anwendung

Page 2: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 132

Lernziele

• Sie kennen Design und Architektur Patterns, welche beimDatenbankzugriff in verteilten Systemen verwendetwerden

• Sie können ODBC und JDBC gegeneinander abgrenzen

• Sie wissen, dass Architekturen langlebiger als konkreteProdukte sind– Architekturen lassen sich längerfristig standardisieren

=> Konzeptionelle Modelle– Produkte wechseln zum Teil sehr schnell

=> Lebenszyklen bei den Investitionen beachten (bei auslaufenden Modellen eventuell Miete, Leasing, ...)

Page 3: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 133

Aufbau

• Remote Database Access– Einführung in die Problematik

• ODBC– Architektur

• JDBC– Architektur

• Enterprise Lösungen– Multi Tier Applikationen : Applikations- Szenarios– Client Tier– Web Tier– Applikations Tier

Page 4: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 134

Warum?

• Kernthema einer Applikations-Entwicklung– Wie kann meine Applikation oder Teile davon möglichst lange

leben (Investitionsschutz)?

• Lösungsansatz– Architekturen basierte Informationssysteme planen und auswählen– MVC Pattern als Gedankenstütze

• Darstellung (View)• Logik (Model)• Koordination (Controller)

– View• Upper / Front End : GUI, Thin Client, DB unabhängig

– Model• Lower / Back End : DBMS abhängig (so universell wie

möglich)

Page 5: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 135

Mögliche Ansätze

• Trennen der View vom Model und dem Controller– Ansatz 1

• ODBC : Open Database Connection• oder JDBC (Java Version von ODBC)

– Ansatz 2• DB unabhängige Tools für die Entwicklung der View, des

Frontends einsetzen– Ansatz 3

• Multi Tier Architektur festlegen

– Praxis• Kombination aller drei

Page 6: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 136

ODBC - Open Database Connectivity

• ODBC ist der Desktop Standard!– Für PCs, Workgroup und unternehmensweite Datenbank-

Anwendungen

• ODBC ist herstellerunabhängig,– obschon der Standard von Microsoft um 1990 entwickelt wurde

• ODBC basiert auf– CLI (Call Level Interface) von X/Open und SQL Access Group

Page 7: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 137

ODBC - Einschränkungen

• ODBC benutzt das CLI für SQL, um eine einheitliche SQLSyntax zu definieren

• Da jeder DBMS Hersteller einzigartig sein möchte, gibt esunterschiedliche „Dialekte“ von SQL

Page 8: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 138

ODBC Architektur

Page 9: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 139

ODBC - Architektur

• Basis– Daten : Files, relationale, .... Datenbanken

• ODBC Driver– auf jedem PC installiert– setzt ODBC gerechte Abfragen ab– setzt SQL Anfrage so um, dass die Datenquelle sie versteht (update,

delete, select, rollback)

Page 10: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 140

ODBC - Architektur

• ODBC Driver Manager– liefert eine Liste mit möglichen (ODBC) Datenquellen

• ODBC Query Tool (Desktop Anwendung)– erlaubt es dem Benutzer die Abfragen zu formulieren und die

Ergebnisse auszuwerten

Page 11: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 141

ODBC Spezifikation

• Es gibt drei Konformitäts-Levels:– Core Level API

• Resourcen zuordnen, mit Datenquellen verbinden, Abfragenvorbereiten und ausführen

– Level 1 API• Core API + Möglichkeit Informationen über die Daten zu

liefern (Datenkatalog)– Level 2 API

• Level 1 + Möglichkeit Verbindungsparameter abzufragen, ...

Page 12: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 142

ODBC Support

• Alle grösseren Datenbank-Anbieter unterstützen ODBC– Oracle– Sybase– Microsoft– IBM– ...

• Praxis– Excel als OBDC Datenquelle

• später wird eine andere Datenquelle unter dem selben ODBCNamen (und der selben Tabellenstruktur) angeboten=> keine Programmänderung!

Page 13: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 143

JDBC - Java Database Connectivity

• 1996 von Javasoft entwickelt• Idee von JDBC ist analog zu ODBC• basiert auch auf CLI von X/Open• ermöglicht die Datenbankanbindung von Applets und Java

Applikationen– diese ist aber auch über ODBC möglich– JDBC bietet auch eine „Brücke“ zu ODBC

Page 14: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 144

JDBC Software Struktur

Page 15: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 145

Enterprise Architekturen

• Multi Tier Architekturen– Client Tier

• HTML• Java Applet• Java Client (Handy, Palm, Notebook, ...)

– Web Tier• handling der Web basierten Aufgaben

– Applikations Tier• Applikations-Server (in der Regel mit DBMS)

– Service Tier• Web Services (beispielsweise Message basiert)

Page 16: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 146

Enterprise Architekturen

Page 17: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 147

Enterprise ArchitekturenThin Client an DBMS über

Applikationsserver

Page 18: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 148

Enterprise ArchitekturenThin Client an DBMS

über Web Tier

Page 19: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 149

Enterprise ArchitekturenDas MVC Pattern

Page 20: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 150

Enterprise Architekturen – Java Technologienin Bälde: alles in .net (MS)

Page 21: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 151

Enterprise Architekturen – Beispiel

Page 22: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 152

Enterprise Architekturen – Web Tier

Page 23: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 153

Enterprise Architekturen – Web TierDBMS als Basis für Web Content (mySite)

Page 24: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 154

Enterprise Architekturen – Web Tier

Page 25: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 155

Enterprise Architekturen – Web TierMVC in Aktion

Page 26: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 156

Enterprise Architekturen – Applikations Tier

• Der Applikations Tier bietet unterschiedliche Dienste aufder applikatorischen Ebene an– Finanz- und Rechnungswesen ...

Page 27: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 157

Enterprise Architekturen – Enterprise Tier

• Der Enterprise Tier muss die Integration der Web basiertenTechnologie mit der Legacy Software anbieten /garantieren

Page 28: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 158

Ausblick

Von der Datenbank zur Enterprise Applikation

Page 29: Architekturen file• Sie kennen Design und Architektur Patterns, ... Leasing, ...) DB/CRM (C) J.M ... Aufbau • Remote Database Access – Einführung in die Problematik • ODBC

DB/CRM (C) J.M.Joller 2002 159

Trends

• Datenbanken – Trends– DB Anbieter werden vermehrt in Applikations-Server Geschft

wachsen– XML ist ein „universelle“ Informatiksprache mit direkter

Auswirkung auf die DBMS Szene• XML DBs• Ausgabe der Abfragen als XML• ...