Anwendungsentwicklung Datenbanken Datenbankentwurf. Stefan Goebel

Ähnliche Dokumente
Kapitel 1: Wiederholungsfragen Grundlagen DBS

Medizininformatik Software Engineering

2. Relationale Datenbanken

Relationale Datenbanken

Arbeiten mit einer Datenbank 1

Grundlagen zu Datenbanken zu Beginn der Jgst. 13

Rückblick: Datenbankentwurf

Entity Relationship Modell (ERM) (Konzeptueller Datenbankentwurf)

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen

Datenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt

Inhaltsverzeichnis Vorwort zur vierten Auflage Vorwort zur dritten Auflage Vorwort zur zweiten Auflage Vorwort zur ersten Auflage Hinweise zur CD

PD Dr.-Ing. F. Lobeck. Seite 6

Einführung in die Datenorganisation. Informationssysteme

Einleitung 19. Teil I Einführung in Datenbanksysteme 25. Kapitel 1 Wozu Datenbanksysteme da sind 27

Entitätstypen, Attribute, Relationen und Entitäten

konzeptionelles DB-Design

D1: Relationale Datenstrukturen (14)

Informatik 10 Mar Datenbanken: RDM Normalisierung April 2014

Datenbanken Grundlagen und Design

BG - Schwerpunkt Datenverarbeitungstechnik 13.1 Datenbanken Nr Normalisierung Einführung

Folien zum Textbuch. Kapitel 2: Planung, Entwicklung und Betrieb von IS. Teil 3: Modellierung von betrieblichen Informationssystemen

5.2 Entity-Relationship-Modell

Die Bestellungen eines Schreibwarengeschäftes sollen auf eine aktuelle Form mit Hilfe einer zeitgemäßen Datenbank umgestellt werden.

Wirtschaftsinformatik 7a: Datenbanken. Dozent: R. Witte

Vorlesung Software-Engineering I

Wirtschaftsinformatik 7a: Datenbanken. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte

Normalisierung So wahr mir Codd helfe

Vorlesungen. Studenten. hören. Grundzüge. Fichte Glaube und Wissen Jonas

3. Relationales Modell & Algebra

Handout zur Unit Datenmodellierung Web-Technologien Datenmodellierung Prof. Dr. rer. nat. Nane Kratzke

Kapitel 6: Das E/R-Modell

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme

Datenbanken in der FOR 600 Der Einsatz von Datenbanken in der empirischen Linguistik

Kapitel 3: Datenbanksysteme

Logischer Entwurf. Stufen der Entwicklung einer Datenbank. Inhalt. Übersicht. 1. Datenbank - Entwurf ( ER - Diagramm)

Einführung in Datenbanken

Entwurf von Relationalen Datenbanken (1) (mit dem Entity-Relationship-Modell)

Rückblick: Relationales Modell

Datenbanksysteme: Entwurf

Profilbezogene informatische Bildung in den Klassenstufen 9 und 10. Schwerpunktthema Daten und Datenbanken

Relationale Datenbanken und SQL

Ein Schlüssel ist eine Menge von Attributen (also eines oder mehrere), die eine Datenzeile (Tupel) einer Tabelle eindeutig identifiziert

10. Datenbank Design 1

3. Relationales Modell & Algebra

Kapitel 6: Das E/R-Modell. Skript 2003 Christian Böhm

3. Relationales Modell

D a t e n b a n k e n

Inhaltsverzeichnis EINFÜHRUNG 1 1 DIE STRECKE: DATENBANKENTWURF 5 2 DIE ERSTE ETAPPE: VON DER REALITÄT ZUM KONZEPTIONELLEN DATENMODELL 27

3. Das Relationale Datenmodell

Informatik Datenbanken

Das konzeptionelle Datenmodell

Aufbereitung für s Web. Urheberrecht. Warenzeichen und Markenschutz

Datenbanken. Zusammenfassung. Datenbanksysteme

ER-Modell, Normalisierung

Informations-, Daten- und Wissensmanagement

Entwicklung der Datenbanksysteme

4. Normalformen. Qualitätsanforderungen an Tabellen. Klassische Normalformen (1,. 2., 3.) Spezielle Normalformen

Datenbanken als Grundlage für Informationssysteme

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

1. Einführung. Datenbanken Grundlagen

Das relationale Datenmodell

Das relationale Modell (Teil 1)

Kapitel 11. Normalisierung

Inhaltsverzeichnis. 1. Fragestellung

Aufgabe 1) Übung 4: 1.2

- Gewinnung neuer Informationen durch Berechnungen - Einsatz graphischer Mittel zur Präsentation / Visualisierung von Datenreihen

3. Übung. Einführung MS Access. TU Dresden - Institut für Bauinformatik Folie-Nr.: 1

Kapitel 1 Grundlagen. Skript zur Vorlesung: Datenbanksysteme II Sommersemester Vorlesung: PD Dr. Peer Kröger

Lehrplan. Datenbanken. Höhere Berufsfachschule für Automatisierungstechnik. Ministerium für Bildung

Schema: konkrete Beschreibung einer bestimmten. (unter Verwendung eines Datenmodells)

10 Datenbanksysteme Datenbanken und Datenbanksysteme

Gliederung Datenbanksysteme

Veranstaltung Pr.-Nr.: Datenmodellierung. Veronika Waue WS 07/08. Phasenschema der Datenbankentwicklung (grob) Informationsanalyse

Tabellenkalkulationssysteme Inf 9 / 1

Datenbanken und Datenbanktypen Tag 1 : Kapitel 1. Christian Inauen. Lernziele. Entwicklung der Datenbanken.

SWE4 Slide 1. Software-Engineering. Vorlesung 4 vom Sebastian Iwanowski FH Wedel

Informatische Modellierung

Kapitel 5: Das E/R-Modell

Datenbanken. Prof. Dr. Bernhard Schiefer.

Datenbanken und Datenmodellierung

Datenbanken I. Karczewski Datenbanken I 1. Produkt (0,*) (0,*)

Datenbankentwicklung

Vorlesung Datenbankmanagementsysteme

Glossar für das Fach Informatik

Theorie zur Übung 8 Datenbanken

Datenorganisation. Februar bis Mai Dipl.-Oek. Patrick Bartels Institut für Wirtschaftsinformatik Universität Hannover

Datenbank 3-Ebenenkonzept

Datenmodellierung VU Einführung SS 2015

Datenbankentwurf. Kapitel 3. Datenbankentwurf 76 / 508

Erstellen von relationalen Datenbanken mit Hilfe der Nomalisierung

Datenmodellierung VU Einführung SS 2016

Transkript:

Anwendungsentwicklung Datenbanken Datenbankentwurf Stefan Goebel

Warum eine Datenbank? Nutzung von gleichen Daten durch viele Anwender auch an unterschiedliche Orten Daten können mit unterschiedlicher Software genutzt werden Effiziente Verwaltung der Daten Sehr flexibel und schnell abfragbar Hohe Datensicherheit erreichbar Folie 2

Datenbanksystem besteht aus: Datenbankmanagementsystem - die Software mit der verwaltet wird Anwenderdaten das, was verwaltet wird Data Dictionary beschreibt den Aufbau der Daten Folie 3

Datenbankmanagementsyste Ein Datenbankmanagementsystem ist ein aus einer Speicherungs- und einer Verwaltungskomponente bestehendes Programm. Die Speicherungskomponente erlaubt, Daten und ihre Beziehungen abzulegen, die Verwaltungskompenente stellt Funktionen und Sprachmittel zur Pflege und Verwaltung der Daten zur Verfügung. Z.B. MySQL, Oracle, MS-SQL, etc. m Folie 4

Datenbank Unter Datenbank versteht man ein System zur Beschreibung, Speicherung und Wiedergewinnung von umfangreichen Datenmengen. Abgrenzung der Begriffe Daten - Informationen und Wissen Folie 5

Was sind Daten? Logisch gruppierte Informationseinheiten Digitale Repräsentation von Information realen Objekten abhängig von der Anwendung Folie 6

Datenschutz 3a Datenvermeidung und Datensparsamkeit Gestaltung und Auswahl von Datenverarbeitungssystemen haben sich an dem Ziel auszurichten, keine oder so wenig personenbezogene Daten wie möglich zu erheben, zu verarbeiten oder zu nutzen. Insbesondere ist von den Möglichkeiten der Anonymisierung und Pseudonymisierung Gebrauch zu machen, soweit dies möglich ist und der Aufwand in einem angemessenen Verhältnis zu dem angestrebten Schutzzweck steht. (BDSG) Folie 8

3-Ebenen-Architektur große Datenunabhängigkeit Von ANSI/SPARC definiert: Externe Ebene Sichten auf Teile der Daten, Masken und Dialoge (Oberflächendesigner) Konzeptionelle, logische Ebene logische Gesamtsicht, Daten, Beziehungen, Zugriffsrechte, ER-Modell (Datenbankentwickler) Interne, physische Ebene Speicherstrukturen (DBAdministrator) Folie 9

Geschichtliche Entwicklung Hierarchisches Datenmodell Netzwerk Datenmodell Relationales Datenmodell Entity-Relationship Modell Objektrelationales Datenmodell Objektorientiertes Datenmodell Folie 10

Hierarchisches Datenmodell Grafische Darstellung der zu speichernden Daten und ihrer Beziehungen Eindeutige Beziehungen zwischen Objekttypen Jedes Element hat: Einen Vorgänger Beliebig viele Nachfolger Eindeutiger Weg zum Wurzelobjekt Folie 11

Hierarchisches Datenmodell Folie 12

Netzwerk Datenmodell Erweiterung des Hierarchischen Modells Mehrere Vorgänger möglich, daher Mehrfachspeicherung vermeidbar Folie 13

Netzwerk Datenmodell Folie 14

Relationales Datenmodell Darstellung als Tabellen mit Zeilen und Spalten Beziehungen zwischen Tabellen durch Primärschlüssel Fremdschlüssel Folie 15

Objektrelationale Datenbank Bindeglied zwischen klassischen relationalen Datenbanken und Objektdatenbanken. Über eine Relationale Datenbank wird eine objektorientierte Zugriffsschicht gesetzt. Einsatz: wo Mengen von Objekten in Beziehung zu anderen Daten oder Objekten gebracht werden müssen. Z.B.: Systeme zur Erfassung geographischer Daten (GIS) Folie 16

Objekte bestehen aus Objektorientiertes tabellenähnlich organisierten Daten Datenmodell Methoden zur Veränderung der Daten Objekten Vererbung möglich Polymorphismus (Methode ist kontextbezogen definiert) möglich Folie 17

Externe Phase: Anforderungsanalyse Schritte der Datenmodellierung Konzeptionelle Phase: Daten und Beziehungen ER-Modell Logische Phase: Relationales Datenmodell Physische Phase: Implementieren Test und Abnahme Folie 18

Entity-Relationship Modell Modellierungswerkzeug für Datenbanken Darstellung von Daten und Beziehungen auf konzeptioneller Ebene Entity Entitytyp Properties Relationships Folie 19

ERM: Entity Abbild eines realen Gegenstandes z.b. Kunde, Artikel, etc. Eigentliche Daten (Datensätze) Wird im ERM nicht dargestellt Folie 20

ERM: Entitytyp Gleichartige Entities bilden Entitytyp Z.B. Müller, Meier, Schultz bilden den Entitytyp Kunde Darstellung im ERM als Rechteck (Chen-Notation) Kunde Folie 21

ERM: Attribute (Properties) beschreiben die Entitytypen näher durch Namen und Datentyp Darstellung im ERM als Ellipse Schlüsselattribute werden fett oder unterstrichen KdNr Name Folie 22

ERM: Beziehungen Unterschiedliche Komplexitäten (Kardinalitäten) möglich 1 : 1 1 : n m : n Darstellung durch Raute und Verbindungen zwischen den Entitytypen Kunde 1 n erteilt Auftrag Folie 23

Begriffserklärung Tabelle, Spalte, Zeile, Feld Schlüssel Redundanz Inkonsistenz, Anomalien Referenzielle Integrität Folie 24

Tabelle (Relation) besteht aus: Zeilen Datensätze, Tupel Spalten Attribut, Daten mit einem festgelegten Typ Spaltenüberschriften Merkmale, Attribute Feld Attributwert Folie 25

Schlüssel Primärschlüssel: Attribut zur eindeutigen Identifizierung eines Tupels Fremdschlüssel: verweist auf den Primärschlüssel in einer anderen Tabelle Kein Schlüssel: Index einer Spalte beschleunigt die Suche Folie 26

1:n-Beziehnung ER-Modell Relationales Datenmodell Folie 27

m:n-beziehung ER-Modell Relationales Datenmodell Folie 28

Redundanz Mehrfache, überflüssige Speicherung eines Attributes, auch Prozessdaten Nachteile: Speicherbedarf Änderungen an mehreren Stelle nötig Folie 29

Inkonsistenz, Anomalien Mutationsanomalien Einfügeanomalie Änderungsanomalie Löschanomalie Unterschiedliche Werte für ein Attribut entsteht durch Redundanz, wenn nur an einer Stelle geändert wird Kann durch Normalisierung vermieden werden Folie 30

Referenzielle Integrität Trägt zur Datenkonsistenz bei Zu jedem Fremdschlüssel muss der passende Primärschlüssel existieren Folie 31

Normalisieren Grund: Vermeidung von Redundanzen Vermeidung von Anomalien Normalformen nach Boyce-Codd 1. Atomare Werte 2. Jedes Nicht-Schlüsselattribut ist vom gesamten Schlüssel abhängig 3. Nicht-Schlüsselattribute sind voneinander unabhängig Folie 32

Unnormalisiert MiNr Name AbtNr Abteilung Projekte 1 Egon 42 UML 7(DB),21(BMW),3(SI) 4 Kurt 42 UML 1(BK),21(BMW),7(DB) 9 Horst 44 GUI 3(SI),14(C#) Folie 33

1. Normalform Alle Attribute enthalten nur einen Wert MiNr Name AbtNr Abteilung ProNr Projekt 1 Egon 42 UML 7 DB 1 Egon 42 UML 21 BMW 1 Egon 42 UML 3 SI 4 Kurt 42 UML 1 BK 4 Kurt 42 UML 7 DB 4 Kurt 42 UML 21 BMW 9 Horst 44 GUI 3 SI 9 Horst 44 GUI 14 C# Folie 34

2. Normalform Jedes Nicht-Schlüsselattribut ist vom gesamten Schlüssel abhängig MiNr ProNr MiNr Name AbtNr Abteilung 1 3 1 Egon 42 UML 1 7 4 Kurt 42 UML 1 21 9 Horst 44 GUI 4 1 ProNr Projekt 4 7 1 BK 4 21 3 SI 9 3 7 DB 14 C# 21 BMW 9 14 Folie 35

3. Normalform Nicht-Schlüsselattribute sind voneinander unabhängig MiNr Name AbtNr 1 Egon 42 4 Kurt 42 9 Horst 44 AbtNr Abteilung 42 UML 44 GUI Folie 36

Höhere Normalformen Selten verwendet und meist nicht sinnvoll, da Unübersichtliche Datenbanken Nachteile für Performance Folie 37