Datenbanken-d_2

  • June 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Datenbanken-d_2 as PDF for free.

More details

  • Words: 2,183
  • Pages: 61
Datenbank - Grundlagen

H.-G. Hopf Georg-Simon-Ohm Fachhochschule Nürnberg

Datenbank-Grundlagen / 1

©Η.− G.Hopf / 03.10.2007

Motivation z

Aufgabe: Ablage und Verwaltung von Informationen in Zusammenhang mit einem digitalen Multimedia-DateienArchiv Beispiele für Multimedia-Dateien: » digitale Bilder, » Soundclips, » Movieclips, » ...

Datenbank-Grundlagen / 2

©Η.− G.Hopf / 03.10.2007

Motivation z

Lösung: Ablage von Multimedia-Dateien im Filesystem

Datenbank-Grundlagen / 3

©Η.− G.Hopf / 03.10.2007

Motivation z

Nachteile der Lösung: » Schwierigkeiten Ordnungsschema zu finden » Eingeschränkte Möglichkeit Informationen über Multimedia-Dateien abzulegen » Schlechte Suchmöglichkeiten » eventuell redundante Datenhaltung » keine Mechanismen zur Sicherung von Datenintegrität » keine Zugriffskontrolle

Datenbank-Grundlagen / 4

©Η.− G.Hopf / 03.10.2007

Motivation .. | -

.. | -

.. | -

Benutzer Benutzer Benutzer

Betriebssystem

Daten Daten Daten Daten Datei Datei Datei Datei Datenbank-Grundlagen / 5

.. | -

.. | -

.. | -

Benutzer Benutzer Benutzer

Datenbanksystem

Daten Daten Daten Daten

©Η.− G.Hopf / 03.10.2007

Inhaltsverzeichnis Begriffserklärung z Datenbank-Architektur z Klassifikation von Datenbanksystemen z DBMS Marktübersicht z

Datenbank-Grundlagen / 6

©Η.− G.Hopf / 03.10.2007

Inhaltsverzeichnis Begriffserklärung z Datenbank-Architektur z Klassifikation von Datenbanksystemen z DBMS Marktübersicht z

Datenbank-Grundlagen / 7

©Η.− G.Hopf / 03.10.2007

Begriffserklärung

DB

Datenbanksystem DBS

Datenbankmanagementsystem DBMS

Datenbank

Datenbasis Datenbankanwendung Datenbank-Grundlagen / 8

©Η.− G.Hopf / 03.10.2007

Begriffserklärung Datenbanksystem Ein Datenbanksystem (DBS) ist ein System zur z Beschreibung z persistenten Speicherung z zuverlässigen und unabhängigen Verwaltung z komfortablen, flexiblen und geschützten Verwendung (Wiedergewinnung) von umfangreichen Datenmengen (Informationen), die von mehreren Anwendungsprogrammen, eventuell auch gleichzeitig, genutzt werden.

Datenbank-Grundlagen / 9

©Η.− G.Hopf / 03.10.2007

Begriffserklärung Datenbanksystem » persistente Speicherung bedeutet, dass die Daten dauerhaft verfügbar sein sollen. » Zuverlässige Verwaltung bedeutet, dass die Konsistenz und die Integrität der Daten sichergestellt ist. » Unabhängige Verwaltung besagt, dass Anwendungen weitgehend von dem Datenbanksystem unabhängig sind.

Datenbank-Grundlagen / 10

©Η.− G.Hopf / 03.10.2007

Begriffserklärung Datenbanksystem » Komfortable Verwendung bedeutet, dass über höhere Programmiersprachen (höhere, abstrakte Schnittstelle) auf die Datenbank zugegriffen werden kann. » Flexible Verwendung bedeutet, dass mit einer ad-hoc Abfragesprache, ohne Programmierung, auf die Daten zugegriffen werden kann. » Geschützte Verwendung bedeutet, dass die Daten vor unberechtigtem Zugriff gesichert sind. Datenbank-Grundlagen / 11

©Η.− G.Hopf / 03.10.2007

Begriffserklärung Systemkomponenten Eine Datenbank besteht aus einer: z Datenbasis z Datenverwaltung

Datenbank-Grundlagen / 12

©Η.− G.Hopf / 03.10.2007

Begriffserklärung z

Systemkomponenten Benutzer 1 Benutzer 2 Benutzer 3

Datenbasis

Benutzer .. Benutzer .. Benutzer n Datenbank-Grundlagen / 13

Datenverwaltung ©Η.− G.Hopf / 03.10.2007

Begriffserklärung z

Datenbasis Benutzer 1

Datenbasis

Benutzer 2 Benutzer 3 Benutzer .. Benutzer .. Benutzer n Datenbank-Grundlagen / 14

©Η.− G.Hopf / 03.10.2007

Begriffserklärung z

Datenbasis » Die Datenbasis enthält die Gesamtheit der Daten eines Anwendungsbereichs. » Die Datenbasis kann für verschiedene Anwendungen in weitgehend unabhängigen Datengruppen zusammengefaßt sein. » Der Datenbestand der Datenbasis ist auf Dauer angelegt.

Datenbank-Grundlagen / 15

©Η.− G.Hopf / 03.10.2007

Begriffserklärung z

Datenverwaltung Die Datenverwaltung erlaubt mehreren Benutzern gleichzeitig mit dem unter Umständen teilweise gemeinsamen Datenbestand zu arbeiten; insbesondere ermöglicht die Datenverwaltung: » das Abspeichern von Daten » den Zugriff auf die Daten » das Verändern von Daten » die Organisation der Daten » den Schutz der Daten vor unsachgemäßer oder nicht erlaubter Benutzung

Datenbank-Grundlagen / 16

©Η.− G.Hopf / 03.10.2007

Begriffserklärung z

Problem: Lost-Update » Zwei Benutzer greifen unabhängig voneinander lesend auf das gleiche Datenelement zurück. » Der eine Benutzer ändert den Wert auf W1, der andere Benutzer ändert den gerade modifizierten Wert auf W2, ohne die Modifikation des ersten Benutzers zu berücksichtigen. » Damit ist der Wert W1 des ersten Benutzers verloren.

Datenbank-Grundlagen / 17

©Η.− G.Hopf / 03.10.2007

Begriffserklärung z

Problem: Inconsistent Analysis (dirty read) » Ein Benutzer greift lesend ein anderer Benutzer greift schreibend auf eine Menge von Daten zu. » Der lesende Benutzer kann jetzt Daten lesen, – Die durch den 2. Benutzer ungeändert bleiben – Die nach dem Lesen durch den 2. Benutzer geändert werden, – Die vor dem Lesen schon durch den zweiten Benutzer geändert wurden.

» Damit ist das Leseergebnis inkonsistent Datenbank-Grundlagen / 18

©Η.− G.Hopf / 03.10.2007

Begriffserklärung z

Datenbankmanagementsystem (DBMS) » Verwaltungsprogramme, die die Datenverwaltung ermöglichen, bilden das Datenbankmanagementsystem DBMS. » Das DBMS verwaltet und kontrolliert zentral die abgelegten Datenbestände.

Datenbank-Grundlagen / 19

©Η.− G.Hopf / 03.10.2007

Begriffserklärung z

Datenbankanwendung Beispiel für ein datenbankgestütztes Werkzeug:

Datenbank-Grundlagen / 20

©Η.− G.Hopf / 03.10.2007

Inhaltsverzeichnis Begriffserklärung z Datenbank-Architektur z Klassifikation von Datenbanksystemen z DBMS Marktübersicht z

Datenbank-Grundlagen / 21

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Betrachtungsebenen für Information Wenn man von Information bzw. Daten spricht, meint man nicht immer das gleiche. Es gibt verschiedene Betrachtungsebenen. Es ist wichtig sich Klarheit über die Betrachtungsebenen von Information und Daten zu verschaffen. Dazu muss man festlegen, von welcher Betrachtungsebene man spricht.

Datenbank-Grundlagen / 22

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Betrachtungsebenen für Information Reale Welt:

Datenbank-Grundlagen / 23

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Betrachtungsebenen für Information Reale Welt beschrieben durch Informationen: Die Beschreibung der realen Welt geschieht in zwei Schritten. • Abstraktion • Repräsentation

Datenbank-Grundlagen / 24

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Betrachtungsebenen für Information

Abstraktion: Die reale Welt wird in einer ersten Abstraktion beschrieben durch (unter bestimmten Gesichtspunkten) relevante Information.

Datenbank-Grundlagen / 25

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Information Information wird definiert als zielgerichtetes und zweckorientiertes Wissen. Information nimmt die Stellung einer Grundkategorie neben Energie und Materie ein. Information ist Gegenstand der •Übermittlung,Vermittlung, •Verarbeitung •Speicherung.

Datenbank-Grundlagen / 26

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Information, für die Übermittlung und Aneignung »in Form gebrachtes« Wissen, wie Mitteilungen, Nachrichten, Messwerte, Daten, im Allgemeinen zur Beseitigung einer Ungewissheit. In der Informatik werden insbesondere Informationen betrachtet, die Gegenstand von Speicherung, Verarbeitung und Übertragung sind, meist dargestellt als eine Folge von Zeichen aus einem bestimmten Zeichenvorrat (z. B. einem Alphabet).

Quelle: Der Brockhaus Computer und Informationstechnologie. Mannheim: F.A. Brockhaus 2005. © Bibliographisches Institut F. A. Brockhaus AG, Mannheim

Datenbank-Grundlagen / 27

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Betrachtungsebenen für Information

Repräsentation: Zur Verarbeitung von Information muss diese dargestellt werden. Die verarbeitungsgerechte Darstellung von Information nennt man Daten.

Datenbank-Grundlagen / 29

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Betrachtungsebenen für Information Konzeptionelle / logische Darstellung von Information: Auf der konzeptionellen / logischen Ebene wird eine konkrete Aussage (Situation) verallgemeinert. Das schlägt sich in der Formulierung von Datenmodellen nieder. Aus einem Datenmodell wird eine Datenstruktur abgeleitet. Datenbank-Grundlagen / 30

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Ein Datenmodell ist eine strukturierte Darstellung von Informationen aus einem wohldefinierten, abgegrenzten Informationsbereich. Abteilung

Projekt bearbeitet

Datenmodellierung ist eine formale Methode, ein Datenmodell zu generieren.

Datenbank-Grundlagen / 31

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Spezifische Darstellungen eines Informationsbereichs ergeben eine Menge von Daten einer bestimmten Datenstruktur. Eine Datenstruktur ist eine Implementierung / Realisierung eines Datenmodells (z.B. in Form einer Tabelle). Datenbank-Grundlagen / 32

Abt.

Projekt

Abt. 1

Projekt 1

Abt. 1

Projekt 2

Abt. 2

Projekt 2

Abt. 2

Projekt 1 ©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Betrachtungsebenen für Information Physische Darstellung von Information: Auf dieser Ebene erfolgt die Repräsentation der Information in Speicherstrukturen (z.B. Datensatz in einer Datei). Von Interesse ist die konkrete, physische Datenorganisation: •gekettete / dichte Speicherung •indizierte Speicherung •Speicherung mit Datenverdichtung •.... Die Information präsentiert sich in der Sicht des Entwicklers (Systemprogrammierers). Datenbank-Grundlagen / 33

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Betrachtungsebenen für Information Physikalische Darstellung von Information: Auf dieser Ebene werden technische Eigenschaften beschrieben, die zur Speicherung der Information (Dateien) von Bedeutung sind: •Verwendung von Plattenspeicher •Speicherung auf Magnetband •.... Eigenschaften und Besonderheiten des Speichermediums finden hier Beachtung.

Datenbank-Grundlagen / 34

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Konstruktionsprinzipien für DBS z Datenunabhängigkeit » Physikalische Datenunabhängigkeit » Logische Datenunabhängigkeit

Benutzerspezifische Datensicht z Strukturierung der Daten z Datenintegrität z Zeitliche Permanenz z

Datenbank-Grundlagen / 35

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Konstruktionsprinzipien für DBS z Datenunabhängigkeit Die Datenunabhängigkeit soll eine Trennung der Daten von ihrer Anwendung erreichen.

Datenbank-Grundlagen / 36

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Konstruktionsprinzipien für DBS z Es gibt zwei Aspekte: » Physikalische Datenunabhängigkeit Benutzer und Anwenderprogramme sind nicht von der physischen Datenorganisation abhängig. » Logische Datenunabhängigkeit Benutzer und Anwenderprogramme sind nicht von der logischen (konzeptionellen) Datenorganisation abhängig.

Datenbank-Grundlagen / 37

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Konstruktionsprinzipien für DBS z Benutzerspezifische Datensicht Der Benutzer sieht nach Form und Menge nur den für ihn relevanten Ausschnitt der Datenbank.

Datenbank-Grundlagen / 38

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Konstruktionsprinzipien für DBS z Strukturierung der Daten Ziel der Strukturierung ist es, einen überschaubaren inneren Aufbau des Datenbestands zu erreichen. Dieser ist charakterisiert durch: » die Vermeidung von ungeordneter Mehrfachspeicherung » die Möglichkeit zur Erweiterung, d.h. der Integration neuer Benutzer-/AnwenderBedürfnisse Datenbank-Grundlagen / 39

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Konstruktionsprinzipien für DBS z Datenintegrität Wesentliche Gesichtspunkte der Datenintegrität sind: » Datenkonsistenz (innerer Aufbau) » Datensicherung (Schutz vor Verlust) » Datenschutz (Schutz vor kriminellen Aktivitäten)

Datenbank-Grundlagen / 40

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Konstruktionsprinzipien für DBS z Zeitliche Permanenz Die Berücksichtigung dieses Aspekts soll die dauerhafte Nutzung der Daten gewährleisten: » technische Neuerungen » physikalische Lebensdauer

Datenbank-Grundlagen / 41

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Das ANSI-SPARC 3 Schema-Konzept Abkürzungen: •ANSI: American National Standards Institute •SPARC: System Planning and Requirements Committee

Datenbank-Grundlagen / 42

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Benutzerspez. Datensicht

Anwender-Ebene

externe Ebene

Anwendung

Anwendung

Anwendung

Externe Sicht Logische Datenunabhängigkeit Logische Ebene

Konzeptionelle / logische Sicht

Physikalische Datenunabhängigkeit

Interne Ebene

Interne Sicht / physische Sicht

Physikalsche Sicht

Datenbank-Grundlagen / 43

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur 3 Ebenen-Konzept Anwender-Ebene

Externe Ebene

Logische Ebene

Anwendung

Anwendung

Anwendung

Externe Sicht

Konzeptionelle / logische Sicht

Interne Sicht / physische Sicht Interne Ebene Physikalsche Sicht

Datenbank-Grundlagen / 44

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Das ANSI-SPARC 3 Schema-Konzept Zur Formalisierung der Beschreibung einer Sicht dient ein sogenanntes Schema. Ein Schema ist eine, in einer Datenbeschreibungssprache / Datendefinitionssprache (DDL - data definition language) abgefaßte Definition der in einer Datenbank und der jeweils betrachteten Ebene zugelassenen Datenstrukturen.

Datenbank-Grundlagen / 45

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Das ANSI-SPARC 3 Schema-Konzept Ebene (level)

Sicht (view)

externe Ebene (external level)

zusammengesetzt aus individuellen Benutzersichten (individual user view)

konzeptionelle / logische Ebene (conceptual level)

Integration aller individuellen Benutzersichten zu einer vereinheitlichten Gesamtsicht (community view)

interne Ebene (internal level)

Speichersicht (storage view)

Datenbank-Grundlagen / 46

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur

Datenbank-Grundlagen / 47

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Anwender

Anwender-Ebene Externe Ebene

Logische Ebene DBS

Interne Ebene

Datenbank-Grundlagen / 48

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur

Datenbank-Grundlagen / 50

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur Datenbankverwaltung Das Datenbankmanagementsystem (DBMS - data base management system) » stellt Systemroutinen für alle Datenbankverwaltungsfunktionen zur Verfügung » bildet damit die eigentliche (universelle) Benutzerschnittstelle des Datenbanksystems

Datenbank-Grundlagen / 51

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur z

Hilfsprogramme zur Datenbankverwaltung sind z.B.: » Backup-Routinen zum Erzeugen eines Datenbankabzugs (Import/Export) » Lade-Routinen zum Erzeugen einer lauffähigen Datenbank auf Basis von ausgelagerten Dateien (Loader) » Reorganisations-Routinen, um Daten in der Datenbank nach Performanceaspekten neu zu organisieren

Datenbank-Grundlagen / 52

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur z

Hilfsprogramme zur Datenbankverwaltung sind z.B.: » Statistik-Routinen zum Erzeugen von: – Tabellen-/Datei-Größestatistiken – Performancestatistiken – Zugriffsstatistiken

» Analyse-Routinen, um Statistiken zu analysieren

Datenbank-Grundlagen / 53

©Η.− G.Hopf / 03.10.2007

Datenbank-Architektur z

Vom DBMS benötigte Verwaltungsdaten werden ebenfalls in der Datenbank abgelegt. Die hierfür vorbereitete Struktur ist das Data Dictionary (DD, data dictionary, system catalog). Das Data Dictionary: » enthält alle Informationen über die interne Struktur des verwalteten Datenbestandes. » enthält die sog. Meta-Information über die Struktur der Datenbank.

Datenbank-Grundlagen / 54

©Η.− G.Hopf / 03.10.2007

Inhaltsverzeichnis Begriffserklärung z Datenbank-Architektur z Klassifikation von Datenbanksystemen z DBMS Marktübersicht z

Datenbank-Grundlagen / 55

©Η.− G.Hopf / 03.10.2007

Klassifikation von DBS Hierarchische Datenbank z Netzwerk - Datenbank z Relationale Datenbank z Objektorientierte Datenbank z Objektrelationale Datenbanken z

Datenbank-Grundlagen / 56

©Η.− G.Hopf / 03.10.2007

Inhaltsverzeichnis Begriffserklärung z Datenbank-Architektur z Klassifikation von Datenbanksystemen z DBMS Marktübersicht z

Datenbank-Grundlagen / 84

©Η.− G.Hopf / 03.10.2007

http://www.crn.de/showArticle.jhtml?articleID=184418079&queryText=steigern Datenbank-Grundlagen / 92

©Η.− G.Hopf / 03.10.2007

DBMS Marktübersicht 45 40 35

Oracle IBM Microsoft Informix Sybase andere

30 25 20 15 10 5 0 1998

1999

2000

2003

2004

1998-2000: aus Computer Zeitung, 29/2000 und 22/2001 (31.05.2001) 2003-2004: aus Computer Reseller News / IDC (7.06.04) Datenbank-Grundlagen / 94

©Η.− G.Hopf / 03.10.2007

DBMS Marktübersicht Weltweiter Umsatz mit Datenbanken z im Jahr 2000: 8.8 Milliarden Dollar z im Jahr 2003: 13.6 Milliarden Dollar z im Jahr 2008: 20.0 Milliarden Dollar z

Datenbank-Grundlagen / 95

©Η.− G.Hopf / 03.10.2007

DBMS market overview z

Kostenlose SQL-Engines » Firebird 1.5 » MSDE 2000 » MySQL/MyISAM » MySQL/InnoDB » PostgreSQL 8 » OracleXE

from ct, 20/2002 (.10.2005) Datenbank-Grundlagen / 97

©Η.− G.Hopf / 03.10.2007

Zusammenfassung Datenbanken sind das Fundament jedes betrieblichen Informationssystems. In den 80er Jahren haben sich relationale Systeme durchgesetzt und damit ein Konzept, das eine theoretische Grundlage hat in der Mathematik der Relationen, ein positiver Umstand, den Praktiker (an)erkennen sollten. ... Viel mehr betrübt mich, daß die Informatik viel zu sehr im Arbeitsspeicher denkt, von Datenbankleuten natürlich abgesehen. ... Gravierender ist aber, dass viele Bücher über SoftwareEngineering Datenbanken gar nicht oder unzureichend behandeln. (E. Denert) Datenbank-Grundlagen / 99

©Η.− G.Hopf / 03.10.2007

Literatur » A.Kemper, A. Eickler: Datenbanksysteme – Eine Einführung; 6. Auflage, Oldenbourg, 2006 » J. Gennick: SQL – kurz und gut; O‘Reilly, 2006 » C.J. Date: An Introduction to Database Systems, 8th edition; Addison-Wesley, 2004 » W.M. Kähler: Relationales und objektrelationales SQL, Vieweg, 1999 » A.Heuer, G. Saake: Datenbanken – Konzepte und Sprachen; Thomson Publishing, 1995 » G. Vossen: Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme; 2. Auflage, Addison-Wesley, 1994 Datenbank-Grundlagen / 100

©Η.− G.Hopf / 03.10.2007