34
Wizards & Wizards & Builders Builders GmbH GmbH Datenbanken Datenbanken Client / Server Client / Server Architektur Architektur

Wizards & Builders GmbH Datenbanken Client / Server Architektur

Embed Size (px)

Citation preview

Page 1: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

DatenbankenDatenbanken

Client / ServerClient / Server

ArchitekturArchitektur

Page 2: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Diese Schulung dient dem allgemeinen Verständnis zur

Entwicklung von Anwendungen basierend auf der Client / Server

Architektur

Page 3: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

ThemenübersichtThemenübersicht

Begriffsdefinition Client/ServerBegriffsdefinition Client/Server AnwendungsarchitekturenAnwendungsarchitekturen Technische Aspekte für C/S AnwendungenTechnische Aspekte für C/S Anwendungen Client-Server DatenbankenClient-Server Datenbanken SQL StandardSQL Standard SQL ErweiterungenSQL Erweiterungen Server AdministrationServer Administration Client-Server mit VFPClient-Server mit VFP

Page 4: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Begriffsdefinition C/SBegriffsdefinition C/S

Verteilung von Aufgaben auf Verteilung von Aufgaben auf mehrere Anwendungenmehrere Anwendungen

Zusammenarbeit von Zusammenarbeit von Anwendungen auf einem oder Anwendungen auf einem oder mehreren Computernmehreren Computern

Klassische DefinitionKlassische Definition Server stellt CPU und SpeicherServer stellt CPU und Speicher Client übernimmt Auswertung und Client übernimmt Auswertung und

PräsentationPräsentation

Page 5: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Ziele von Client-ServerZiele von Client-Server

Reduzierung von KostenReduzierung von Kosten Interoperabilität (LAN, WAN)Interoperabilität (LAN, WAN) Portabilität (diverse Systeme)Portabilität (diverse Systeme) Skalierbarkeit Skalierbarkeit Kürzere EntwicklungszeitenKürzere Entwicklungszeiten Integration von AnwendungenIntegration von Anwendungen

Page 6: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

AnwendungsarchitektureAnwendungsarchitekturenn

Client-Server Architekturen Client-Server Architekturen 3-Ebenen Architektur (3-Tier)3-Ebenen Architektur (3-Tier) 5-Ebenen Architektur (Samba)5-Ebenen Architektur (Samba) MehrebenenarchitekturMehrebenenarchitektur

Page 7: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Client-Server Client-Server ArchitekturenArchitekturen

PräsentationPräsentation BildschirmanzeigeBildschirmanzeige

AnwendungsfunktionenAnwendungsfunktionen GeschäftsregelnGeschäftsregeln VorgangssteuerungVorgangssteuerung

DatenmanagementDatenmanagement DatenzugriffDatenzugriff DatenspeicherungDatenspeicherung

Page 8: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Data Management

Data Management

ApplicationFunction

Presentation

Client Server Client Server ArchitekturenArchitekturen

ApplicationFunction

Presentation

Data Management

Data Management

ApplicationFunction

Presentation Presentation

DistributedPresentation

DistributedData Mgmt.

RemoteData Mgmt.

DistributedFunction

RemotePresentation

Data Management

ApplicationFunction

Presentation

Data Management

ApplicationFunction

ApplicationFunction

Presentation

Netzwerk

Page 9: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Drei Ebenen ArchitekturDrei Ebenen Architektur

Präsentation

Businessebene

Datenmanagement

Kommuniziert mit dem Anwender und nimmt Dienste der Businessebene in Anspruch

Führt die Geschäftsregeln aus, verwaltet Prozeßinformationen und managt Transaktionen

Datenbankmanagementsystem der die Daten bereitstellt, z. Bsp. aus dem Internet abholt

Page 10: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

5 Ebenen-Modell5 Ebenen-Modell

DatenzugriffDatenzugriff

Dienste und Datenlogik

Anwendungslogik

Dialogsteuerung

PräsentationHTML, Terminals, Windowsgeräteabhängige Darstellung

Geräteunabhängige Steuerung undKoordinierung BenutzerdialogAnwendungsspezifische Steuerungs- und Verwaltungsfunktionen,Teile der Business LogikDatenselektion und -manipulationE-Mail, Drucken, Mailing

Verbindung zum DBMSVerbindung zum DBMS

Page 11: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

C/S KommunikationC/S Kommunikation

Klassische C/S-KommunikationKlassische C/S-Kommunikation C/S KomponentenC/S Komponenten

ClientClient ServerServer

Verteilte ProzesseVerteilte Prozesse DCOMDCOM DNADNA CORBACORBA

Page 12: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Front End „Client“ Component

Klassisches C/S PrinzipKlassisches C/S Prinzip

Back-End “Server” Component

Server Operating System

Client Operating System

Page 13: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

C/S KommunikationC/S Kommunikation

OLE/DBOLE/DB ODBCODBC DBLibDBLib

NetLibNetLib NetlibNetlib

Open Data ServicesOpen Data Services

TDSTDS

Client / Middle TierClient / Middle Tier ServerServer

ADOADO

SQL ServerSQL ServerApplicationApplication

Page 14: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Windows DNAWindows DNA

Thin Thin ClientClient PC PC

ClientClient Mobile Mobile ClientClient

DatenbanDatenbankk Server Server

Mail/Mail/GroupwareGroupwareServerServer

MainframMainframeeSystemeSystemeMiddle-tier Server

Business RulesTransaction Logic Components

Web ServicesConnection and Integration Services,

etc...

Open protocols (HTTP, LDAP, etc.)

Common Infrastructure ServicesSecurity, Directory,Delivery ServicesSystems Management, H/W independence, etc.

Page 15: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Client-Server Client-Server DatenbankenDatenbanken

Datenbanken allgemeinDatenbanken allgemein Merkmale eines Server DBMSMerkmale eines Server DBMS SQL StandardSQL Standard AdministrationAdministration Client-Server mit VFP Client-Server mit VFP Unterschiede SQL92 / VFP Unterschiede SQL92 / VFP

Page 16: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Datenbanken allgemeinDatenbanken allgemein

Hierarchische Datenbank Hierarchische Datenbank IMSIMS

Relationale DatenbankRelationale Datenbank enthalten normalerweise SQLenthalten normalerweise SQL DB2, Oracle, Informix, SQL ServerDB2, Oracle, Informix, SQL Server

Objektorientierte DatenbankObjektorientierte Datenbank GemStone, ObjectStoreGemStone, ObjectStore

Page 17: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Merkmale eines Server Merkmale eines Server DBMSDBMS

Multi-User fähigMulti-User fähig SecuritySecurity Backup and RecoverBackup and Recover TransaktionenTransaktionen Integritätschecks, LogsIntegritätschecks, Logs Management ConsoleManagement Console Tuning-OptionenTuning-Optionen

Page 18: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

SQL StandardSQL Standard

SQL 89 vs. 92, SQL 3SQL 89 vs. 92, SQL 3 Data DefinitionData Definition Data ManipulationData Manipulation Cursor OperationsCursor Operations ViewsViews Security and IntegritySecurity and Integrity Recovery and ConcurrencyRecovery and Concurrency Schemas and CatalogsSchemas and Catalogs Sessions and ConnectionsSessions and Connections

Page 19: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

SQL StandardsSQL Standards

SQL 89SQL 89 Basis für viele ImplementationenBasis für viele Implementationen Keine DomainsKeine Domains rudimentäre DDLrudimentäre DDL

SQL 92SQL 92 Erweiterte DDLErweiterte DDL Erweiterte DatentypenErweiterte Datentypen Dynamic SQLDynamic SQL

Page 20: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Data DefinitionData Definition

StatementsStatements create, alter, dropcreate, alter, drop

ObjekteObjekte DomainsDomains TabellenTabellen ViewsViews Schemas (Create, Drop)Schemas (Create, Drop)

ConstraintsConstraints

Page 21: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Data ManipulationData Manipulation

StatementsStatements SELECTSELECT INSERTINSERT UPDATEUPDATE DELETEDELETE

ObjekteObjekte TabelleTabelle ViewView

Page 22: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

ViewsViews

Sichten auf TabellenSichten auf Tabellen create view <name> as ...create view <name> as ...

UpdatableUpdatable keine Aggregationenkeine Aggregationen Single TableSingle Table CHECK OptionCHECK Option Vererbung Vererbung

Page 23: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Sicherheit und IntegritätSicherheit und Integrität

Referentielle IntegritätReferentielle Integrität deklarativdeklarativ

Validierungen (Constraints)Validierungen (Constraints) Privilegien und ZugriffsregelnPrivilegien und Zugriffsregeln TransaktionenTransaktionen

Page 24: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

SQL ErweiterungenSQL Erweiterungen

HerstellerabhängigHerstellerabhängig Dynamic SQLDynamic SQL DatentypenDatentypen SQL Statements, VerhaltenSQL Statements, Verhalten Funktionen, (System)VariablenFunktionen, (System)Variablen Stored ProceduresStored Procedures Referentielle Integrität, TriggerReferentielle Integrität, Trigger Views (updateverhalten)Views (updateverhalten) ZugriffsregelungenZugriffsregelungen

Page 25: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

AdministrationAdministration

DatenbankmedienDatenbankmedien Sicherungsmedien Sicherungsmedien DatenbankenDatenbanken BenutzerverwaltungBenutzerverwaltung LockingmechanismenLockingmechanismen TuningTuning

Page 26: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Client-Server mit VFPClient-Server mit VFP

Zugriff auf C/S DatenbankenZugriff auf C/S Datenbanken Remote ViewsRemote Views Sql-Pass-ThroughSql-Pass-Through Unterschiede Unterschiede DatenbankdesignDatenbankdesign

Page 27: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Zugriff auf C/S DatenbankZugriff auf C/S Datenbank

ODBCODBC Views, SPTViews, SPT

ADOADO ODBC, objektorientierter AnsatzODBC, objektorientierter Ansatz

System DLLsSystem DLLs umständlich, Versionsabhängigumständlich, Versionsabhängig

SQL-OLESQL-OLE Nur für AdministrationNur für Administration

Page 28: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

ODBC-ArchitekturODBC-Architektur

Application

ODBC driver

Driver managerODBC APIODBC API

ODBC SPIODBC SPI

Network Network interfaceNetwork interface

DatabaseDatabase

Page 29: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Remote ViewsRemote Views

Definition in DatenbankDefinition in Datenbank statisch, Konfiguration im DBCstatisch, Konfiguration im DBC Parametrisierbar, Makro möglichParametrisierbar, Makro möglich Updatefähig, FeldeigenschaftenUpdatefähig, Feldeigenschaften keine DDL Befehlekeine DDL Befehle Einfache BenutzungEinfache Benutzung „„normale“ Tabellenbefehle normale“ Tabellenbefehle synchron, asynchronsynchron, asynchron Shared ConnectionsShared Connections

Page 30: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

SQL-Pass-ThroughSQL-Pass-Through

Programmatische Ausführung von SQL Programmatische Ausführung von SQL BefehlenBefehlen

flexibelflexibel DDL und DML verfügbarDDL und DML verfügbar Ausführen von Stored Procedures Ausführen von Stored Procedures Cursor nicht updatefähigCursor nicht updatefähig hoher Programmieraufwandhoher Programmieraufwand Kontrolle über die C/S VerbindungKontrolle über die C/S Verbindung

Page 31: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

DatentypenDatentypen FunktionenFunktionen SpeicherplatzbedarfSpeicherplatzbedarf SperrenSperren SQL BefehleSQL Befehle OptimierungenOptimierungen

UnterschiedeUnterschiede

Page 32: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

DatenbankdesignDatenbankdesign

Verteilte DatenhaltungVerteilte Datenhaltung Lookup-TabellenLookup-Tabellen Datentabellen als ViewDatentabellen als View Suchen per SPTSuchen per SPT Default-Connection Default-Connection Shared ConnectionsShared Connections Defaults auf View-EbeneDefaults auf View-Ebene Regeln auf BO-EbeneRegeln auf BO-Ebene

Page 33: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Vielen Dank!Vielen Dank!

Das waren die Themen:Das waren die Themen: AnwendungsarchitekturenAnwendungsarchitekturen Client-Server ArchitekturenClient-Server Architekturen C/S KommunikatiuonC/S Kommunikatiuon Client-Server DatenbankenClient-Server Datenbanken Merkmale eines Server Merkmale eines Server

DBMSDBMS SQL StandardSQL Standard Client-Server mit VFPClient-Server mit VFP Unterschiede SQL92/VFPUnterschiede SQL92/VFP Datenbankdesign in VFPDatenbankdesign in VFP

Page 34: Wizards & Builders GmbH Datenbanken Client / Server Architektur

Wizards & Wizards & Builders GmbH Builders GmbH

Wenn Fragen bestehen:Wenn Fragen bestehen:

Wizards & BuildersWizards & BuildersMethodische Software-Methodische Software-

Entwicklung GmbHEntwicklung GmbH

Frankfurter Str. 21bFrankfurter Str. 21b

61476 Kronberg61476 Kronberg

Tel.: 06173-950906Tel.: 06173-950906

Fax: 06173-950907Fax: 06173-950907

CIS: 101605,175CIS: 101605,175