Ausführliches zum Kapitel 1: Einführung



Ähnliche Dokumente
Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Datenbanken. Prof. Dr. Bernhard Schiefer.

OPERATIONEN AUF EINER DATENBANK

Übersicht über Datenbanken

Allgemeines zu Datenbanken

Grundlagen von Datenbanken

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

Definition Informationssystem

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

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

Zeichen bei Zahlen entschlüsseln

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Einführung. Informationssystem als Abbild der realen Welt

Formular»Fragenkatalog BIM-Server«

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

Themen. M. Duffner: Datenbanksysteme

Die Grundbegriffe Die Daten Die Informationen

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

SharePoint Demonstration

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96

Redundanz: Dieselben Informationen werden doppelt gespeichert.

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

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

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

SQL - Übungen Bearbeitung der Datenbank Personal (1)

7. Übung - Datenbanken

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld "Sharing". Auf dem Bildschirm sollte folgendes Fenster erscheinen:

Updatehinweise für die Version forma 5.5.5

Innovator 11 excellence. DDL importieren. Data-Definition-Language-Dateien in Datenbankschema importieren. HowTo.

Datenbanken I - Übung 1

Avira Server Security Produktupdates. Best Practice

So funktioniert die NetWorker 7.5 Eigenschaft zum Sichern umbenannter Verzeichnisse ( Backup renamed Directories )

bizsoft Rechner (Server) Wechsel

Bitte geben Sie hier den Benutzer cubusadmin und das gleichnamige Passwort ein.

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar ZID Dezentrale Systeme

Berechtigungsgruppen TimeSafe Leistungserfassung

Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Übung - Datensicherung und Wiederherstellung in Windows 7

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee Berlin Tel.:+49(0) Fax.:+49(0)

Backup der Progress Datenbank

Anti-Botnet-Beratungszentrum. Windows XP in fünf Schritten absichern

Anleitung zur Einrichtung einer ODBC Verbindung zu den Übungsdatenbanken

Design Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi

Professionelle Seminare im Bereich MS-Office

Benutzerkonto unter Windows 2000

Universalimport in luxdata

1 Voraussetzungen für Einsatz des FRITZ! LAN Assistenten

Carl-Engler-Schule Karlsruhe Datenbank 1 (5)

Betriebshandbuch. MyInTouch Import Tool

Netzwerkeinstellungen unter Mac OS X

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten

Umgang mit der Software ebuddy Ändern von IP Adresse, Firmware und erstellen von Backups von ewon Geräten.

Übung: Verwendung von Java-Threads

ISA Server 2004 Protokollierung - Von Marc Grote. Die Informationen in diesem Artikel beziehen sich auf:

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

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

Data Mining-Modelle und -Algorithmen

White Paper. Konfiguration und Verwendung des Auditlogs Winter Release

OP-LOG

Relationale Datenbanken Datenbankgrundlagen

pro4controlling - Whitepaper [DEU] Whitepaper zur CfMD-Lösung pro4controlling Seite 1 von 9

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

Anleitung über den Umgang mit Schildern

Kapitel 10: Datenbankzugriff & Pufferung 2

Installationsanleitung WibuKey Treiber

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

KURZANLEITUNG CLOUD OBJECT STORAGE

Einführung. Kapitel 1 2 / 508

Online-Prüfungs-ABC. ABC Vertriebsberatung GmbH Bahnhofstraße Neckargemünd

Datensicherung EBV für Mehrplatz Installationen

Software-Engineering und Datenbanken

Nach der Installation der Multi-User-Version von CUBUS können Sie mit dem Administrator- Tool Benutzergruppen und Benutzer einrichten.

Handbuch. timecard Connector Version: REINER SCT Kartengeräte GmbH & Co. KG Goethestr Furtwangen

SJ OFFICE - Update 3.0

3 Windows als Storage-Zentrale

1 Mathematische Grundlagen

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

Fragen zur GridVis MSSQL-Server

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Lizenzen auschecken. Was ist zu tun?

Arbeiten mit einem lokalen PostgreSQL-Server

Wiederherstellen der Beispieldatenbanken zum Buch Microsoft Project 2010

Informatik 12 Datenbanken SQL-Einführung

TREND SEARCH VISUALISIERUNG. von Ricardo Gantschew btk Berlin Dozent / Till Nagel

START - SYSTEMSTEUERUNG - SYSTEM - REMOTE

Datensicherung. Beschreibung der Datensicherung

MailUtilities: Remote Deployment - Einführung

GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT

Webalizer HOWTO. Stand:

Transkript:

Inhalt: Was ist eine Datenbank? Was ist ein Datenbankmanagementsystem (DBMS)?[KBL] Warum nimmt man heute eine Datenbank und kein Dateisystem? [CB] Was ist eine Transaktion?[KBL] Was ist ein Transaktionsausführungssysteme (TPS)? [KBL] Was sind Funtionen eines DBMS? [CB] Welche Eigenschaften hat ein DBMS? [KBL] Was sind die Komponenten eines DBMS? [CB] Was sind Views? [CB] Welche Benutzergruppen kann es während der Entwicklung/im Einsatz geben? [KBL] Was sind die 3 Abstraktionsebenen einer Datenbank? [CB] Was bedeutet Datenunabhängigkeit? [CB] Welche Datenbank-Sprachen gibt es? [CB] Was bedeutet Datenmodell? Welche Mehrbenutzer-Architekturen für DBMS gibt es? [CB] Was sind Metadaten bei einer Datenbank? Was ist eine Datenbank? [CB] Sammlung Daten, die logisch zueinander in Beziehung stehen, und eine Beschreibung dieser Daten, die so geschrieben wurde, dass die Anforderung einer Organisation erfüllt werden [CB] self-describing collection of integrated data (Daten und Meta-Daten, Unabhängigkeit von Programmen und Daten - Datenabstraktion) Sammlung von Daten, die zu einer bestimmten Umgebung (Firma, Gesellschaft, etc.) gehören Unternehmen, die die DB betreiben, sind oft von dieser abhängig (hält den aktuellsten Zustand eines Unternehmen), sie sehen die DB meistens als ihr wichtigstes Kapital (Bsp: Prof-DB des Präsidiums) zentralisiert auf einem Rechner oder verteilt auf mehreren Rechnern [CB] Datenbank-: komplette Beschreibung der Datenbank-Struktur, als Metadaten [CB] Datenbank-Zustand: DB-Instanz, momentane Daten in der Datenbank Was ist ein Datenbankmanagementsystem (DBMS)?[KBL] Zugriffe auf eine Datenbank werden mittels eines DBMS geregelt stellt eine High-Level Sprache dar, mit dem ein Anwendungsprogrammierer die Datenbankzugriffe beschreibt Programmierer braucht kein Wissen über die Art der Speicherung der DB, Algorithmen zur Suche von Daten oder weiterer Details über die DB (außer Tabellen) Datenbankzugiffe: Abfragen (Anfrage nach Daten) oder Updates (Anfrage nach Einfügen, Löschen oder Ändern von existierenden Daten) SQL Structured Query Language macht dies möglich (deklarative Sprache) DBMS interpretiert jedes SQL-Statement und führt die Aktion auf der DB aus in einem Dateisystem muss der Benutzer die detaillierte Dateistruktur kennen und Algorithmen zur Suche anwenden Warum nimmt man heute eine Datenbank und kein Dateisystem? [CB] Dateisystem: Sammlung von Anwendungsprogrammen (z.b. Berichte herstellen), jedes Programm definiert und verwaltet seine eigenen Daten Dateisystem funktioniert bei kleiner Anzahl an Daten, bricht bei größerer Anzahl und komplexeren Aufgaben aber zusammen: Probleme: Wissen kann nicht aus Dateien extrahiert werden Trennung und Isolation von Daten (Informationen auf verschiedene Dateien aufgeteilt, Wissen kann nicht einfach verknüpft werden) CB: Connolly, Begg Database Systems, KBL: Kiefer, Bernstein, Lewis: Database Systems 1

Duplikate von Daten (der dezentrale Ansatz produziert viele Duplikate, Zeit- und Platzverschwendung, Datenkonsistenz geht veroren) Datenabhängigkeit (Änderungen an der Struktur der Daten ist kompliziert und nur unter großem Aufwand machbar) Nicht-kompatible Dateiformate Feste Abfragen keine Sicherheit oder Integrität keine Möglichkeit der Recovery bei Fehlern kein Mehrbenutzerbetrieb möglich Was ist eine Transaktion?[KBL] zusammengehörende Sequenz von Datenbankzugriffen darf die Beziehung zwischen Datenbank und realer Welt nicht verfälschen Mechanismus, so dass alle Änderungen in einer Transaktion gemacht werden, oder gar keine Was ist ein Transaktionsausführungssysteme (TPS)? [KBL] beinhaltet mehrere DB, Programme zur Verwaltung von Transaktionen und Transaktionen selber TP Monitor verwaltet Transaktionen, die über DBMS auf DB zugreifen möchten Was sind Funtionen eines DBMS? [CB] Codd hat 1982 acht Funktionen aufgelistet, die ein DBMS erfüllen sollte + 2 weitere 1. Datenspeicherung, Datensuche, Datenupdate 2. Metadaten, auf die die Benutzer zugreifen können 3. Unterstützung von Transaktionen 4. Service für Kontrolle der Nebenläufigkeit 5. Service für Wiederherstellung eines konsistenten Zustandes nach Fehler 6. Service für Autorisierung 7. Möglichkeit der Integration einer Kommunikationssoftware 8. Service für Integrität 9. Service für Datenunabhängigkeit 10. Unterstützen mehrerer Dienstprogramme (Import, Export, Monitoring, Analyseprogramme, Indexierung, Speicherbereinigung) Welche Eigenschaften hat ein DBMS? [KBL] Hohe Verfügbarkeit: wenn DB-Umgebung in Betrieb dann muss auch DB in Betrieb sein (manchmal auch 24 Stunden, siehe Web-Buchungssysteme) weil DB wichtigstes Kapital ist, kann der Ausfall finanziellen Schaden bedeuten Hohe Ausfallsicherheit: DBMS muss ganz genau die Ergebnisse aller Transaktionen enthalten Fehler (falsche Daten, doppelte Daten etc.) dürfen nicht in der DB gespeichert werden Hoher Durchsatz: System muss in der Lage sein, Anfragen sehr vieler Benutzer zu beantworten (Aktionen/Sekunde hoch) System muss also nebenläufig arbeiten können Geringe Antwortzeiten: Benutzer warten auf Antworten, deshalb ist eine schnelle Antwort nötig Timeouts bestimmter Systeme müssen beachtet werden, sonst falsche Ergebnisse Lange Lebensdauer: diese komplexen Systeme können meist nur unter großem Aufwand ersetzt werden CB: Connolly, Begg Database Systems, KBL: Kiefer, Bernstein, Lewis: Database Systems 2

sie sollten leicht durch neue Module erweitert und verbessert werden können ohne den grundlegenden Aufbau zu verändern Sicherheit: DB-Zugriffe von vielen Benutzern, dabei müssen sensitive Daten unbedingt geschützt werden Authentifizierung nötig, nur bestimmte Transaktionen dürfen ausgeführt werden, Daten in der DB dürfen nicht beschädigt oder gelesen werden von einem Angreifer, transferierte Daten dürfen nicht abgehört werden Vorteile Kontrolle der Datenredundanz Datenkonsistenz mehr Informationen aus derselben Anzahl von Daten (durch Beziehungen) gemeinsame Benutzung von Daten bessere Datenintegrität bessere Sicherheit Durchsetzung von Standards Kostendegression Ausgleich von widersprüchlichen Anforderungen (mehrerer Benutzer) bessere Datenzugänglichkeit und Ansprechbarkeit (durch Abfragen) höhere Produktivität bessere Möglichkeiten für Wartungsarbeiten durch Datenunabhängigkeit höhere Nebenläufigkeit bessere Backup- und Wiederherstellungsfunktionen Nachteile Komplexität Größe Kosten zusätzliche Hardware-Kosten Umstellungskosten (neues DBMS) Performanz größere Auswirkungen eines Ausfalls/einer Fehlfunktion Was sind die Komponenten eines DBMS? [CB] Programmierer Benutzer DBA Anwendungsprogramme Abfragen Datenbank DML Präprozessor Abfragen Prozessor DDL Compiler Programm Objektcode Autorisierungs- Kontrolle Metadaten Integritätsüberprüfer Kommando Prozessor Abfrage Optimierer Transaktions- Ablaufplaner DBMS Datenbank Puffer Recovery Dateimanager Zugriffsmethoden Systempuffer DB Abbildung 1: Komponenten eines DBMS CB: Connolly, Begg Database Systems, KBL: Kiefer, Bernstein, Lewis: Database Systems 3

Was sind Views? [CB] Untermenge der Datenbank (Benutzer müssen eventuell nicht die kompletten Daten und komplette komplexe Funktionsvielfalt eines DBMS sehen/nutzen) unterstützt Sicherheit, variables Aussehen der Datenbank, präsentiert einen konsistenten, unveränderlichen Zustand der Datenbank-Struktur) Welche Benutzergruppen kann es während der Entwicklung/im Einsatz geben? [KBL] Systemanalytiker: arbeitet mit dem Kunden des Unternehmens etc., um formale Anforderungen und Spezifikationen zu entwickeln muss Eigenschaften des Unternehmens und Datenbanktechniken kennen Ergebnisse werden weiter verfeinert im Design Datenbank-Designer: spezifiziert anhand der Systemanalyse die Struktur einer Datenbank DB enthält dann den momentanen Zustand der realen Welt Anwendungsprogrammierer: implementiert die (grafische) Benutzerschnittstelle Transaktionen müssen korrekt ausgeführt werden Regeln aus Systemanalyse und Design müssen integriert werden Projektmanager: verantwortlich für den erfolgreichen Abschluss des Entwicklungsprojekts verwaltet Zeitpläne, Budgets, Aufgabenzuteilung, Projektvoranschreiten Benutzer: löst die Anwendung von Transaktionen aus (mittels Benutzerschnittstelle) Datenbank-Administrator: verantwortlich für den Support der Datenbank während des Einsatzes Aufgaben: Speicherplatz für DB reservieren, Überwachen und Optimieren der DB Performanz und DB Sicherheit nimmt auch Änderungen an der Struktur vor, wenn bzgl. Unternehmen erforderlich System-Administrator: erhält das System als Ganzes während des Einsatzes aufrecht Aufgaben: Überprüfung der System Architektur, Konfigurationsverwaltung, Systemstatus Was sind die 3 Abstraktionsebenen einer Datenbank? [CB] ANSI-SPARC (American National Standards Institute Standard Planning and Requirements Committee) erkannt 1975 die notwendigen 3 Ebenen einer Datenbank externe, konzeptuelle, interne Ebene: 3 verschiedene Ebenen, auf denen Datenelemente beschrieben werden können Ziel: Trennung der Benutzer-Sichten von der physischen Speicherung der Datenbank, Gründe: o alle Benutzer sollten auf dieselben Daten zugreifen können und seine Sicht auf DB verändern, ohne andere Benutzer zu beeinflussen o Benutzer sollten nicht direkt mit physischen Speicherungsdetails (Indexierung, Hashing) umgehen o DBA (Datenbank Administrator) sollte Speicherungsdetails verändern können, ohne Benutzer-Sichten zu verändern o interne Struktur sollte bei Änderungen an der physischen Struktur unberührt bleiben o DBA sollte konzeptuelle Struktur verändern, ohne Benutzer zu beeinflussen Externe Ebene: Sicht des Benutzers auf die Datenbank und beschreibt den Teil der Datenbank, der für den Benutzer relevant ist Konzeptuelle Ebene: gemeinsame Sicht auf die Datenbank und beschreibt, welche Daten gespeichert werden und deren Beziehungen untereinander (alle Entitäten, Attribute, Beziehungen, Bedingungen, Sicherheits-, Integritäts- und semantische Informationen CB: Connolly, Begg Database Systems, KBL: Kiefer, Bernstein, Lewis: Database Systems 4

Benutzer 1 Benutzer 2 Benutzer n Sicht 1 Sicht 2 Sicht n externe Ebene logisches konzeptuelle Ebene physisches interne Ebene DB physische Datenorganisation Abbildung 2: Abstraktionsebenen Interne Ebene: physikalische Repräsentation der Datenbank und beschreibt, wie Daten abgespeichert werden sollen Was bedeutet Datenunabhängigkeit? [CB] Ziel der 3-Schichten-Architektur: höhere Schichten bleiben unbeeinflusst bei Änderungen der unteren Schichten 2 Arten: logische Datenunabhängigkeit physische Datenunabhängigkeit Änderungen am logischen Änderungen am physischen (Hinzufügen/Entfernen von Entitäten (Benutzen anderer Dateiorganisationen, etc.) soll die externen Speicherorganisationen etc) soll das ta/anwendungsprogramme logische unberührt lassen unberührt lassen (Benutzer, für die (Benutzer sollen maximal eine die Änderungen vorgenommen Performanz-Veränderung wahrnehmen) wurden, sollen sie als einige wahr nehmen) externes externes externes logisches Logische Datenunabhängigkeit physische Datenunabhängigkeit physisches Abbildung 3: Arten der Datenunabhängigkeit Welche Datenbank-Sprachen gibt es? [CB] DDL: Data Definition Language erlaubt dem Benutzer oder DBA Entitäten, Attribute, Beziehungen, Integritäts- und Sicherheitsbedingungen zu beschreiben und zu benennen DML: Data Manipulation Language liefert Operationen, um Daten zu verändern (Einfügen, Modifizieren, Löschen, Finden) Prozedurale DML Nicht-Prozedurale DML gibt an, welche Daten gesucht gibt an, welche Daten gesucht werden und wie diese gefunden werden (DBMS übersetzt Suchwerden sollen Anforderung in eine Prozedur) eingebettet in High-Level z.b. SQL Sprachen CB: Connolly, Begg Database Systems, KBL: Kiefer, Bernstein, Lewis: Database Systems 5

4GL: Fourth-Generation-Language ist nicht-prozedural, soll Produktivität um den Faktor 10 steigern, umfäßt Abfragesprache, Berichtsgenerator, Tabellenkalkulation, Anwendungsgenerator, High-Level Sprache Was bedeutet Datenmodell? Datenmodell ist eine integrierte Sammlung von Konzepten, um Daten, Beziehungen unter Daten und Bedingungen zu verändern und zu beschreiben, und repräsentiert die Miniwelt Objektbasierte Datenmodelle besitzen Entitäten, Attribute und Beziehungen (z.b. Entity-Relationship Modell) Datensatzbasierte Datenmodelle besitzt fest-formatierte Datensätze unterschiedlichen Datentyps, jeder Datensatz definiert eine Anzahl von Feldern fester Länge, 3 Arten: o Relationales Datenmodell: basiert auf mathematischen Beziehungen, besitzt Tabellen für Entitäten und Beziehungen, die eine bestimmte Anzahl von Spalten haben mit einem eindeutigen Namen (Welche Daten sollen gefunden werden?) o Netzwerk Datenmodell: Daten werden als Datensätze repräsentiert, Beziehungen als Mengen, Datensätze werden als Graph (Daten = Knoten, Beziehungen = Kanten) strukturiert (z.b. Computer Associates IDMS/R) (Wie sollen Daten gefunden werden?) o Hierarchisches Datenmodell: eingeschränktes Netzwerk Datenmodell, Knoten (Datensätze) dürfen nur eine Kante (Beziehung) zu einem Elternknoten haben, erzeugt eine Baumstruktur (z.b. IBM IMS) (Wie sollen Daten gefunden werden?) physische Datenmodelle beschreiben, wie Daten auf dem Computer gespeichert werden sollen Konzeptuelle Modelle ist eine komplette Repräsentation der benötigten Daten (= logisches Modell) Welche Mehrbenutzer-Architekturen für DBMS gibt es? [CB] Fernverarbeitung (Teleprocessing): ein Computer mit einer CPU nimmt Anfragen von mehreren dummen Terminals entgegen, tauscht mit ihnen Nachrichten aus, hoher Aufwand für den einen Computer File-Server: über ein Netzwerk sind Workstations verbunden mit einem File- Server, verteilte Anwendungen und DBMS auf jeder Workstation, verursacht hohen Netzwerk-Traffic, Nebenläufigkeit, Recovery und Integrität sehr komplex, weil mehrere DBMS s auf dieselben Dateien zugreifen Client-Server: Client Prozess, der etwas anfordert und ein Server, der dieses etwas anbietet, befinden sich beide in einem Netzwerk, übersetzt Anforderung des Benutzers in ein SQL-Statement und schickt es an den Server, empfängt dessen Antwort und formatiert sie für den Benutzer, der Server-Prozess umfasst Autorisierung, garantiert Integrität, wartet die Metadaten, führt Abfragen durch und Updates, gewährt Kontrolle über Nebenläufigkeit und Recovery (höhere Performanz, geringe Hardwarekosten, geringe Kommunikationskosten, höhere Konsistenz Was sind Metadaten bei einer Datenbank? Verzeichnis für Daten, die die Daten in der Datenbank beschreiben Autorisierung benötigt aus den Metadaten: Benutzernamen, die DBMS benutzen dürfen, Namen der Dateneinheiten und Namen der Daten, auf die zugegriffen werden darf weitere Inhalte: Namen der Beziehungen, Integritätsbedingungen, externe, konzeptuelle und interne ta, Benutzerstatistiken etc. CB: Connolly, Begg Database Systems, KBL: Kiefer, Bernstein, Lewis: Database Systems 6