Datenorganisation. Normalisierung... 5 Zweck der Normalisierung... 5 Unnormalisierte Form... 5 1. Normalform... 5. Beispiel 3. NF...



Ähnliche Dokumente
Allgemeines zu Datenbanken

Übungsblatt 4. Aufgabe 7: Datensicht Fachkonzept (Klausur SS 2002, 1. Termin)

Inhaltsverzeichnis. 1. Fragestellung

Datenbanken. Prof. Dr. Bernhard Schiefer.

Fachbereich Wirtschaftswissenschaften Campus Sankt Augustin

1. Ziel des Datenbankentwurfs

Relationale Datenbanken Datenbankgrundlagen

7. Übung - Datenbanken

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

ABTEILUNGS- ABTEILUNGS- LEITER NAME

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

ACCESS das Datenbankprogramm. (Einführung) DI (FH) Levent Öztürk

Entwurf von Datenbanken

Datenbanken Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt:

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL

Informatik II Datenorganisation Datenbanken

Einteilung von Datenbanken

Curriculum des Wahlfaches Informatik für das Gymnasium Dialog

IT-Kompaktkurs. Datenbanken Skript zur Folge 5. Prof. Dr. Georg Herde Fachhochschule Deggendorf

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

Datenbanken: Relationales Datenbankmodell RDM

4. BEZIEHUNGEN ZWISCHEN TABELLEN

Einführung in Datenbanken

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

Die Grundbegriffe Die Daten Die Informationen

Datenbankmodelle 1. Das Entity-Relationship-Modell

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse?

OPERATIONEN AUF EINER DATENBANK

Fundamentals of Software Engineering 1

Übersicht über Datenbanken

Das Entity-Relationship-Modell

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Aufgaben zur fachwissenschaftlichen Prüfung Modul 3 Daten erfassen, ordnen, verarbeiten und austauschen: Schwerpunkt Datenbanken

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

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

4 Grundlagen der Datenbankentwicklung

Datenbanken. Dateien und Datenbanken:

Software-Engineering und Datenbanken

Verwandt, logisch kohärent, zweckspezifisch, an reale Welt orientiert. Entität kann in einer oder mehreren Unterklassen sein

Einführung. Informationssystem als Abbild der realen Welt

Arbeiten mit ACCESS 2013

2.5.2 Primärschlüssel

Christian-Weise-Gymnasium Zittau Fachbereich Informatik M. Hans. Datenmodellierung 1. Inhaltsverzeichnis

Anwendungsentwicklung Datenbanken Datenbankentwurf. Stefan Goebel

Datenmanagement in Android-Apps. 16. Mai 2013

3. Das Relationale Datenmodell

Definition Informationssystem

Design Theorie für relationale Datenbanken

ICT Power-User und Supporter SIZ 2010 Modul 432: Datenbank mit Access Tanja Bossert, Andrea Weikert. 1. Ausgabe, November 2011

Wirtschaftsinformatik - 1.Tutorium im WS 11/12

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2

Software-Engineering und Datenbanken

Änderungen im Vertrags-Manager

WS 2002/03. Prof. Dr. Rainer Manthey. Institut für Informatik III Universität Bonn. Informationssysteme. Kapitel 1. Informationssysteme

In die Zeilen würden die Daten einer Adresse geschrieben werden. Das Ganze könnte in etwa folgendermaßen aussehen:

Access [basics] Gruppierungen in Abfragen. Beispieldatenbank. Abfragen gruppieren. Artikel pro Kategorie zählen

Wirtschaftsinformatik 2. Tutorium im WS 11/12

Themenblock 2: Datenmodellierung mit ERM

Tag 4 Inhaltsverzeichnis

Entwurf einer einfachen Datenbank zur Wunschzettel- Verwaltung

Carl-Christian Kanne. Einführung in Datenbanken p.1/513

Abschnitt 16: Objektorientiertes Design

System: DFBnet SpielPlus R3.90

Relationenmodell (RM)

Im Original veränderbare Word-Dateien

Access 2000 und MS SQL Server im Teamwork

1 Grundbegriffe Datenbanksysteme Entwicklung von Datenbanksystemen Inhaltsverzeichnis. 1.1 Information und Daten...

Mai Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln

MS Access 2010 Kompakt

Andreas Heuer Gunter Saake Kai-Uwe Sattler. Datenbanken. kompakt

ER-Modell. Entity-Relationship-Model

Datenexport mit orgamax

Datenbanken. Allg. Einführung in Datenbanken 1. Ich kenne Datenbanken. Wo werden Datenbanken eingesetzt. Welchen Zweck haben Datenbanken.

Datenbankentwurf. 4.2 Logischer Entwurf. Kapitel 4. ER-Modell. Umsetzung. Entwurfsdokumentation. relationales Modell. Verbesserung

Artenkataster. Hinweise zur Datenbereitstellung. Freie und Hansestadt Hamburg. IT Solutions GmbH. V e r s i o n

Themen. M. Duffner: Datenbanksysteme

Die Attribute (Feldnamen) dieser Entitäten entnimmst du den nachfolgenden fünf Screenshots.

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum:

Redundanz: Dieselben Informationen werden doppelt gespeichert.

Datenbankmodelle 1. Das Entity-Relationship-Modell. Prof. Dr. Bernhard Schiefer 2-1

Data Quality Management: Abgleich großer, redundanter Datenmengen

GI-Technologien zur Umsetzung der EU-Wasserrahmenrichtlinie (WRRL): Wissensbasen. Teil 1: Einführung: Wissensbasis und Ontologie.

Klassendiagramm. Kurzer Überblick über UML - Stand BlaBla

Praxisbeispiel Blended Learning Kurs M153 Datenmodelle entwickeln und umsetzen

Kapitel 10 Aktive DBMS

Übungen Teil 1: Normalisierung. Dozent: Stefan Maihack Dipl. Ing. (FH)

Fragen Arthur Zaczek. Apr 2015

Software-Engineering Einführung

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung

Referenzielle Integrität SQL

Sie sollen eine Datenbank für Befragungen mittels Online-Fragebögen zu unterschiedlichen Themen erstellen:

Objektrelationale Datenbanken

Seminarfragebogen Access-Schulung

On the Consistency of Spatial Semantic Integrity Constraints. Konsistenzprüfung von räumlichen semantischen Integritätsregeln.

Projektmanagement Kapitel 3 Tools die Werkzeuge. Projektstrukturplan PSP

Persistenz. Workplace Solutions. Persistenz. ÿ RDBMS und OO ÿ Strukturkonflikt ÿ Object-RDBMS-Mapping. Abbildung Objekte auf RDBMS

Willkommen zum DBS I Praktikum!

1 BEDIENUNGSANLEITUNG

Transkript:

Datenorganisation Datenbank-Entwurf... 2 Datenbanksystem DBS... 2 DBMS... 2 Funktionen DBMS... 2 Architektur DBMS... 2 DB-Entwurfsphasen... 2 Realitätsanalyse... 2 Semantisches Datenmodell... 3 Zielsetzung Datenmodellierung... 3 Elemente der Datenmodellierung... 3 Notation Assoziationstypen...3 Beziehungsrelation... 3 ERM... 3 ERD... 3 Relationenmodell... 3 ERM-Spezialfälle... 4 Generalisierung / Spezialisierung... 4 Alternative Darstellung... 4 Komplexe Beziehung... 4 Aufgelöste Darstellung... 4 Rekursive Beziehung... 4 Aufgelöste Darstellung... 4 Normalisierung... 5 Zweck der Normalisierung... 5 Unnormalisierte Form... 5 1. Normalform... 5 Beispiel 1. NF... 5 2. Normalform... 5 Beispiel 2. NF... 5 3. Normalform... 5 Beispiel 3. NF... 5 Logisches Datenmodell... 6 Zweck... 6 Umsetzung ERM RDM... 6 Regel 1... 6 Regel 2... 6 Regel 3... 6 Regel 4... 6 Regel 5... 6 Regel 6... 6 DBMS Modelle... 7 Übersicht... 7 Hierarchisch... 7 Grafik hierachisch... 7 Netzwerkförmig... 7 Relational... 7 Physisches Datenmodell... 8 DDL... 8 Darstellung... 8 Zugriffspfadmatrix... 8 Logische Datenstrukturen... 8 Konzeptionelles Strukturdiagramm... 8 Erklärung Strukturdiagramm... 8 Referentielle Integrität RI... 8 Regeln RI... 8 1

Datenbank-Entwurf Datenbanksystem DBS strukturierte Datenorganisation Trennung der Daten von den Anwendungen DBS = DB + DBMS Datenbank DB: Datenbestand, die eigentlichen Daten Datenbank-Managementsystem DBMS: Datenbankverwaltungssystem DBMS Bestandteile: DDL: Data Definition Language (Objektdefinition) DML: Data Manipulation Language (Datenfunktionen) DCL: Data Control Language (Zugriffsrechte) Dienstprogramme Funktionen DBMS Persistente Datenhaltung Speicherverwaltung im Hintergrund Datenintegrität / Konsistenz: - semantisch: inhaltlich, benutzerdefinierte Bedingungen - operational: konsistente Zustandsübergänge - logisch: referentielle Integrität - physisch: Zugriffspfade, Speicherstrukturen Ad hoc-abfragen Mehrbenutzerbetrieb mit unterschiedlichen Zugriffsrechten Wiederanlauf Architektur DBMS Modell von ANSI (American National Standardisation Institute) Externe Ebene: temporäre Benutzer- / Programmsicht Feldauswahl/Kombination/Berechnung Konzeptionelle Ebene: logische Datenorganisation hard- und softwareneutral Interne Ebene: physische Datenorganisation Indizes, Recovery-Verhalten Vorstudie: Realitätsanalyse DB-Entwurfsphasen Hauptstudie / Definitionsphase: Semantisches Datenmodell, konzeptioneller Entwurf (ERM) Detailstudie / Entwurfsphase: Normalisierung, Logisches Datenmodell (DBMS-spezifisch) Systembau / Realisierungsphase: Physisches Datenmodell Realitätsanalyse Grundlagen für den konzeptionellen Entwurf erarbeiten: Anforderungen, Informationserhebung Kernentitäten (haben keine Fremdschlüssel) Beziehungen mit Kardinalitäten Schlüssel-Attribute wichtigste Attribute Verfahren: Top down: komplexe, neue Systeme Bottom up: kleine Systeme, Redesign Inside out: globale Datenmodelle 2

Semantisches Datenmodell Zielsetzung Datenmodellierung Analysieren des Untersuchungsbereichs aus der datenorientierten Perspektive Festlegen von eindeutigen Begriffen für Datenobjekte, Datenfelder und Datenbeziehungen Erstellung eines konzeptionellen, redundanzfreien Datenmodells Einordnung des projektspezifischen Datenmodells in ein unternehmensweites Datenmodell Elemente der Datenmodellierung Entität, Objekt, Datensatz, Record, Zeile, Row, Tupel: individuelles und identifizierbares Exemplar einer Sache, einer Person oder eines Begriffs Entitätsmenge, Entitätstyp, Tabelle, Relation: eindeutig benannte Kollektion von Entitäten gleichen Typs Entitätsattribut, Feld, Spalte: Eigenschaft Domäne: Wertebereich, zulässige Eigenschaften, durch Felddefinition oder Plausibilisierung Beziehung, Relationship, Assoziation: assoziiert wechselseitig zwei oder mehr Entitäten Notation Assoziationstypen Beziehungsrelation einfach komplex Kardinalität* genau ein kein oder ein ein oder mehrere kein, ein, mehrere konditionell kondit.- komplex Assoziation Assoziationstyp min:max 1:1 0:1 1:n 0:n IEM** C.A. Zehnder 1 c m 1 c m 1 1 1 1 c 1 m c c c c m m m m 1 c m * Mengenverhältnisse ** Information Engineering Method ERM Entity Relationship Model: Modell zur strukturierten Modellierung von Daten zur Erstellung des konzeptionellen Schemas unabhängig von der späteren Implementierung Bestandteile: ERD Relationenmodell ERD Entity Relationship Diagram: Grafische Darstellung der Entitätstypen und deren Beziehung zueinander. Relationenmodell Auflistung der Entitätstypen auf Attributsstufe Kunde (Kunden#, Name, Vorname, Adresse) Konto (Konto#, Kunden#, Saldo) Kunde besitzt gehört zu Konto Primärschlüssel, Primary Key, Identifikationsschlüssel: eindeutiger Identifikator eines Datensatzes kann aus einem oder mehreren Attributen bestehen unterstrichen Beziehungen werden im Uhrzeigersinn beschrieben Fremdschlüssel, Foreign Key: verweist auf Primärschlüssel einer anderen Relation auf n-seite einer 1-n-Beziehung kursiv oder gestrichelt unterstrichen 3

ERM-Spezialfälle Generalisierung / Spezialisierung Alternative Darstellung Charakteristisch für 1 c-beziehungen Prinzip der Vererbungshierarchie in OO Primärschlüssel ist überall gleich Realisierung in einer Tabelle möglich Vorteil: Zugriffsoptimierung Nachteil: Speicherplatz Superentität: gemeinsame Attribute ist ist Subentität: spezielle Attribute Partner Kunde Mitarbeiter Lieferant Spezialiserung Generalisierung braucht weder Kardinalitäten noch Beziehungsbeschreibung Komplexe Beziehung Beziehungen vom Typ m(c) m(c) müssen aufgelöst werden. Bestellung umfasst kommt vor Artikel Aufgelöste Darstellung Aggregation: Umwandlung der Beziehung in eine Entität Benennungsmöglichkeiten der neuen Entität: Kombination der beteiligten Entitäten Substantivierung der Beziehung (z.b. Teilnahme) Bestellung Artikel umfasst kommt vor umfasst kommt vor Rekursive Beziehung Beziehung eines Entitätstyps mit sich selber in verschiedenen Rollen. ist Teil von besteht aus Bauteil Aufgelöste Darstellung Komplexe Beziehungen müssen wiederum aufgelöst werden. Bauteil besteht aus gehört zu ist Teil von gehört zu Bestellposition Bauteil- Zus.setzung Bauteil (Bauteil#, Bezeichnung, Farbe, Grösse) Bauteil-Zus.setzung (Ober#, Unter#, Anzahl Unterteile) 4

Normalisierung Zweck der Normalisierung Bottom up-verfahren zur Bereinigung bestehender Systeme. Speicheranomalien verhindern Redundanzen verhindern (mehrfach gespeicherte Informationen, d.h. Daten im gleichen Zusammenhang) Datenintegrität sicherstellen Strukturen flexibel halten Das ERM enthält oft bereits Relationen in 2. oder 3. NF, der Normalisierungsprozess dient dann der Überprüfung. Unnormalisierte Form Auflistung von Attributen zur Abbildung der Realität Rechnung: Re# Kunde Artikel 01 Schwarz, Zürich, London 03 Noir, Paris 04 Black, London Prozessor, Speicher, Monitor Monitor Speicher, Prozessor Speicher Betrag 900 300 600 200 1. Normalform Beispiel 1. NF Alle Attribute atomar Vorgehen: zusammengesetzte Attribute aufteilen (s. Kunde) Mehrfachwerte in separaten Zeilen führen (s. Artikel) abhängige Summen aufteilen Tabellentitel anpassen Rechnungsposition: Re# KuName KuOrt Artikel 01 Schwarz Zürich Prozessor 01 Schwarz Zürich Speicher 01 Schwarz Zürich Monitor London Monitor 03 Noir Paris Speicher 03 Noir Paris Prozessor 04 Black London Speicher Preis 400 200 300 300 200 400 200 2. Normalform 1. Normalform + Alle Attribute funktional vom Geamtschlüssel abhängig Vorgehen: Abhängigkeiten analysieren (KuName mit KuOrt von Re#, Preis von Artikel) Identifikationsschlüssel bestimmen: alle unabhängigen Attribute (Re#, Artikel) nicht vom Gesamtschlüssel abhängige Attribute in separate Tabellen auslagern (KuName und KuOrt, Preis) Primärschlüssel ausgelagerter Tabellen ist Fremdschlüssel in ursprünglicher Tabelle 3. Normalform 2. Normalform + Alle Attribute direkt vom Schlüssel abhängig Vorgehen: transitive (indirekte) Abhängigkeiten bestimmen (KuOrt von KuName) transitive Attribute in separate Tabellen auslagern (KuOrt) Primärschlüssel ausgelagerter Tabellen ist Fremdschlüssel in ursprünglicher Tabelle Beispiel 2. NF Rechnungspos.: Rechnung: Re# Artikel Re# KuName KuOrt 01 Prozessor 01 Schwarz Zürich 01 Speicher London 01 Monitor 03 Noir Paris 02 Monitor 04 Black London 03 Gehäuse Artikel: 03 Prozessor Artikel Preis 04 Speicher Prozessor 400 Speicher 200 Monitor 300 Beispiel 3. NF Die Tabellen Rechnungsposition und Artikel bleiben gleich. Rechnung: Kunde: Re# KuName KuName KuOrt 01 Schwarz Schwarz Zürich Black London 03 Noir Noir Paris 04 Black 5

Logisches Datenmodell Zweck Anpassung des semantischen Datenmodells an das DBMS des Zielsystems. Denormalisierung: Verletzung der 3. NF aus Performance-Gründen (weniger Relationen) Übernormalisierung: Auslagerung von Attributen in eigene Tabellen zur dynamischen Plausibilisierung von Auswahlwerten Umsetzung ERM RDM Regeln für die Umsetzung in ein relationales Datenmodell Assoziation 1 c m 1 (1) (2) (4) c (3) (5) m (6) (4) (5) (6) (6) Regel 1 Regel 2 Umsetzung in 1 Relation Umsetzung in 1 Relation mit Null-Werten (gute Performance) oder 2 Relationen ohne Null-Werte Mieter (weniger Speicherplatz) Kunde: Wohnung Ku# Name 1 c Mietwohung: Kunde KuKarte 01 Schwarz MiWo# Name Adresse Ort Kunde: 01 Schwarz Z-Strasse Zürich 03 Noir Ku# Name Punkte L-Street London 01 Schwarz 200 Kundenkarte: 03 Noir Rue P. Paris --------------- Ku# Punkte 03 Noir 0 01 200 03 0 Regel 3 Regel 4 Umsetzung in 3 Relationen Umsetzung in 2 Relationen Mann c c Frau Gebäude 1 m/ Wohnung Mann: Ma# Name 01 Schwarz 03 Noir Heirat: Ma# Fr# 02 01 03 02 Frau: Fr# Name 01 Black 02 Noir 03 Nera Gebäude: Ge# Name 01 Block X 02 Block Y 03 Fabrik Wohnung: Wo# Name 01 Schwarz 03 Noir Ge# 01 02 01 Regel 5 Regel 6 Umsetzung in 2 Relationen mit Null-Werten oder 3 Relationen ohne Null-Werte Abteilung Abteilung: Ab# c Name 01 Einkauf 02 Service m/ Mitarbeiter Mitarbeiter: Mi# Name 01 Schwarz 03 Verkauf 03 Noir 04 Nero Ab# 01 03 ------- 01 Umsetzung in 3 Relationen Mitarbeiter m/ m/ Mitarbeiter: arbeit: : Mi# Name Mi# Pr# Pr# Name 01 Schwarz 02 01 01 Pluto 03 02 02 Neptun 03 Noir 04 01 03 Saturn 04 Nero 6

DBMS Modelle Übersicht DBMS Modelle strukturiert linear netzwerkförmig hierarchisch objektorientiert relational Hierarchisch Grafik hierachisch Baumstruktur aus Segmenten mit klarer Rangordnung Beziehungen über zusätzliche Pointer Verwendung: für sehr grosse Datenmengen Beispiele: Information Management System IMS Vorteile: gute Performance Nachteile: umständliche Navigation Änderungen schwierig Redundanz bei komplexen Beziehungen Netzwerkförmig Statische Verknüpfung der Datensätze über Pointer beliebig viele logische Beziehungen beliebige Zugriffspfade, gezielte Zugriffe Modell von Codasyl: Owner- / Member-Record, Set (Beziehung), Next-, Prior-, Owner-Pointer Relational Ansammlung von zweidimensionalen über Schlüssel verknüpften Tabellen logisches Datenmodell kann beinahe unverändert übernommen werden Beispiele: DB2, Oracle, DBase, Sybase, Access Vorteile: gute Performance komplexe Beziehungen möglich Nachteile: hohe Komplexität Änderungen kompliziert heute selten verwendet Vorteile: Portierbarkeit gut erweiterbar viele Tools Nachteile: bei grossen Datenmengen schlechte Performance 7

Physisches Datenmodell Data Definition Language DDL Datenbankelemente erstellen, löschen, ändern Zugriffspfade (Indizes) implementieren Mengenverhältnisse berücksichtigen Referentielle Integrität implementieren Darstellung Zugriffspfadmatrix: geplante Zugriffe auf die Daten Konzeptionelles Strukturdiagramm: logische Datenstrukturen Datenmengen Integritätsbeziehungen Zugriffspfadmatrix Gilt für bestimmte Verarbeitung der Daten in Prozessen. Geplante Zugriffe Batch / Online pro definierter Zeiteinheit. Relation von nach Abteilung Personal Pers.- Abteilung 1 / 10 Personal 1 / 10 Logische Datenstrukturen Attribut-Definition: Attributeigenschaften: Feldart und Feldlänge Attributwerte: Domäne Attributanordnung im Datensatz Datensatz-Kennzahlen: Berechnung Gesamtlänge Datensatz (Paddings beachten) Schätzung der Anzahl Datensätze pro Tabelle Pers.- 1 / 10 Konzeptionelles Strukturdiagramm Erklärung Strukturdiagramm Pers# Abt# Personal 100 50 E 10 / bl 10 / wl 10 / wl Abteilung 10 25 E Pers# Personal- 1000 50 Proj# Proj# 30 45 E Primärschlüssel Name der Entitätsmenge Anzahl Tupel Tupellänge Kernentität n / RI n = durchschnittliche Anzahl Tupel, die ein Tupel der Master-Entität der Detail-Entität zugeordnet hat Referentielle Integrität RI Der Fremdschlüssel darf nur Werte annehmen, welche in der entsprechenden Relation als Identifikationsschlüssel existieren. Die Regeln der referentiellen Integrität stellen sicher, dass beim Löschen oder Ändern eines Identifikationsschlüssels keine ungültigen Werte in den zugehörigen Fremdschlüsseln entstehen. Regeln RI On delete/update: cascade: Weitergabe der Löschung/Modifikation (wl/wm) an Datensätze mit dem zugehörigen Fremdschlüssel restrict: Bedingte Löschung/Modifikation (bl/bm) Abbruch falls zugehörige Fremdschlüssel vorhanden sind set null: Nullsetzung bei Löschung/Modifikation (nl/nm) (Null bedeutet nicht existent) set to default: Setzung eines definierten Defaultwertes ignore: Missachtung der referentiellen Integrität (normalerweise nicht erlaubt) 8

9