183
ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management IT-Management Datenbanken und Anwendungen Datenbanken und Anwendungen Vortragsunterlagen zur Vortragsreihe Basis / eGovernment an der Donauuniversität Krems

ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

Embed Size (px)

Citation preview

Page 1: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für Informatik

IT-ManagementIT-ManagementDatenbanken und AnwendungenDatenbanken und Anwendungen

Vortragsunterlagen zur Vortragsreihe Basis / eGovernmentan der Donauuniversität Krems

Page 2: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

2ZT Schranz Informationstechnologie KEG

Block März 2009

– Datenbanken

– relationale DBMS

– DB-Integration, DB-Anwendungen

Internet Services, Web Service Management

– Business Intelligence

Statistiken, DB-Auswertungen

Integrierte Lösungen, ERP

– Datenbanklösungen in der Praxis

Strukturierung der InhalteStrukturierung der Inhalte

Page 3: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

3ZT Schranz Informationstechnologie KEG

Ausgangssituation, Vorwissen

Zielsetzung, Tageskurs- und Lehrinhalte

Zeitplanung (nach Arbeitsblöcken)

Datenbanktheorie, Praxisbeispiele,

Gruppenübungen und Diskussionen

AgendaAgenda

Page 4: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

4ZT Schranz Informationstechnologie KEG

Datenbanken Grundbegriffe

Einsatzbereiche und Erscheinungsformen

Konkrete Anwendungen

– Integration in Application Frontends

– Internet Service (meist World Wide Web) auf DB-Basis

Datenbanktheorie

– Strukturierungsformen, Algebra, Hochleistungen

Business Intelligence (Layering Concepts)

Internationale Projekte, Anwendungen

ThemenschwerpunkteThemenschwerpunkte

Page 5: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

5ZT Schranz Informationstechnologie KEG

Unterschiedliches Vorwissen und Erfahrungen an

einen gemeinsamen Punkt bringen und die

generelle Einsetzbarkeit und die strukturellen

Vorteile von modernen Datenbanksystemen

darstellen. Konkrete Web-Anwendungsbeispiele

unterstreichen den praktischen Nutzen.

Ziel der VeranstaltungZiel der Veranstaltung

Page 6: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

6ZT Schranz Informationstechnologie KEG

Block 1 – Morgen 9:15 – 11:00– Datenbanken Grundlagen

Block 2 – Vormittag 11:15 – 13:00– Relationale Datenbanken– ER-Diagramme, Transformationen

von Beziehungen (Gruppenbeispiele)

Block 3 – Mittag 14:00 – 16:00– Datenbanktheorie, Normalformen (Übungen)– Relationale Algebra

Block 4 – Nachmittag 16:15 – 18:00– SQL und Übungsbeispiele

Strukturierung der InhalteStrukturierung der Inhalte

Page 7: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

7ZT Schranz Informationstechnologie KEG

Ausbildung– Informatiker, – Universitätstätigkeit seit 1994

Berufserfahrung– Lehre– Forschung– Management Consulting– Technisches Management– Geschäftsführung

Geschäftführer einer ZT-Gesellschaft– Ziviltechniker Informationstechnologie

VortragenderVortragender

Page 8: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

8ZT Schranz Informationstechnologie KEG

Als staatlich befugter und beeideter Ingenieurkonsulent für

Informatik und u.a. Technikverantwortlicher einer rein

online basierten Nachrichtenagentur in Österreich mit

fundiertem akademischen Background auf

Koordinationsbedürfnisse und Mediationsnotwendigkeiten

im technisch-wirtschaftlichen Geschäftsfeld hinzuweisen

und beiderseits - GF, Marketing, Finanz vs. IT-Bereich -

mehr Problemverständnis und Lösungspotentiale

aufzubauen.

Ziel der VeranstaltungZiel der Veranstaltung

Page 9: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

9ZT Schranz Informationstechnologie KEG

Ziviltechniker – decken im Rahmen ihrer Befugnis Aufgaben im Bereich

der Planung, Prüfung und Überwachung von technischen Projekten ab

– Dabei agieren sie beratend, koordinierend und sind auch treuhändisch tätig

– sind produkt- und firmenneutral für den Auftraggeber tätig

– erstellen Gutachten und öffentliche Urkunden– unterliegen besonderem Standesrecht

(Verschwiegenheit, Treuhändertätigkeit)

Ziviltechniker allgemeinZiviltechniker allgemein

Page 10: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

10ZT Schranz Informationstechnologie KEG

Ziviltechniker – decken im Rahmen ihrer Befugnis Aufgaben im Bereich der

Planung, Prüfung und Überwachung von IT-Projekten ab

– planen und erstellen technische Konzepte

– Technische Vertragsberatung

– Unterstützung bei Vergabeverfahren (neutrale Beratung und Kontrolle)

Ausschreibungserstellung Angebotsbeurteilung Prüfung, Testierung Gutachtenerstellung Beweissicherung

– Sicherheit von Computersystemen (siehe Punkt 1)

Ziviltechniker ITZiviltechniker IT

Page 11: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für Informatik

Datenbanken und AnwendungenDatenbanken und Anwendungen

Block 1: Einführung zur Datenbankanwendung

Page 12: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

12ZT Schranz Informationstechnologie KEG

Einführung zu DatenbankenEinführung zu Datenbanken

Industriezeitalter wurde ab der Mitte des letzten Jahrhunderts nach und nach vom Informationszeitalter abgelöst

Mehr und mehr Arbeiter beschäftigen sich mit der Produktion, Verwaltung und Übermittlung von Information

Das führende Werkzeug hierfür ist der Computer

Page 13: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

13ZT Schranz Informationstechnologie KEG

Einführung zu DatenbankenEinführung zu Datenbanken

Informationen für und über uns sind fast überall und in jedem Betrieb zu finden

– Gesellschaftspolitische Funktion der Information

– Rechtliche Aspekte der Informationsverarbeitung

– Wirtschaftlicher Nutzen der Informationsverarbeitung

Anwendungsbeispiele– Post zur Adressierung und Logistik

– Telekom zur Massenverwaltung von Individualkommunikation

– Banken zur wirtschaftlichen Betreuung ihrer Kunden und deren Aktivitäten („Transaktionen“)

Page 14: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

14ZT Schranz Informationstechnologie KEG

Einführung zu DatenbankenEinführung zu Datenbanken

Daten sind die konkreten Einheiten der Informationsverarbeitung

Datenbanken sind Werkzeuge, die zur Verwaltung dieser Informationseinheiten herangezogen werden

Datenbanken sind eine Aufbewahrungsstelle für – meist – große Mengen an Daten, die strukturiert verwaltet und nach bestimmten Kriterien abgerufen werden können

Page 15: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

15ZT Schranz Informationstechnologie KEG

Kennzeichen einer DatenbankKennzeichen einer Datenbank

Man spricht von einer Datenbank, wenn

– sie eine große Menge an Informationen über Objekte unserer Umwelt enthält (z.B. Telefonbuch)

– die Daten nach bestimmten Merkmalen und Regeln abgelegt und erfasst sind (z.B. Struktur der Daten)

– der Zugriff auf die Daten für Anwender ohne großen Aufwand über vordefinierte Schnittstellen möglich ist (z.B. Alphabetischer Zugriff über Suchschnittstelle)

Page 16: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

16ZT Schranz Informationstechnologie KEG

Datenbank-OperationenDatenbank-Operationen

Eine Datenbank ist nicht nur Aufbewahrungs-stelle für Informationen sondern

stellt verschiedene Zugriffmöglichkeiten (Operationen) auf die Daten zur Verfügung

– Einfügen von Daten

– Lesen von Daten

– Ändern von Daten

– Löschen von Daten

Genaue Implementierung für den Anwender nicht wichtig, nur die Schnittstelle, an der sie die Daten abgibt bzw. entgegennimmt.

Page 17: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

17ZT Schranz Informationstechnologie KEG

Datenbank-KomponentenDatenbank-Komponenten

Eine Datenbank gliedert sich grundsätzlich in zwei Komponenten– Die Daten an sich

– Das Verwaltungswerkzeug zur Bearbeitung der Daten (Datenbankbetriebssystem, Datenbankmanagementsystem)

Page 18: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

18ZT Schranz Informationstechnologie KEG

Datenbank-KomponentenDatenbank-Komponenten

Das Datenbankmanagementsystem

– Das Programm zur Verwaltung der Daten bietet die Schnittstelle für den Anwender; ein direkter Zugriff auf die Daten ist meist nicht möglich (und sinnvoll)

– Das Verwaltungsprogramm ist die Spitze des Datenbankbetriebssystems, das viele Funktionalitäten des Zugriffs, die physische Speicherlogistik der Daten und die Optimierung der Zugriffe (Operationen in der zugehörigen Algebra) umfasst (Beispiel Lagerverwalter Skriptum Seite 7).

– Man spricht dabei vom Datenbankmanagement-system (DBMS)

Page 19: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

19ZT Schranz Informationstechnologie KEG

Datenbank-InhalteDatenbank-Inhalte

Wie werden Daten abgelegt?

– Informationen über die Art der Daten

– Die Dateninhalte selbst

Bei mehreren Einträgen wird rasch klar, dass gleichartige Einträge gruppiert werden.

– Art der Information als „Spaltenbezeichnung“

– Inhalte als Zeilen

– Die so entstandene Ablageform ist eine Tabelle

Page 20: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

20ZT Schranz Informationstechnologie KEG

Datenbank-InhalteDatenbank-Inhalte

Beispiel Wirtschaftsnachrichten (pte)– Haben immer einen Titel, einen Text und ein

Datum

Tabelle Pressemeldungen

32.12.2030Der überparteiliche Wirtschaftsguru und Politprofi KHG machte es möglich...

Wiener Börse überholt Wallstreet

32.12.2009Was niemand zu hoffen wagte,...

Microsoft in Schwierig-keiten

DatumTextTitel

Page 21: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

21ZT Schranz Informationstechnologie KEG

Datenbank-InhalteDatenbank-Inhalte

Datenbank möchte so viel wie möglich über die zu erwartenden Daten wissen. Tabellen werden dabei definiert durch die Festlegung von

– Name der Tabelle

– Namen der Attribute (Nummer, Art, etc. bezeichnet man als Attribute)

– Datentypen der Attribute

– Sind die Attribute obligatorisch

– Angabe eines Hauptschlüssels

Page 22: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

22ZT Schranz Informationstechnologie KEG

Datenbank-VerwaltungDatenbank-Verwaltung

Daten werden in einer Datenbank nicht nur abgespeichert

Wichtiger als das Speichern selbst ist das gezielte Abfragen der gespeicherten Daten. Dazu stellt eine Datenbank die folgenden Operationen zur Verfügung:

– Auswahl der angezeigten Felder

– Einschränkung der anzuzeigenden Einträge

– Sortieren der angezeigten Einträge

– Kombinieren von Informationen aus mehreren Tabellen

Page 23: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

23ZT Schranz Informationstechnologie KEG

Datenbank-TypenDatenbank-Typen

Erscheinungsformen von Datenbanken

– Tabellarische Darstellung nicht immer zweckmäßig

– Unterschiedliche Modelle zur Datenverwaltung historisch und anwendungsorientiert entwickelt

– Datenbankmanagementsysteme (unabhängig welches logische Modell dabei zugrunde liegt) trennen Datenbankaufgaben voneinander:

Handhabung der Daten an sich Logische Struktur der Daten (und Beziehungen

untereinander) Verarbeitungslogik (Modelle, Algebren) Benutzeroberfläche, Manipulationssprache

Page 24: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

24ZT Schranz Informationstechnologie KEG

Datenbank-TypenDatenbank-Typen

Erscheinungsformen von DatenbankenJe nach nach der logischen Strukturierung und der Verwaltungsmethoden in Hardware und im Datenbankbetriebssystem unterscheidet man folgende logische Modelle:

– Relationale Datenbanken

– Objektorientierte Datenbanken

– Hierarchische Datenbanken

– Netzwerk-Datenbanken

– Logische Datenbanken

Page 25: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

25ZT Schranz Informationstechnologie KEG

Datenbank-TypenDatenbank-Typen

Verwaltungsunterstützung bei Datenbanken– Hilfswerkzeuge und Design-Tools wurden für

jedes logische Modell entwickelt

– Vertreter Entity-Relationship Diagramme Design-Software

Page 26: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

26ZT Schranz Informationstechnologie KEG

Datenbank-ModelleDatenbank-Modelle

1 - Das relationale Modell

– Daten werden hier in Tabellen strukturiert

– Ein mathematisches Modell beschreibt darin „Tupel“, die in einer mathematischen Relation zusammengestellt sind und gemäß vordefinierter Operationen abgefragt („angesprochen“) werden können

– Identifikation der Tupel über „Schlüssel“, Abfrage über eine standardisierte Sprache (SQL)

... mehr dazu später...

Page 27: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

27ZT Schranz Informationstechnologie KEG

Datenbank-ModelleDatenbank-Modelle

2 – Das objektorientierte Modell

– Daten in OO-Programmen sollen dauerhaft verwaltet werden können.

– Komplexe und verschiedenartige Arten von Daten (Objekte, Attribute, komplexe Datentypen) widersprechen dem Einheitsbrei einer Tabellenstruktur

– Keine 4GL für den Zugriff benötigt

– ...oft Rückgriff auf relationales Modell über Wrapper...

Page 28: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

28ZT Schranz Informationstechnologie KEG

Datenbank-ModelleDatenbank-Modelle

3 – Das hierarchische Modell

– Das hierarchische Datenbankmodell folgt einer Baumstruktur, die Navigation darin ist explizit

– Abfragesprachen von IBM, eingebettet in COBOL, PL/1 und 370/Assembler

Page 29: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

29ZT Schranz Informationstechnologie KEG

Datenbank-ModelleDatenbank-Modelle

4 – Das Netzwerk-Modell– Hierarchische Datenbankmodelle können nur 1:n

Beziehungen abbilden.

– Das Netzwerkmodell zeigt die Realität in Form eines zusammenhängenden gerichteten Graphen mit Knoten und Kanten

– Es gibt Owner-Typen (1-Seite) und Member-Typen (n-Seite). Anzahl und Richtung ist frei wählbar.

– m:n wird durch einen zwischengeschalteten Kett-Record bewerkstelligt (bildet dann zwei 1:n Beziehungen)

– Umsetzung im CODASYL-Projekt, (60er, 70er Jahre)

Page 30: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

30ZT Schranz Informationstechnologie KEG

Datenbank-ModelleDatenbank-Modelle

5 – Das logische Datenbankmodell– Direkte Verarbeitung logischer Regeln

– Regeln leiten Fakten auf Basis bereits vordefinierter Fakten ab

– Verarbeitung erfolgt durch die Datenbanksprache DATALOG (ähnlich dem PROLOG)

– Beispiel

VaterVon(Hans, Otto).

VaterVon(Otto, Frank).

VaterVon(Otto, Peter).

GrossvaterVon(A, B) :- VaterVon(A, C), VaterVon(C, B).

Page 31: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

31ZT Schranz Informationstechnologie KEG

Konkrete AnwendungenKonkrete Anwendungen

Datenbankmodelle in der Praxis– Relationale Datenbanken im WWW

– Verwaltung komplexer Datenmengen für Pressemeldungen und Wirtschaftsnachrichten seit 1997 Abonnentendaten und Interessenskategorien für mehr

als 180.000 Journalisten und Meinungsbildner Integration von 1500 Netzwerkpartnern zur Distribution

von wirtschaftsrelevanten Nachrichten über multiple Medien

– am Beispiel von pressetext.austria oder culturall

Page 32: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

Fallstudie pte

Kunde pressetext.austria

online Nachrichtenagentur

Technikabteilung

Forschungsaktivitäten

Anwendung IT-Management und Datenbanken

Page 33: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

Seit 1997 auf dem österreichischen MarktSeit 2000 in der SchweizSeit 2001 in Deutschlandgrößter Online Presseverteiler im deutschsprachigen Raum1300 Unternehmer als AussenderÜber 100.000 Abonnenten in der D/A/CH-Region1,5 Mio. Visits / Monat7,3 Mio. Impressions / Monat45.000 Single Users auf der Plattform täglichZahlreiche Partner: ddp, DGAP, Yahoo, Wallstreet.online, ONE, uvm.

Page 34: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

Unternehmensprofil

Definition

• Internet-basierte Nachrichtenagentur mit digitalem Presseverteiler kostenfrei für Journalisten und Meinungsbildner (Abonnenten) Themenschwerpunkte Hightech, Medien, Business und Leben

Umsatzgenerierung

• Verbreitung von Pressemitteilungen im Auftrag von zahlenden Kunden (Unternehmen und öffentliche Institutionen, PR-Agenturen)

• Hochwertige Add-on Services für PR/Marketingverantwortliche sowie Internet-Portale (Content Verkauf, Redaktionsdienste, WebTV Services, CMS, Online-Marketing)

Page 35: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

Produkte und Services

pte - pressetext.europaRedaktionelle Nachrichtenproduktionpts - pressetext.serviceVerbreitung von bezahlten Presseaussendungen

ptv - pressetext.tvLive-Übertragung von Presseveranstaltungen, Events, Studiogespräche via WebTV

Content ServicesRedaktionsdienste (Auftrags-Content)Content Verkauf (Lizensierung)Content Solutions (Portalbau, CMS)

Page 36: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

Erste rein online-basierte Nachrichtenagentur Österreichs

Verschiedenste Produkte verlangen nach modernen und

kompetenten Lösungen

Moderne RDBMS zur performanten Verwaltung von online

Inhalten, ansehnliches Lastmanagement

Interne Forschung und Entwicklung schafft aktuelle

Lösungen für online Content Management

Internationale Kooperationen zu aktuellen Problematiken

in der Content-Wirtschaft bringt Know-How und Vorsprung

pressetext.austria – technical view

Page 37: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

R&D Services

Content Management System auf zuverlässiger Internet Plattform

hochverfügbare Webserver

Leistungsstarke Datenbanken

Moderne Austauschformate

benutzerfreundliche Inhaltspflege

Page 38: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

38ZT Schranz Informationstechnologie KEG

Fallstudie Kulturveranstaltungsmanagement

Kunde culturall

Page 39: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

39ZT Schranz Informationstechnologie KEG

Fallstudie Kulturveranstaltungsmanagement

Page 40: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

40ZT Schranz Informationstechnologie KEG

Fallstudie Kulturveranstaltungsmanagement

Page 41: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

41ZT Schranz Informationstechnologie KEG

Datenmanagement inkludiert:

Kontrolle der Geschäftsvorgänge über Computernetzwerke

Involvierung personenbezogener Daten

Hohe Ansprüche an Zuverlässigkeit, Performance und Sicherheit

Rechtliche Abdeckung der softwarebasierten Prozessschritte

Fallstudie Kulturveranstaltungsmanagement

Page 42: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für Informatik

Datenbanken und Anwendungen konkret:Datenbanken und Anwendungen konkret:

Block 2: Das relationale Datenbankmodell

Page 43: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

43ZT Schranz Informationstechnologie KEG

Relationales Datenmodell - TabellenRelationales Datenmodell - Tabellen

Tabellen und Relationen–Modell Mitte der 80er entwickelt und spielt seither bedeutendste Rolle bei Datenbanken in der Praxis

–Gesamtheit der Daten wird in Tabellen angeordnet

Page 44: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

44ZT Schranz Informationstechnologie KEG

Tabellen und RelationenTabellen und Relationen

– Tabellen bestehen aus vielen Zeilen die jeweils die Eigenschaften zu genau einem Datensatz enthalten

– Zeilen sind in Zellen (Spalteneinträgen) strukturiert

– Beispiel SkriptumPersonentabelle

MusterdorfHahnenwegBrigitteMeyer345

BernsteinFöhrenweg MarkusSchranz206

LondonVictoria Str.JamesBond007

OrtStrasseVornameNamePersID

Page 45: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

45ZT Schranz Informationstechnologie KEG

Tabellen und RelationenTabellen und Relationen

– Jede Zeile enthält Werte der Attribute, die in der Kopfzeile festgelegt (invariant) sind

– Wertebereich des Attributs i heißt Domäne Di

– Kartesisches Produkt der Wertebereiche Di für alle

Spalten i ist die Menge aller möglichen Tupel, die durch die Attribute erstellt werden können.

– Damit ist die Menge der aufgelisteten Werte in der Tabelle eine Teilmenge aller möglichen Tupel. Mathematisch gesehen ist eine solche Teilmenge aus einem kartesischen Produkt eine Relation r mit

r ⊆ D1 × D2 × . . . × Dn

Page 46: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

46ZT Schranz Informationstechnologie KEG

Tabellen und RelationenTabellen und Relationen

– Zeilen in der Tabelle müssen sich unterscheiden

– Jede Zeile muss durch ein(e) Attribut(kombination) eindeutig definiert sein -> Primärschlüssel

– Eine Relation wird durch ein Relationenschema R(A1,...An) festgelegt, wobei Ai die Attribute sind (Bauanleitung einer Relation)

– Tabellen/Relationen können mit Hilfsmitteln wie dem ER-Diagramm modelliert werden

sehr mathematisch -> grafischer Einschub

Page 47: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

47ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

ER-Diagramm ist grafische Beschreibung eines vereinfachten Realweltausschnittes zur Abbildung in einer Datenbank

Statt Tupeln aus der relationalen Welt spricht man hier von Mengen

Domänen und Attribute werden auch hier in ihrer vorgestellten Bedeutung eingesetzt

Dazu kommen Entitäten

Page 48: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

48ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Entitäten sind wohlunterscheidbare Dinge der realen Welt (Personen, Autos, Bücher, etc.)

Entitäten besitzen Eigenschaften, die Attribute genannt werden (Namen, Adressen von Personen)

Konkrete Ausprägung eines Attributes heißt Wert. Man erhält ein konkretes Entity, wenn man Attributen Werte zuordnet

Page 49: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

49ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Attribute– Menge aller möglichen zugelassenen Werte

eines Attributs heißt seine Domäne

– Attribute können einwertig oder mehrwertig sein (Person hat mehrere Vornamen, Lektor unterrichtet mehrere Vorlesungen,...)

– Ein zusammengesetztes Attribut besteht aus mehreren einzelnen Attributen (Name etwa aus Nachname und Vorname(n))

– Ein Entity-Set (Zusammenfassung von Entitäten) hat dieselben Attribute

Page 50: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

50ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Schlüssel– Eine Kombination von Attributen kann ein

Entity aus einem Entity-Set klar identifizieren (SuperKey)

– Attribute in einem SuperKey können überflüssig für die Identifizierung sein, Minimierung führt zum Schlüssel (key)

– Es kann durchaus mehrere Schlüssel geben, der tatsächlich zur Identifizierung verwendete heißt dann Primärschlüssel (primary key)

– Primärschlüssel können aus einem oder mehreren Attributen bestehen

Page 51: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

51ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Definition von Entities– Entity Set besteht aus Menge von gleichförmigen

Entities. Die formale Beschreibung der gemeinsamen Eigenschaften erfolgt durch den Entity-Typ E = ({X}, {K}).

– E ist der Name, X das Format und K der Schlüssel

– In „X“ werden die Attribute notiert und zwar:(i) Einwertige Attribute: A(ii) Mehrwertige Attribute: {A}

(iii) Aus B1, . . . ,Bk zusammengesetzte Attribute: A(B1, . . . ,Bk)

– Beispiel:Mitarbeiter = ({PerNr,Vorname,Nachname,

{Bereiche},Adresse(Strasse,Ort)},{PerNr})

Page 52: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

52ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Grafische Darstellung von Entities– Mitarbeiter = ({PerNr,Vorname,Nachname,

{Bereiche},Adresse(Strasse,Ort)},{PerNr})

– Schlüssel werden unterstrichen dargestellt

Page 53: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

53ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Definition einer Entity, eines Entity-Sets– Gegeben sei eine Entity-Deklaration E = (X,K) mit X =

(A1,...,Am). Das Attribut Ai habe den Wertebereich bzw. die

Domäne dom(Ai) mit 1 <= i <= m.

– i) Ein Entity e ist ein Element aus dem Kartesischen Produkt

aller Wertebereiche, also e dom(A1) × . . . × dom(Am).

– ii) Ein Entity-Set Et (zum Zeitpunkt t) ist eine Menge von Entities, welche K erfüllt. D. h. der Wert von K ist für jedes Entity verschieden. Also

– Et ⊆ dom(A1) × . . . × dom(Am).

– Et ist also der Inhalt bzw. der aktuelle Wert des Typs E zur Zeit t. (Mathematisch gesehen eine Teilmenge aus dem kartesischen Produkt der Domänen, also eine Relation.)

Page 54: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

54ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Beziehungen / Relationships–Entitäten können zueinander in einer Beziehung stehen

Abonnent erhält Wirtschaftsnachricht Mitarbeiter arbeitet_in Abteilung Kunde kauft Artikel

erhält

arbeitet_in

kauft

Page 55: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

55ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Beziehungstypen– 1:1 Beziehung

Jedem e1 aus dem Set vom Typ E1 wird höchstens ein e2 aus dem Set vom Typ E2 zugeordnet und umgekehrt (es kann auch e1 ohne Beziehung zu e2 geben)

– 1:n (n:1) Beziehung Beispiel Mitarbeiter in Abteilung

– m:n Beziehung Ein Abonnent empfängt eine Wirtschaftsnachricht

Page 56: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

56ZT Schranz Informationstechnologie KEG

Übungsaufgabe:• eine Vorlesung hat die Attribute VorlNr (Primärschlüssel), SWS und Titel

• Studenten haben die Eigenschaften MatrNr (Primärschlüssel), Name und Sem

• ein Angestellter hat die Attribute PersNr (Primärschlüssel) und Name

• ein Professor ist ein Angestellter mit den Eigenschaften Rang und Raum

• ein Assistent ist ein Angestellter mit dem Attribut Fachgebiet

• ein Professor hält keine bis mehrere Vorlesungen und prüft keine bis mehrere Studenten bezüglich keiner bis mehrere Vorlesungen

• je Prüfung wird eine Note als Eigenschaft zugewiesen

• ein Student hört keine bis mehrere Vorlesungen und wird in keiner bis mehreren Vorlesungen von keinem bis mehreren Professoren geprüft

• ein Assistent arbeitet für einen Professor

• einem Professor sind kein bis mehrere Assistenten zugeteilt

Erfassung von Sachverhalten – ER-DiagrammErfassung von Sachverhalten – ER-Diagramm

Page 57: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

57ZT Schranz Informationstechnologie KEG

Lösung

Erfassung von Sachverhalten – ER-DiagrammErfassung von Sachverhalten – ER-Diagramm

Page 58: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

58ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Übungsaufgabe 2– Definieren Sie ein Entity-Relationship Diagramm

(und die Entities) für einen vereinfachten pressetext-Dienst

– Beginnen Sie mit Abonnent Pressemeldung Aussender

Page 59: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

59ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Lösung (Tabellarische Notation)

meldungen

PK nummerkategorieautordatumtiteltext

abonnenten

PK emailnamevornameint_hightechint_medienint_businessint_leben

aussender

PK emailnamekontostandplzort

Page 60: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

60ZT Schranz Informationstechnologie KEG

Entities werden in (zumindest) ein eigenes

Relationenschema transformiert

– Gegeben sei folgender Entity-Typ:

Person = ({PerID, Name, Vorname,

Adresse(Strasse,Ort)}, {PerID})

Transformationen ins RelationenschemaTransformationen ins Relationenschema

R(A1, . . . ,An) entspricht hier Person(PerID, Name, Vorname, Strasse, Ort) oder Person PerID Name Vorname Strasse Ort …

Tabelle Person

Page 61: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

61ZT Schranz Informationstechnologie KEG

Mehrwertige Attribute werden über die

Einführung einer weiteren Relation aufgelöst

– Sinnvollerweise nur DozIDs in der Fachbereichstabelle,

die auch in der Dozententabelle definiert sind

Eine solche (semantische) Bedingung zwischen Relationen,

wird als referentielle Integrität bezeichnet

Transformationen ins RelationenschemaTransformationen ins Relationenschema

Page 62: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

62ZT Schranz Informationstechnologie KEG

Transformation von Beziehungen

m:n-Beziehung

– Für jeden Entity Typ (zumindest) eine Relation

– Für die Beziehung ein weiteres Relationenschema

Die Kombination der Fremdschlüssel wird zum

Primärschlüssel der Beziehungsrelation

(siehe Skriptum Seite 29)

Transformationen ins RelationenschemaTransformationen ins Relationenschema

Page 63: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

63ZT Schranz Informationstechnologie KEG

Transformation von Beziehungen

1:n-Beziehung

– Option 1: drei Relationenschemata wie unter m:n

– Option 2: Dem Schema für den Entity-Typ auf der „n“-Seite

werden der Primärschlüssel und die Attribute der Beziehung

(wenn vorhanden) zugeordnet.

1:1-Beziehung

– Option 1 und 2 wie oben

– Option 3: Nur eine Tabelle mit potenziell vielen Nullwerten

Transformationen ins RelationenschemaTransformationen ins Relationenschema

Page 64: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

64ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Übungsaufgabe 3– Transformieren Sie die Entities aus der Übung 1 in

passende Relationenschemata

– Beachten Sie dabei Entity-Attribute (Mehrwertigkeit) und Beziehungstypen

– Meldungen(meldungs_id, titel, text, ...)

Page 65: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

65ZT Schranz Informationstechnologie KEG

Das Entity-Relationship DiagrammDas Entity-Relationship Diagramm

Lösung 3

meldungen

PK meldungen_idFK aussender_idFK kategorie_id

autordatumtiteltext

abonnenten

PK abonnenten_idnamevornameemail aussender

PK aussender_idnameemailplzortkontostand

kategorien

PK kategorie_idname

abonnenten_kategorien

PF abonnenten_idPF kategorie_id

Page 66: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für Informatik

Datenbanken und AnwendungenDatenbanken und Anwendungen

Block 3: Die relationale Algebra und SQL

Page 67: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

67ZT Schranz Informationstechnologie KEG

Haben wir unser Datenmodell von der realen Welt in Tabellen gegossen, wollen wir– diese sicher und zuverlässig abgespeichert wissen

(darum kümmert sich das RDBMS)

– diese auch selektiv abfragen(mit verschiedensten Operationen)

Selektionen Projektionen Verknüpfungen Aggregierungen

– Letzteres geschieht über ein Bearbeitungsmodell, der relationalen Algebra

Relationale AlgebraRelationale Algebra

Page 68: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

68ZT Schranz Informationstechnologie KEG

Die Relationale Algebra bietet Operationen um– Bestimmte Zeilen oder Spalten einer Tabelle zu

extrahieren Die Selektion Die Projektion Kombination von Selektion und Projektion

– Tabellen miteinander zu verknüpfen Der Join

Relationale Algebra Relationale Algebra

Page 69: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

69ZT Schranz Informationstechnologie KEG

Die Selektion– Eine Selektion ist dazu gedacht, aus einer Tabelle nur

diejenigen Zeilen (Tupel) herauszufiltern, in denen ein Attribut eine vorgegebene Bedingung erfüllt.

– Dabei bleiben die selektierten Zeilen in ihrer Vollständigkeit – das heißt mit allen Attributen – erhalten.

– Textuelle Darstellung

σ A=4(r)

Relationale AlgebraRelationale Algebra

Page 70: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

70ZT Schranz Informationstechnologie KEG

Beispiel-Selektion– Extrahiere alle Zeilen der Relation meldungen, wo der

Aussender pressetext selbst war– Textuelle Darstellung

σ aussender_id=pte(meldungen)

– Ergebnisalle Meldungen (alle Attribute der Tabelle), wo pressetext als Aussender eingetragen ist

Relationale AlgebraRelationale Algebra

Page 71: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

71ZT Schranz Informationstechnologie KEG

Die Projektion– Die Projektion extrahiert eine oder mehrere Spalten

(Attribute) aus der gegebenen Relation.

– Eine Projektion wird mit dem Symbol π gekennzeichnet und erhält als Subskript die auszuwählenden Attribute

– Doppelte Einträge im Ergebnis werden herausgefiltert

– Textuelle Darstellung

πAD(r)

Relationale AlgebraRelationale Algebra

Page 72: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

72ZT Schranz Informationstechnologie KEG

Beispiel-Projektion– Zeige von allen Datensätzen der Relation meldungen die

Titel und die Aussenderkennung an

– Textuelle Darstellung

πtitel,aussender_id(meldungen)

– ErgebnisTabelle mit zwei Spalten

Relationale AlgebraRelationale Algebra

Page 73: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

73ZT Schranz Informationstechnologie KEG

Kombination der Selektion und Projektion

– Meist werden die beiden Operationen in Kombination verwendet, etwa bei der Aufgabenstellung

Zeige den titel aller Meldungen, die von pressetext versandt wurden

– Textuelle Darstellung

πtitel(σ aussender_id=pte(meldungen) )

– Reihenfolge: Selektion vor Projektion, weil ansonsten die Attribute mit den Selektionskriterien durch die Projektion bereits eliminiert worden sein könnten

Relevant für die Umsetzung der relationalen Algebra im RDBMS

Relationale AlgebraRelationale Algebra

Page 74: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

74ZT Schranz Informationstechnologie KEG

Der Join

– Der Join verknüpft zwei oder mehr Tabellen miteinander

– Oft ein oder mehrere gemeinsame Attribute

– Errechnung des kartesischen Produktes der zwei

Tabellen (jede Zeile von a mit jeder Zeile von b)

– Selektion aller verbundenen Tupel, an denen die „join-

Attribute“ übereinstimmen (=Join-Bedingung beim

„inner join“, der am häufigsten verwendete)

Relationale AlgebraRelationale Algebra

Page 75: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

75ZT Schranz Informationstechnologie KEG

Der Join

– Textuelle Darstellung

r1 r2

– Implikationen von Joins

Die Erstellung der kartesischen Produkte bei relationalen

Datenbanken ist ein aufwändiger Prozess

Aufwand O(m*n)

Bei Normalformen höher als der dritten zerstückelt man die

Tabellen in sehr viele kleine Tabellen und erhält damit bei

Abfragen einen unnötig hohen Join-Bedarf, was sich in

Performance-Einbußen niederschlägt (Abhilfe Indices, etc.)

Relationale AlgebraRelationale Algebra

Page 76: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

76ZT Schranz Informationstechnologie KEG

Die Datenbankabfragesprache SQL– Der Benutzer einer Datenbank möchte nun auf

die gespeicherten Daten zugreifen

– Es steht ihm hierfür eine 4GL Sprache zur Verfügunger kann damit system- und plattformunabhängig die Operationen der relationale Algebra nutzen

– Anfänge aus den 70er Jahren, standardisiert in den 80ern (SQL1 –1986, SQL2 – 1989 und SQL3 – 1999)

Structured Query LanguageStructured Query Language

Page 77: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

77ZT Schranz Informationstechnologie KEG

Befehlskategorisierung in SQL– Dem Benutzer stehen verschiedene

Befehlstypen in SQL zur Verfügung Datendefinition (DDL) Datenabfrage (DQL) Datenmanipulation (DML) Datenzugriffskontrolle (DCL)

– In standardisierter Form, umgesetzt in allen gängigen RDBMS Produkten (Oracle, MySQL, PostgreSQL, Windows SQL Server, etc.)

Structured Query LanguageStructured Query Language

Page 78: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

78ZT Schranz Informationstechnologie KEG

SQL-Befehle zur Datendefinition– CREATE DATABASE <databasename>

– DROP DATABASE <databasename>

– SHOW DATABASES

– CREATE TABLE meldungen (...)

– DROP TABLE

– ALTER TABLE

– SHOW TABLES

Structured Query LanguageStructured Query Language

Page 79: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

79ZT Schranz Informationstechnologie KEG

SQL-Befehle zur Datenabfrage– SELECT * FROM meldungen WHERE datum = ‘1.4.2004‘

– SELECT titel FROM meldungen

– SELECT a.titel, b.name FROM meldungen a, aussender b WHERE a.autor = b.name

– SELECT count(*) from meldungen

– SELECT count(distinct name), name from abonnenten group by name order by name desc

Structured Query LanguageStructured Query Language

Page 80: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

80ZT Schranz Informationstechnologie KEG

SQL-Befehle zur Datenmanipulation– INSERT INTO TABLE meldungen VALUES (...)

– DELETE FROM meldungen WHERE meldungen_id > 25

– UPDATE meldungen set autor = ‚pte‘ WHERE ...

SQL-Befehle zur Zugriffskontrolle– GRANT ...

Structured Query LanguageStructured Query Language

Page 81: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

81ZT Schranz Informationstechnologie KEG

Probleme mit SQL und dem relationalen Ansatz– Feste Maximalgrößen für Felder

– Aufwändige Modellierung bei komplexen, hierarchischen Objekten

– Komplexe Abfragesyntax

– Performanceprobleme durch multiple joins

– Insellösungen von Anbietern

Structured Query LanguageStructured Query Language

Page 82: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

82ZT Schranz Informationstechnologie KEG

Aufgabe – Verwenden Sie die Schnittstelle phpMyAdmin und

führen Sie die SQL-Abfragen gemäß der Angaben auf dem Übungsblatt auf den Testtabellen der pressetext.austria durch.

Structured Query LanguageStructured Query Language

Page 83: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für Informatik

Datenbanken und AnwendungenDatenbanken und Anwendungen

(Tag2 Rück-/Überblick): Datenbanken, die relationale Algebra und SQL

Page 84: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

84ZT Schranz Informationstechnologie KEG

Datenbanken Grundbegriffe

Einsatzbereiche und Erscheinungsformen

Konkrete Anwendungen

– Integration in Application Frontends

– Internet Service (meist World Wide Web) auf DB-Basis

Datenbanktheorie

– Strukturierungsformen, Algebra, Hochleistungen

Business Intelligence (Layering Concepts)

Internationale Projekte, Anwendungen

Rückblick ThemenschwerpunkteRückblick Themenschwerpunkte

Page 85: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

85ZT Schranz Informationstechnologie KEG

Einführung zu DatenbankenEinführung zu Datenbanken

Daten sind die konkreten Einheiten der Informationsverarbeitung

Datenbanken sind Werkzeuge, die zur Verwaltung dieser Informationseinheiten herangezogen werden

Datenbanken sind eine Aufbewahrungsstelle für – meist – große Mengen an Daten, die strukturiert verwaltet und nach bestimmten Kriterien abgerufen werden können

Page 86: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

86ZT Schranz Informationstechnologie KEG

Datenbank-KomponentenDatenbank-Komponenten

Eine Datenbank gliedert sich grundsätzlich in zwei Komponenten– Die Daten an sich

– Das Verwaltungswerkzeug zur Bearbeitung der Daten (Datenbankbetriebssystem, Datenbankmanagementsystem)

Page 87: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

87ZT Schranz Informationstechnologie KEG

Datenbank-TypenDatenbank-Typen

Erscheinungsformen von DatenbankenJe nach nach der logischen Strukturierung und der Verwaltungsmethoden in Hardware und im Datenbankbetriebssystem unterscheidet man folgende logische Modelle:

– Relationale Datenbanken

– Objektorientierte Datenbanken

– Hierarchische Datenbanken

– Netzwerk-Datenbanken

– Logische Datenbanken

Page 88: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

88ZT Schranz Informationstechnologie KEG

Datenbanksysteme

– Konzepte und deren Einsatzbereich

– Das relationale Datenbankmodell

Beschreibungsmodelle

– Das Entity Relationship Modell

– Transformation von abstrakten Darstellungen zu konkreten

Datenbanktabellen

Arbeiten mit der Datenbank

– Die relationale Alegbra

– Der Abfragestandard SQL

Rückblick: Themenschwerpunkte zuletztRückblick: Themenschwerpunkte zuletzt

Page 89: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

89ZT Schranz Informationstechnologie KEG

Datenbanktypen, Anbieter und Anwendungen

Anwendung des Datenbankwissens

– Komplexe Standardabfragen

– Lösung von praxisorientierten Problemen

– Erarbeiten und Verstehen relationaler Modelle (Normalformen)

Einsatz im Internet und World Wide Web

– Anbindung von Legacy Applications, Schwerpunkt

Datenbanken

– Einblick ins Programmieren serverseitiger

DB-Anwendungen, Demo und hands-on bei CMS

Business Intelligence, Integrierte Lösungen & ERP

AgendaAgenda

Page 90: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

90ZT Schranz Informationstechnologie KEG

Block 1 – Morgen 9:15 – 11:00– Datenbanken Einsatzbereich– Vertreter und Anwendung– Fortsetzung konkreter Abfragen

Block 2 – Vormittag 11:15 – 13:00– Vorteile des relationalen Ansatzes– Optimierungen durch Normalformen– Datenbankanbindung an Standardsoftware

Block 3 – Mittag 14:00 – 15:45– Standardapplikationen/WWW & serverseit. Programmieren– Integrierte Lösungen / ERP Grundlagen

Block 4 – Nachmittag 16:00 – 18:00– ERP & Business Intelligence – Lösung komplexer Anforderungen mit geeigneten Werkzeugen

Strukturierung der Inhalte Tag 2Strukturierung der Inhalte Tag 2

Page 91: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

91ZT Schranz Informationstechnologie KEG

Datenbank-TypenDatenbank-Typen

Erscheinungsformen von DatenbankenJe nach nach der logischen Strukturierung und der Verwaltungsmethoden in Hardware und im Datenbankbetriebssystem unterscheidet man folgende logische Modelle:

– Relationale Datenbanken

– Objektorientierte Datenbanken

– Hierarchische Datenbanken

– Netzwerk-Datenbanken

– Logische Datenbanken

Page 92: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

92ZT Schranz Informationstechnologie KEG

Datenbank-Vertreter kommerziellDatenbank-Vertreter kommerziell

Sybase ASE (adaptive server enterprise)

NCR/Teradata Warehouse

12,1%Microsoft/SQL Server

31,1%IBM / DB2, Informix

39,8%OracleVersion 10g

Marktanteil (Quelle IDC, Feb 2005)

Unternehmen/Produkt

Page 93: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

93ZT Schranz Informationstechnologie KEG

Datenbank-Vertreter alternativDatenbank-Vertreter alternativ

TeamXML (Interwoven), Berkeley DB XML (Sleepycat), Tamino (Software AG), GoXML (XML Global Technologies)

XML-basiert

db4objectswww.db4o.com

ObjectDB (Java), Birdstep RDM, GemStone, JADE, ODABA

objektorientiert

MySQL, www.mysql.com PostgreSQL, www.postgresql.com Ingres, Computer Associates

Relational und frei

Unternehmen/Produkt

Page 94: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

94ZT Schranz Informationstechnologie KEG

Datenbank-EinsatzbereichDatenbank-Einsatzbereich

Meist kombiniert mit der Anwendung

– CRM (Customer Relationship Management)

– ECM (Enterprise Content Management)

– SCM (Supply Chain Management)

– ERP (Enterprise Resource Planning)

– Data Warehousing, Data Mining

– WCM (Web Content Management)

Viele (bekannte) Anbieter haben Produkte hierzu

Page 95: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für Informatik

Datenbanken und AnwendungenDatenbanken und Anwendungen

Anomalien und Normalformen im relationalen Modell

Page 96: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

96ZT Schranz Informationstechnologie KEG

Normalformen

– Abhängigkeiten zwischen Attributen

– Anomalien (Problempotenziale)

– Spezifikation von Normalformen

– Übungsbeispiel zur Normalformgestaltung

Relationale Datenbankkonzepte - NormalformenRelationale Datenbankkonzepte - Normalformen

Page 97: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

97ZT Schranz Informationstechnologie KEG

Enger Zusammenhang zwischen Entities und

Relationen bereits erkannt

– Transformationsschritte mechanisch

– Bei gut durchdachten ER-Diagrammen qualitativ

hochwertig und sinnvolle Tabellen erhalten

– Grundsätzlich ein guter Designansatz (mit ER), danach

Verfeinerungsschritte durch Normalisierung

Warum NormalformenWarum Normalformen

Page 98: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

98ZT Schranz Informationstechnologie KEG

Warum Normalisierung?

– Vermeidung von unnötiger oder unbeabsichtigter

Platzvergeudung (Redundanz)

– Vermeidung von Problemen bei Änderungen

(Anomalien)

Dazu Untersuchung der Abhängigkeit von

Attributen

Warum NormalformenWarum Normalformen

Page 99: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

99ZT Schranz Informationstechnologie KEG

Abhängigkeit von Attributen

– Funktionale, voll funktionale, transitive Abhängigkeit ?

– In einem Relationenschema R ist das Attribut (bzw. die

Attributkombination) Y funktional abhängig vom Attribut

X, wenn zu jedem Zeitpunkt jedem Wert von X genau

ein Wert von Y zugeordnet ist.

– Schreibweisen: R.X -> R.Y oder kürzer X -> Y

NormalformenNormalformen

Page 100: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

100ZT Schranz Informationstechnologie KEG

Voll funktionale Abhängigkeit von Attributen

– X sei nun ein aus mehreren Attributen zusammengesetzter

Schlüssel, also eine Attributkombination. Y sei ein einzelnes

Attribut oder ebenfalls eine Attributkombination. Y ist genau

dann voll funktional abhängig von X, falls

X -> Y gilt und

es keine echte Teilmenge Z von X gibt mit Z -> Y .

– Kein einziges Attribut der Attributkombination von X darf

entfernt werden (minimaler Schlüssel)

NormalformenNormalformen

Page 101: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

101ZT Schranz Informationstechnologie KEG

Veranschaulichung voll funktionaler Abhängigkeit

(Skriptum Seite 36f)

Gilt A -> B ? Gilt AC -> F ? Gilt E -> F ? Gilt F -> C ?

NormalformenNormalformen

Relation r : A B C D E F Tupel 1 2 3 4 5 6 (1) 1 3 0 0 1 7 (2) 2 1 0 0 2 3 (3) 3 2 5 6 7 8 (4) 1 0 3 0 6 6 (5)

Page 102: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

102ZT Schranz Informationstechnologie KEG

Beim „pragmatischen“ Ansatz der

Tabellenerstellung wird meist unsauber

gearbeitet

– Beispiel: Tabelle mit Kunden und Artikeln in einer

kleinen Greißlerei („Tante Emma Laden“)

– Meist alle Daten in einer (oder wenigen) Tabellen erfasst

Problematik beim Einfügen, Löschen und Ändern

vorprogrammiert

AnomalienAnomalien

Page 103: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

103ZT Schranz Informationstechnologie KEG

Einfüge-Anomalie

– Aufnahme eines neuen Artikels

Die Spalten für Kunden und damit ein Teil des Primärschlüssels bleiben

leer, unbeabsichtigte Situation

Lösch-Anomalie

– Ein Kunde bestellt nur einen Artikel. Wird dieser gelöscht, fehlen auch

die Daten des Kunden

Änderungs-Anomalie

– Wenn ein Kunde mehrere Artikel bestellt oder ein Artikel von mehreren

Kunden bestellt wird, werden Daten redundant gehalten. Sie müssen

dann mehrfach editiert werden, oder es kommt zu Falscheinträgen

AnomalienAnomalien

Page 104: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

104ZT Schranz Informationstechnologie KEG

Verhindert können Update-Anomalien durch den Einsatz

von normalisierten Tabellen werden

Eine vollständige Vermeidung von Redundanz und

Anomalien ist bei größerem Datenaufkommen und vielen

Tabellen nahezu unmöglich

Einsatz der Normalformen aus der Theorie auch nur

beschränkt sinnvoll

Definition von NormalformenDefinition von Normalformen

Page 105: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

105ZT Schranz Informationstechnologie KEG

Die erste Normalform

– Eine Relation befindet sich in der ersten Normalform, wenn

jedes ihrer Attribute nur atomare Werte annehmen kann

– Die Theorie der relationalen Datenbanken verlangt für

sämtliche Tabellen die Erfüllung der ersten Normalform.

– Somit sind in einem Relationenschema und der zugehörigen

Tabelle weder zusammengesetzte noch mehrwertige Attribute

statthaft.

– Es darf auch keine „Unterrelationen“ geben (mehrere

Beziehungen innerhalb eines Schemas)

Definition von NormalformenDefinition von Normalformen

Page 106: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

106ZT Schranz Informationstechnologie KEG

Die zweite Normalform

– Eine Relation befindet sich in der zweiten Normalform, wenn sie die

Bedingungen der ersten Normalform erfüllt und jedes Nicht-

Schlüsselattribut funktional vom gesamten Schlüssel abhängt.

– Im Beispiel unserer Greißlerei sind Teile der Tabellezeilen von der

Kundennummer und Teile von der Artikelnummer abhängig.

– Es gibt also Nicht-Schlüsselattribute, die nicht vom gesamten Schlüssel

abhängig sind -> keine zweite Normalform

– Aufteilung in mehrere Tabellen durch Einführung einer Beziehung

„Kunde bestellt Artikel“

Definition von NormalformenDefinition von Normalformen

Page 107: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

107ZT Schranz Informationstechnologie KEG

Die dritte Normalform

– Eine Relation befindet sich in der dritten Normalform, wenn sie

sich in der zweiten Normalform befindet und alle Nicht-

Schlüsselattribute nur direkt (also nichttransitiv) vom Schlüssel

abhängen.

– Also kein Nichtschlüsselattribut ist transitiv vom

Primärschlüssel abhängig, oder anders ausgedrückt...

– Es gibt keine funktionalen Abhängigkeiten zwischen den

einzelnen Nichtschlüsselattributen.

Definition von NormalformenDefinition von Normalformen

Page 108: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

108ZT Schranz Informationstechnologie KEG

Erklärung dritter Normalform

– Im Beispiel der Greißlerei kommt neben der Kundennummer in

der Tabelle Kunde der Ort und die Postleitzahl vor.

– Die PLZ ist kein Schlüssel, bestimmt aber den Ort (besser:

dieser ist voll funktional abhängig vom Attribut PLZ)

– Es gibt damit eine funktionale Abhängigkeit zwischen

Nichtschlüsseln, die beseitigt werden muss

(Redundanzproblem)

Einführung einer weiteren Tabelle (Skriptum Seite 43)

Definition von NormalformenDefinition von Normalformen

Page 109: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

109ZT Schranz Informationstechnologie KEG

Ein aus der Design-Phase erstelltes Relationenschema

wird bei der Normalisierung auf unnötige Redundanz

und Vermischung von Attributen mehrerer Entities in

einem Schema untersucht

– Test auf 1. Normalform

Die Relation darf keine zusammengesetzten oder mehrwertigen

Attribute enthalten. Außerdem sind keine Unterrelationen

erlaubt.

Normalisierung: Zusammengesetzte Attribute in Einzelattribute,

die alle atomar sind, aufteilen. Für mehrwertige Attribute und

Unterrelationen separate Schemata einführen.

Der NormalisierungsprozessDer Normalisierungsprozess

Page 110: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

110ZT Schranz Informationstechnologie KEG

Test auf 2. Normalform

– Falls eine Relation einen Primärschlüssel hat, der aus mehreren

Attributen besteht, darf kein Nichtschlüsselattribut von nur einem

Teil des Primärschlüssels funktional abhängig sein.

– Normalisierung: Die Gesamtrelation wird dahingehend zerlegt, dass

für jeden Teilschlüssel P, von dem Attribute funktional abhängig

sind, ein eigenes Schema erstellt wird. Dieses Schema enthält dann

den jeweiligen Teilschlüssel P als Primärschlüssel und diejenigen

Nichtschlüsselattribute, die von diesem Teilschlüssel funktional

abhängig sind. Außerdem wird ein Schema benötigt, welches den

ursprünglichen originalen (aus mehreren Attributen

zusammengesetzten) Primärschlüssel und die von ihm voll

funktional abhängigen Nichtschlüsselattribute enthält.

Der NormalisierungsprozessDer Normalisierungsprozess

Page 111: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

111ZT Schranz Informationstechnologie KEG

Test auf 3. Normalform

– Eine Relation darf kein Nichtschlüsselattribut A enthalten, das

funktional von einem anderen (oder einer Menge von

mehreren anderen) Nichtschlüsselattribute(n) abhängig ist. Es

darf also keine transitive Abhängigkeit eines

Nichtschlüsselattributs A zum Primärschlüssel bestehen.

– Normalisierung: Das Nichtschlüsselattribut A und die anderen

von ihm funktional abhängigen Nichtschlüsselattribute in ein

eigenes Schema auslagern. A wird dann im neuen Schema der

Primärschlüssel und bleibt im ehemaligen Schema ein

Fremdschlüssel.

Der NormalisierungsprozessDer Normalisierungsprozess

Page 112: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

112ZT Schranz Informationstechnologie KEG

Aufgabe 3:

Bringen Sie die folgende Tabelle des pressetext

Nachrichtendienstes in die dritte Normalform

– Tabelle auf Angabeblatt

Der NormalisierungsprozessDer Normalisierungsprozess

Page 113: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

113ZT Schranz Informationstechnologie KEG

1.NF „saubere Tabellen“

Keine zusammengesetzte Attribute, keine Unterrelationen

Tabelle Kundenaussendungen teilen in

AussenderKunde(KunNr,Bereich,KunName,Plz,

Ort,Strasse,KontaktNummer)

Aussendung(KunNr,Datum,Wochentag,Titel,

KontaktName,KontaktDW)

Der NormalisierungsprozessDer Normalisierungsprozess

Page 114: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

114ZT Schranz Informationstechnologie KEG

2.NF „Werte in richtigen Tabellen“

Abhängigkeiten von Teilschlüsseln entfernen

AussenderKunde(KunNr,Bereich,KunName,Plz,Ort,Strasse,KontaktNummer)

F.A. KunNr -> { Bereich,KunName,PLZ,Ort,Strasse,KontaktNumm}

PLZ -> Ort

Aussendung(KunNr,Datum,Wochentag,Titel,KontaktName,KontaktDW)

F.A. {KunNr,Datum} -> {Titel, KontaktName, KontaktDW}

Datum -> {Wochentag}

Hier Aufteilung notwendig

Der NormalisierungsprozessDer Normalisierungsprozess

Page 115: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

115ZT Schranz Informationstechnologie KEG

3.NF „keine Transitiven Abghängigkeiten“

In

AussenderKunde(KunNr,Bereich,KunName,Plz,

Ort,Strasse,KontaktNummer)

Gilt PLZ -> Ort, also abspalten wegen der Redundanz.

Der NormalisierungsprozessDer Normalisierungsprozess

Page 116: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

116ZT Schranz Informationstechnologie KEG

Lösung 4:

Der NormalisierungsprozessDer Normalisierungsprozess

meldungen

PK meldungen_idFK aussender_idFK kategorie_id

autordatumtiteltext

abonnenten

PK abonnenten_idnamevornameemail aussender

PK aussender_idnameemail

FK plzkontostand

kategorien

PK kategorie_idname

abonnenten_kategorien

PF abonnenten_idPF kategorie_id

orte

PK plzname

Page 117: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

117ZT Schranz Informationstechnologie KEG

Vorteile in der geringen Redundanz und der

Vermeidung von Anomalien

Nachteile durch

– Zerstückeln der Tabellen in viele kleine Tabellen bis zur

dritten Normalform (Übersicht)

– Aufwändige Wiedervereinigung bei der Abfrage

notwendig (Performance)

Balanceakt zwischen Nutzen und Aufwand

Vorteile und Grenzen der NormalisierungVorteile und Grenzen der Normalisierung

Page 118: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für Informatik

Datenbanken und AnwendungenDatenbanken und Anwendungen

Anwendung von Datenbanken in Softwaresystemen:Webservice Umsetzung und Datenbankintegration, Business Intelligence, ERP

Page 119: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

119ZT Schranz Informationstechnologie KEG

Web Service EngineeringWeb Service Engineering

Daten IdentificationWWW-Service Spezifikation

Daten OrganisationWWW Service ArchitekturManagement der Relationen

DatentransferService ImplementierungHyperlinks

Web Modell vs. Verzeichnis ModellWeb Server Management

InformationsänderungenÄnderungen im Web ModellOptimierungen

RequirementsAnalysis

DesignImplementation

& Testing

Deployment

Maintenance

Life Cycle einer WWW Site

Page 120: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Schranz Informationstechnologie KEG

Web Service ManagementWeb Service Management

RealisierungPlattformspezifika, Infrastrukturelle Vorgaben, Werkzeuge, Konzepte

IntegrationStatische vs. dynamische Information, Einbindung von legacy applications, Datenbankanbindung, 3-tier architectures,…

SicherheitDatenschutz, Datensicherheit, Zugriffssicherheit, Verschlüsselun.

WartungWiederverwendung, laufende Betreuung, Anpassungen, HTML++,…

Benutzerprofile, LoggingAuswertung der automatisch generierten Zugriffsprotokolle

Page 121: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

121ZT Schranz Informationstechnologie KEG

Integration und Umsetzung Integration und Umsetzung dynamischer Inhaltedynamischer Inhalte

Umsetzung von Informationen, die zur Zugriffszeit generiert werden– Aktuelle Informationsdienste (Wetterbericht,

Verkehrsaufkommen, Tagesgeschehen, Börsenkurse,…)– Dynamische Informationsquellen (Datenbanken,

Programme) Integration der bestehenden Anwendungen über

Schnittstellen an den WWW Server– Script-Editoren– Programmiersprachen– Template-Systeme– Redaktionssysteme

Page 122: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

122ZT Schranz Informationstechnologie KEG

Integration und Umsetzung Integration und Umsetzung dynamischer Inhaltedynamischer Inhalte

“Dynamische” Inhalte aus Legacy Applications– Eine Applikation, die relevante Informationen liefert,

welche als solche in das WWW eingebunden werden soll (Lagerbestandssystem, Katalog, Bibliothekssystem, Telefonbuch,…)

– Moderne DatenbankenDie Organisation besitzt bereits eine Datenbank und will deren Inhalte über das Web anbinden

– ManagementsystemeTeure Systeme, die die Steuerung eines ganzen Großbetriebes übernehmen sollen direkt über WWW erreichbar sein (SAP)

Anbindung über vorhandene oder zu programmierende Schnittstellen

Page 123: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

123ZT Schranz Informationstechnologie KEG

Integration und Umsetzung Integration und Umsetzung dynamischer Inhaltedynamischer Inhalte

Lösungen haben eine 3-tier Architecture

Browser Server Legacy Application

Page 124: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

124ZT Schranz Informationstechnologie KEG

HTML Formulare CGI vs Server API Submit mit POST oder GET

– application/x-www-form-urlencoded

Umgebungsvariablen

Das Common Gateway Interface ist eine Schnittstellendefinition, die eine Datenkommunikation zwischen Browser und Server zur dynamischen Dokumenterstellung ermöglicht.

CGI - Common Gateway InterfaceCGI - Common Gateway Interface

Page 125: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

125ZT Schranz Informationstechnologie KEG

Alternativen zu CGIAlternativen zu CGI

SSI (Server Side Include)– Befehle, eingebettet in HTML-Kommentare, werden on-

the-fly ausgeführt NSAPI, ISAPI

– Application Programming Interfaces für proprietäre Lösungen

ASP, PHP– Interpreter, die in HTML eingebettete Befehle umsetzen

Servlets, FastCGI– Ähnlich wie CGI, aber der Interpreter ist Teil des Servers,

d.h. bessere Performance, schnelleres Antwortzeitverhalten

CGI ist nicht die einzige Option, um dynamisch WWW-Inhalte zu erzeugen:

Page 126: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

126ZT Schranz Informationstechnologie KEG

CGI DatabankanbindungCGI Databankanbindung

API verwenden– Oracle API– ODBC– Language Modules (z.B.: MySQL.pm)

Database Connectors– W3-mSQL– ASP– JDBC

Page 127: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

127ZT Schranz Informationstechnologie KEG

CGI DatabankanbindungCGI Databankanbindung

Meist über moderne Web Application Server– Apache Tomcat (Java)– Andere Java Engines (IBM, SUN, ...)– MS Lösungen (ASPs mit C#,...)

– Perl OSS Frameworks (MASON)

Page 128: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

128ZT Schranz Informationstechnologie KEG

Modelle zur DatenbankanbindungModelle zur Datenbankanbindung

Moderne Software-Entwicklung basiert auf Software-Architekturen– Unterschiedliche Architekturmodelle– MVC (Modell-View-Controller)– SOA (service oriented architectures)– Client/Server Architekturen– Peer-to-peer Architekturen

Page 129: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

129ZT Schranz Informationstechnologie KEG

Das MVC ModellDas MVC Modell

Das MVC-Modell unterscheidet verschiedene Abstraktionsebenen der Software(entwicklung)

Jede Software, die Datenbankzugriffe beinhaltet, kann mit dem MVC-Modell beschrieben werden.

Moderne Implementierungen halten sich auch in der konkreten Umsetzung an die Modellvorgaben.

Page 130: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

130ZT Schranz Informationstechnologie KEG

MVC DetailsMVC Details

Model– hier wird das Datenmodell, also die Datenbank mit Inhalt und

Steuerungsmechanismen (etwa RDBMS) abgebildet

View– hier finden sich die Benutzerschnittstellen, etwa Web-Formulare

oder SAP-Masken, mit denen die Daten in der Software durch den Endbenutzer gepflegt werden (sendet „Events“ an Controller)

Controller– hier wird die Steuerungslogik beschrieben bzw. programmiert,

welche die Anforderungen der Benutzer und deren interaktive Eingaben an der View-Komponente in konkrete Datenbankabfragen an das Modell umwandelt bzw. logische Zusammenhänge kombiniert und in mehrere Datenbankanfragen aufteilt und als gesammeltes Ergebnis an die View-Masken und damit an den Endbenutzer zurückliefert.

Page 131: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

131ZT Schranz Informationstechnologie KEG

PERL/Mason und die *SQL-DB-AnbindungPERL/Mason und die *SQL-DB-Anbindung

persistente Datenbankverbindung Bearbeiten von relationalen Datenbanken

– Wesentliche SQL Statements SELECT INSERT DELETE UPDATE

– Tabellen erstellen, Indizes nutzen, Normalformen Web-Interfaces für Relationale Datenbanken

Page 132: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

132ZT Schranz Informationstechnologie KEG

PERL/Mason und die *SQL-DB-AnbindungPERL/Mason und die *SQL-DB-Anbindung

CGI-Programmierung mit PERL Datenbankanbindung mit DBIx::Abstract Generierung der HTML-Ausgaben

Programmierung bzw. Demonstration einer Perl-Anwendung (testserver)

Demonstration: Anzeige und Bearbeitung der Pressemeldungen im Web

Page 133: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

133ZT Schranz Informationstechnologie KEG

PERL/Mason und die *SQL-DB-AnbindungPERL/Mason und die *SQL-DB-Anbindung

Rat für Forschung und Technologieentwicklung

Guided Tour durch das Frontend und Backend

Evtl. Test im webtest.culturall.com

Demonstration: Komplexer Anwendungsfall CMS

Page 134: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für Informatik

DB und Integrierte AnwendungenDB und Integrierte AnwendungenBusiness Intelligence & ERPBusiness Intelligence & ERP

Webservice Umsetzung und Datenbankintegration, Business Intelligence, Enterprise Relationschip Planning

Page 135: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

135ZT Schranz Informationstechnologie KEG

Was ist Business IntelligenceWas ist Business Intelligence

BI Software– Ist Software, die operationale Kenngrößen eines

Unternehmens sammeln kann und damit der Geschäftsführung optimale Entscheidungen aufbereitet

– Sie erlaubt, Trends und Analysen aus Firmendaten zu erstellen, die das Unternehmen „leiten“.

– Wie führe ich Rohdaten in Geschäftsentscheidungsbringer über?

Messungen Statistiken Auswertungen

Wirtschaftlicher Begriff, der durch Technik unterstützt wird

Page 136: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

136ZT Schranz Informationstechnologie KEG

Was benötigt BI SoftwareWas benötigt BI Software

Content Management Software Data Collections

– Nutzerzugriffe, Auslastungen, Feedbacks

Data Mining Anwendungen– Profilbildung, Mustererkennung

Data Warehousing Decision Support Systems Knowledge Management EAI (Enterprise Application Integration)

Aufbauend auf DBs formten sich verschiedenste Anwendungen

Page 137: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

137ZT Schranz Informationstechnologie KEG

Praktische BI LösungenPraktische BI Lösungen

Einfache Datenbankanwendungen– Manuelle Auswertung– Web-gestützte Zugriffe (analog Übungsbeispiele)

Komplexe ERM/ERP Systeme (z.B. SAP)– Erlauben Fachbereichspezifischen Zugang– Integration von Funktionalität und Messung

Je nach Bedarf des Unternehmens

Page 138: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

138ZT Schranz Informationstechnologie KEG

Praktische BI LösungenPraktische BI Lösungen

Kundenbeziehung– Siehe Beispiel PTE Business Center

Qualität der Dienstleistung– Kundenakzeptanz durch Umfragen oder– Durch Auswertung von Logfiles

Statistische Kenngrößen auswertbar– Mit Hilfe moderner Werkzeuge– Zum Einsatz im Marketing (Werbeeinnahmen?)– Zum Bewerben des Produktes selbst

Was kann ein Unternehmen auswerten

Page 139: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

139ZT Schranz Informationstechnologie KEG

Server ZugriffsstatistikenServer Zugriffsstatistiken

Log files enthalten für jeden Zugriff auf den Web Server eine Zeile

– Datum und Uhrzeit, anfragender Rechner, welche Datei, wie groß,...

Statistikwerkzeuge können diese Informationen aussagekräftig verarbeiten

– Wie oft wurde zugegriffen– Woher stammen die Besucher– Zu welcher Tageszeit ist am meisten los– Welche Seite ist am gefragtesten– Wie viele Fehler liefert der Server– Benutzerprofile erstellen– ...

Anwendungsbeispiel Log files und ihre Auswertungen

Page 140: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

140ZT Schranz Informationstechnologie KEG

Server ZugriffsstatistikenServer Zugriffsstatistiken

WebTrends bei presse-text.austria

Page 141: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

141ZT Schranz Informationstechnologie KEG

Server ZugriffsstatistikenServer Zugriffsstatistiken

WebTrends bei presse-text.austria

Page 142: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

142ZT Schranz Informationstechnologie KEG

Anwendung Business IntelligenceAnwendung Business Intelligence

Analyse der geforderten Business-Logik Entwurf der Datenstrukturen Entwurf der Applikationslogik Strukturierung der benötigten Komponenten Umsetzung in HTML und Applikationskomponenten

– Design, Texting– DB-Anbindung– Performance-Umsetzung

Testing, Versioning Deployment/Service Start

Entwicklung von BI Software am Beispiel Web-Applikationen

Page 143: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

143ZT Schranz Informationstechnologie KEG

Aktuelles Beispiel Aktuelles Beispiel pressetext.businesscenterpressetext.businesscenter

Jeder Leser soll über das Business Center die Möglichkeit erlangen– Seine Stammdaten per Web-DB zu verwalten– Sein Abonnement der Businessmeldungen zu

gestalten– Ein Aussenderkonto zu betreuen– Online Marketing und Statistiken zu verwalten

Page 144: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

144ZT Schranz Informationstechnologie KEG

Aktuelles Beispiel Aktuelles Beispiel pressetext.businesscenterpressetext.businesscenter

Online Demo

Page 145: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für Informatik

Integrierte Lösungen, Datenbanken und ERPIntegrierte Lösungen, Datenbanken und ERP

Grundlagen von ERP-Lösungen, aktuelle Ansätze

Page 146: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

146

Enterprise Resource Planning (ERP)– „Planung des Einsatzes der Unternehmensressourcen“ – bezeichnet die unternehmerische Aufgabe, die in einem

Unternehmen vorhandenen Ressourcen (Kapital, Betriebsmittel oder Personal) möglichst effizient für den betrieblichen Ablauf einzusetzen.

– Meist wird diese Aufgabe durch geeignete Softwaresystemen unterstützt (-> ERP-Systeme)

ERP GrundlagenERP GrundlagenEinsatz von Datenbanken zur UnternehmenssteuerungEinsatz von Datenbanken zur Unternehmenssteuerung

Page 147: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

147

ERP-System (ERP-Software)– ist eine komplexe Anwendungssoftware zur Unterstützung der

Ressourcenplanung eines gesamten Unternehmens.

ERP-Systeme unterscheiden sich hauptsächlich in

– der fachlichen Ausrichtung (Zielbranche),

– Der Skalierbarkeit auf unterschiedliche Unternehmensgrößen (Anzahl benötigter/betreuter Benutzer oder

Filialen/Unternehmensstandorte), – dem angebotenem Funktionsumfang

– und den zum Einsatz kommenden Technologien (Datenbanken, Programmiersprachen, Softwarearchitekturen(Schichten), unterstützten Betriebssystemen, etc.).

ERP SystemeERP SystemeERP GrundlagenERP Grundlagen

Page 148: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

148

Eingesetzte Datenbanksysteme – sind unterschiedlich,

die Spanne reicht von MS-Access oder MS-SQL über MySQL bis hin zu Oracle und anderen meist proprietären Datenbanken

Trends– Grafische Benutzeroberflächen

– Steigende Produktzahlen als webbasierte Lösungen (weniger Aufwand bei Client-Installationen)

– Kunden/Lieferanten mittels frei verfügbarer Browser-Technologie leichter integrierbar

ERP Systeme & DatenbankenERP Systeme & DatenbankenERP GrundlagenERP Grundlagen

Page 149: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

149

Typische Funktionsbereiche einer ERP-Software– Materialwirtschaft (Beschaffung, Lagerhaltung,

Disposition, Bewertung),

– Produktion,

– Finanz- und Rechnungswesen,

– Controlling,

– Personalwirtschaft,

– Forschung und Entwicklung,

– Verkauf und Marketing,

– Stammdatenverwaltung

ERP Systeme - FunktionsbereicheERP Systeme - FunktionsbereicheERP GrundlagenERP Grundlagen

Page 150: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

150

ERP Systeme – Aufbau einer integrierten LösungERP Systeme – Aufbau einer integrierten LösungERP GrundlagenERP Grundlagen

Page 151: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

151

Integrierte betriebliche Software– Ein Informationssystem besteht aus Menschen und Maschinen, die

Information erzeugen und/oder benutzen und durch Kommunikationssysteme verbunden sind.

– Ein Informationssystem wird als integriert bezeichnet, wenn die Geschäftsprozesse und die sie unterstützenden Informationsprozesse

umfassend aufeinander abgestimmt sind,

die Verbindung zwischen einzelnen Programmen weitestgehend automatisiert sind und die Daten frühzeitig erfasst und für alle Programme gemeinsam unter zentraler Verwaltung gespeichert sind.

Ein betriebliches Informationssystem dient zur Abbildung der Leistungsprozesse und Austauschbeziehungen im Betrieb sowie zwischen dem Betrieb und seiner Umwelt.

ERP Systeme – Integrierte SoftwareERP Systeme – Integrierte SoftwareERP GrundlagenERP Grundlagen

Page 152: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

152

Integrationsrichtung

– Horizontal vs. Vertikal (cf. Folie vorhin)

Integrationsgegenstand

– Datenintegration (Nutzung gemeinsamer Datenbestände, DBs)

– Funktionsintegration, Prozessintegration, Methodenintegration

Integrationsreichweite

– Bereichsintegration, bereichsübergreifende Integration

– Innerbetriebliche Integration, außerbetriebliche Integration

Integrationsgrad

– Vollautomation (Trigger), Teilautomation (Mensch-initiiert)

ERP Systeme – Dimensionen der IntegrationERP Systeme – Dimensionen der IntegrationERP GrundlagenERP Grundlagen

Page 153: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

153

Bestimmende Faktoren– Unternehmensgröße

– Investitionsvolumen

– Anwendungsbereich / Domäne

– Integrationsgrad

Teillösungen– KMUs wenden oft Teile von ERP-Lösungen an, etwa

PPS (Produktplanungssysteme) CIM (Computer-Integrated Manufactoring)

ERP Systeme - SystemauswahlERP Systeme - SystemauswahlERP GrundlagenERP Grundlagen

Page 154: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

154

ERP Systeme – EinordnungERP Systeme – EinordnungERP GrundlagenERP Grundlagen

Page 155: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

155

ERP Systeme - SystemauswahlERP Systeme - SystemauswahlERP GrundlagenERP Grundlagen

Software passt sich ans Unternehmen an

Vorteile:• Bessere Unterstützung der

Unternehmensabläufe• Funktionsumfang individuell wählbar

Nachteile:• Höhere Kosten• Abhängigkeit von personellem Knowhow• Investitionssicherheit nicht gegeben

Unternehmen passt sich and Software an (eingeschränkt)

Vorteile:• Niedrigere Kosten• Besserer Support• Stabilität• Investitionssicherheit

Nachteile:• Teilweise unnötiger Funktionsumfang• Abhängigkeit von der Standardlösung (z.B. Schnittstellen) und dem Anbieter

IndividualsoftwareStandardsoftware

Page 156: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

156

Enterprise Resource Planning Systems (ERP-Systeme)

– wurden aus der Vorstellung heraus geprägt*, dass es sich um eine Erweiterung von

MRP II-Systemen als Manufacturing Resource Planning System um betriebswirtschaftliche Funktionalitäten wie Kostenrechnung, Finanzbuchhaltung oder Personalwesen handelt.

– Letztlich als Synonym zu Integrierter Standardsoftware, vor allem im Industriebetrieb, aufzufassen.

Ziele der ERP-Systeme sind– Die Optimierung der betriebswirtschaftlichen Ressourcenplanung unter

verschiedenen Randbedingungen

– Integration der wichtigen Geschäftsprozesse in ein Gesamtsystem

– Bearbeitung der gesamten Bandbreite betriebswirtschaftlicher Fragestellungen in Unternehmen

*Quelle: Mertens et al.: Lexikon der Wirtschaftsinformatik, 4. Aufl., Berlin, 2001.

ERP Systeme – Abgrenzung und BeschreibungERP Systeme – Abgrenzung und BeschreibungERP GrundlagenERP Grundlagen

Page 157: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

157

Grundsätzlich ist ein ERP-System ein Hilfswerkzeug– Kosten ersparen, Produktivität steigern, Überblick und Verwaltbarkeit von (großen)

Unternehmen bewahren

Wann kein ERP?– Konzerne müssen alle Unternehmensbereich im ERP abbilden können, oft schwierig /

lange Projektlaufzeiten

– Manche Wirtschaftsbranchen haben ganz spezifische Anforderungen (existiert Lösung oder nicht?)

– KMUs benötigen zum Beispiel oft keine integrierten Controlling- und Rechnungswesen-Module

– Standardkomponenten der Lösungen (SAP ERP, Oracle E-Business Suite) mit geringfügiger Parametrisierung kostenschonender einsetzen

ERP als Hygienefaktor– Die meisten Großkonzerne setzen ERP-Systeme ein, es bildet also keinen

Wettbewerbsvorteil; aber ohne ERP eine Nachteil

ERP Systeme – NotwendigkeitenERP Systeme – NotwendigkeitenERP GrundlagenERP Grundlagen

Page 158: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für Informatik

Integrierte Lösungen, Datenbanken und ERPIntegrierte Lösungen, Datenbanken und ERP

ERP-Anwendungen und Anbieter Konzepte, Architekturen, Aussichten

Page 159: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

159

ERP ERP ERP AnwendungenERP Anwendungen

Page 160: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

160

Der umsatzstarke

ERP-Markt ist heiß umkämpft

auch open sourcesoftware bereitsverfügbar

ERP Systeme – Einsatz und BeispieleERP Systeme – Einsatz und BeispieleERP AnwendungenERP Anwendungen

Page 161: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

161

ERP – Entwicklung marktgängiger SystemeERP – Entwicklung marktgängiger SystemeERP AnwendungenERP Anwendungen

Page 162: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

162

SAP R3– Marktführendes Produkt der integrierten ERP-Lösungen

– Softwareumfang (Orientierung) Mehr als 25.000 DB-Tabellen Mehr als 15.000 Programme Mehr als 35 Millionen Codezeilen (1/3 Kommentare) Mehr als 58.000 Funktionen

Läuft auf verschiedenster Hardware, Betriebssystemen, Datenbanken in diversen Architektur-Varianten

ERP Systeme – Einsatz und BeispieleERP Systeme – Einsatz und BeispieleERP AnwendungenERP Anwendungen

Page 163: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

163

ERP Systeme – Einsatz Beispiel SAP R3ERP Systeme – Einsatz Beispiel SAP R3ERP AnwendungenERP Anwendungen

Page 164: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

164

ERP Systeme – Einsatz Beispiel SAPERP Systeme – Einsatz Beispiel SAPERP AnwendungenERP Anwendungen

Page 165: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

165

ERP Systeme – Einsatz Beispiel SAPERP Systeme – Einsatz Beispiel SAPERP AnwendungenERP Anwendungen

Page 166: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

166

ERP Systeme – EntwicklungshistorieERP Systeme – EntwicklungshistorieERP AnwendungenERP Anwendungen

© Dr. Dirk Werth, Institut für Wirtschaftsinformatik, DFKI (www.dfki.de)

Page 167: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

167

Welche Herausforderungen treffen auf ERP-Systeme– Mammutprojekt Systemeinführung

(die Einführung haben Durchlaufzeiten von durchschnittlich 23 Monaten, Minimum 18 Monate) -> „Accelerated SAP“

– Internet Boomviele Systeme sollen mehr die Plattform Internet nutzen, (u.a. mySAP)

– CoonectivityInteroperabilität mit Fremdsoftware nötig, offene einfache Schnittstellen gefragtIntegration von „historisch gewachsenen Systemlandschaften“

– Usabilityim Fokus steht die einfache Benutzbarkeit, um die Produktivität und den Nutzen zu optimieren

Die letzten 20 Jahre wurde der Fokus auf Prozesse in der Firma gelegt, die kommenden Jahre wird der Fokus auf Prozessen zwischen den Unternehmen liegen (ERP II)

ERP Systeme - HerausforderungenERP Systeme - HerausforderungenERP ZukunftERP Zukunft

Page 168: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

168

Was bringt ERP II ?– ERP II is a business strategy and a set of industry-domain-specific applications

that build customer and shareholder value by enabling and optimizing enterprise and inter-enterprise, collaborative operational and financial processes (Bond, Gartner Group)

– ERP II umfasst die Funktionen von ERP sowie Offene Schnittstellen zu anderen Systemen Funktionalitäten zur Unterstützung der Wertschöpfungskette auf

Beschaffungs- und Vertriebsseite (Dettling 2003)

– ERP II sind Lösungen, welche die unternehmensweite Zusammenarbeit mit Partnern, Zulieferern, Händlern und Kunden direkt via Internet unterstützen und diese zu einem einzigen nahtlosen Unternehmen integrieren.(Frutig 2003)

– ERP II umfasst eine offene IT-Infrastruktur zur Integration von Anwendern, Prozessen und Anwendungen sowie branchenspezifische Funktionalitäten zur Optimierung betrieblicher Ressourcen unter Einbeziehung von beschaffungs-, vertriebs- und leistungserbringenden Geschäftspartnern (Werth, IWI/DFKI)

ERP Systeme – ERP IIERP Systeme – ERP IIERP ZukunftERP Zukunft

Page 169: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

169

Wandel von ERP I zu ERP II nach Gartner Group

ERP Systeme – ERP IIERP Systeme – ERP IIERP ZukunftERP Zukunft

Page 170: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

170

Enterprise Resource Planning (ERP)– Es hat eine kontinuierliche Verbesserung der Informationssysteme in

den letzten Jahren stattgefunden Vom MRP über ERP zu APS (advanced planning systems)

APS-Systeme schaffen durchführbare Pläne, die die gesamte Wertschöpfungskette betreffen.

Ausblick– Es gibt noch genügend Potential für Dynamik und vielfältige

Veränderungen in der kurzlebigen IT-Welt

– „RFID“oder „Profitable-to-Promise“ unterstützen seit kurzer Zeit das APS-System.

– Hauptziel in der Zukunft wird weiterhin die Realisation von Durchlaufzeiten bei gleichzeitiger maximalen Reaktionsfähigkeit sein

ERP Systeme - FazitERP Systeme - FazitERP ZukunftERP Zukunft

Page 171: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für Informatik

Datenbanken und Web Service EngineeringDatenbanken und Web Service Engineering

Business Intelligence

– Einsatz moderner Web Application Server mit DBs

Page 172: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

172

Web Service ManagementWeb Service ManagementWeb Application ServerWeb Application Server

Application Server– [Forrester Research:] „An application server is

a software server product that supports thin clients with an integrated suite of distributed computing capabilities. Application servers manage client sessions, host business logic, and connect to back-end computing resources, including data, transaction, and content“

Web Application Server: – Wenn die Server-Komponente (ausschließlich) per

Web-Server aufgerufen wird. Java Application Servers, z.B.: Servlet Engines Perl Application Servers, z.B.: Mason

Page 173: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

173

Mason Web Application Server– moderne Konzepte zum technischen

Web Service Management

– Lösungen für typische Site Development und Management Probleme

Wartbarkeit, Performance, Zuverlässigkeit caching, debugging, templating, staging,... über CGI, stand-alone, aber am besten mit

Apache::mod_perl

MasonMasonPerl-basierter Web Application Server

Page 174: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

174

MasonMasonPerl-basierter Web Application ServerPerl-basierter Web Application Server

Basic Features

– Simple embedded perl syntax– modulare Seiten mit Komponenten– Parameter handling über normale Variable– Templates (autohandler hierarchy)– Objekt-orientierte Techniken

eigene Methoden und Attribute per Komponente, verfügbar in den Templates und anderen Komponenten

Page 175: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

175

MasonMasonPerl-basierter Web Application Server

Page 176: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

176

MasonMasonPerl-basierter Web Application Server

Page 177: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

177

MasonMasonPerl-basierter Web Application Server

Page 178: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

178

MasonMasonPerl-basierter Web Application ServerPerl-basierter Web Application Server

Server Side Caching

– Einzeldaten, komplexe Datenstrukturen und ganze Komponenten können gecached werden

– Entsprechende Steurungsparameter entscheiden, ob der Inhalt über den Webserver oder aus dem Mason Cache erzeugt generiert werden soll(individuelle Timeouts, keys, concurrency)

– sinnvoller Einsatz bei ressourcenintensiven Services (z.B.: Datenbank-Queries)

Page 179: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

179

MasonMasonPerl-basierter Web Application ServerPerl-basierter Web Application Server

Mason Templating

– Mason folgt in der Ablauforganisation dem hierarchischen Aufbau der Verzeichnisse des apache Servers

– entsprechend der Einstellungen im config-File wird ausgehend vom document root Verzeichnis der template Baum abgearbeitet („autohandler“)

– templates haben Zugriff auf Attribute und Methoden von Mason Komponenten

Page 180: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

180

MasonMasonPerl-basierter Web Application ServerPerl-basierter Web Application Server

Mason Staging– Bei hochverfügbaren Services ist oft eine

Trennung zwischen Entwicklungs- und Produktionsebene gefragt

– Der Mason Application Server verbindet beide Leistungen innerhalb eines Webservers, trennt die Bereich logisch sauber voneinander

– Komponenten können einzeln in die Staging-Umgebung kopiert werden, dort bearbeitet und nach gefallen wieder zurückkopiert werden

– verbundene Dokumente werden von Mason automatisch im richtigen Bereich gefunden

Page 181: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

181

MasonMasonPerl-basierter Web Application ServerPerl-basierter Web Application Server

Mason Debugging und Error Handling

– Fehler im mason code werden detailliert berichtet und als Fehlerbericht angezeigt

– Alternativ kann ein default-File geschalten werden (sinnvoll für die Produktionsebene)

– Fehlerprotokolle werden für die Mason Objekte erstellt, nicht für die Code-Files im Webserver Verzeichnisbaum

Page 182: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

182

Mason und die *SQL-DB-AnbindungMason und die *SQL-DB-Anbindung

persistente Datenbankverbindung Bearbeiten von relationalen Datenbanken

– Wesentliche SQL Statements SELECT INSERT DELETE UPDATE

– Tabellen erstellen, Indizes nutzen, Normalformen Web-Interfaces für Relationale Datenbanken

Page 183: ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik IT-Management Datenbanken und Anwendungen

183

Mason und die *SQL-DB-AnbindungMason und die *SQL-DB-Anbindung

CMS und Ticketing Service Culturall Online demo cms2.culturall.com

– DB und Caching– Rich User Experience– DB und semantic checking– Stored procedures und constraints