Datenbanken
  1. 368 Seiten
  2. German
  3. ePUB (handyfreundlich)
  4. Über iOS und Android verfügbar
eBook - ePub

Über dieses Buch

Fundierte Einführung in relationale Datenbanken und die Anfragesprache SQL Datenbanken für die Berufspraxis verstehen, anwenden und entwickeln Mit zwei durchgängigen Beispielen und zahlreichen Übungen Datenbanken haben sich zu einem unverzichtbaren Bestandteil jeglicher Informationssysteme entwickelt, um größere Mengen strukturierter Daten verwalten, wiederauffinden und analysieren zu können. Die Autoren vermitteln fundiert und kompakt die zum Verständnis und auch zur Entwicklung solcher Systeme notwendigen Kenntnisse aus den Bereichen Datenbankentwurf, Datenmodellierung, Datenänderungen und Datenanalysen und stellen die relationale Datenbanksprache SQL ausführlich vor. Alle Konzepte und Sprachelemente erläutern die Autoren anhand von zwei durchgängigen Beispielen. Des Weiteren besprechen die Autoren Themen wie Nutzersichten, Datenschutz, Integritätssicherung, Tuning von Datenbankanwendungen sowie statistische Datenanalysen (Data Warehousing, Data Mining). Sie erläutern auch neuere Entwicklungen wie NoSQL-Datenbanksysteme, spaltenorientierte Speicherungsformen und die Analyse von Big Data. Das Buch richtet sich vor allem an Schüler und Studenten außerhalb des Fachbereichs Informatik, die schnell und dennoch fundiert die Grundlagen zur Entwicklung und zum Einsatz von Datenbanken lernen wollen. Übungsaufgaben am Ende jedes Kapitels machen das Buch ideal für Studium und Selbststudium. Aus dem Inhalt: Was sind Datenbanken? Relationale Datenbanken: Daten als Tabellen Das Entity-Relationship-Modell Datenbankentwurf Normalisierung für eine redundanzfreie Datenbank Datendefinition und Updates in SQL Anfragen in SQL Sichten und Datenschutz Integrität und Trigger Statistische Datenanalysen (Data Warehousing, Data Mining) Arbeitsweise eines DBMS und Tuning OLTP- und OLAP-Systeme Row und Column Stores, NoSQL und NewSQL Ausblick inklusive Verarbeitung von Big Data Zwei durchgängige Beispiele mit Datenbankentwurf und relationaler Repräsentation

375,005 Studierende vertrauen auf uns

Zugang zu über 1,5 Millionen Titeln zu einem fairen monatlichen Preis.

Mit unseren Lerntools kannst du noch effizienter lernen.

Information

Verlag
MITP
Jahr
2020
ISBN drucken
9783958457829
eBook-ISBN:
9783958457843

1

Was sind Datenbanken?

Der Leser dieses Buches hat sicher bereits eine Vorstellung davon, was man unter Datenbanken zu verstehen hat. Allerdings wird dieser Begriff im Alltagsdeutsch sehr großzügig benutzt, sodass wir doch mit einer etwas genaueren Charakterisierung dieses Begriffes beginnen wollen.

1.1 Warum Datenbanken?

Daten ist die Pluralform von Datum, lateinisch für das Geschriebene, das Gegebene, Wert, Tatsache, Information. Eine Datenbank ist nun eine Bank für Daten, also im übertragenen Sinne ein sicherer Aufbewahrungsort für (wertvolle) Informationen. Diese übertragene Bedeutung einer Art Geldinstitut für Daten gibt uns bereits einige Charakteristika von Datenbanken:
Eine Datenbank hat die (langfristige) Aufbewahrung von Daten als Aufgabe.
Die Sicherheit vor Verlusten ist eine Hauptmotivation, etwas „auf die Bank zu bringen“.
Eine Bank bietet Dienstleistungen für mehrere Kunden an, um effizient arbeiten zu können.
Eine Bank kostet Gebühren, auch eine Datenbank verursacht Kosten, also bringt man natürlich nur Daten auf die Bank, für die sich das tatsächlich lohnt. In einer Datenbank bewahren wir daher operative, sozusagen für einen Betrieb „lebenswichtige“ Daten, sehr große Datenbestände, langfristig vorzuhaltende und von vielen gleichzeitig zu nutzende Daten auf.
Betrachten wir als typisches Beispiel die Daten einer Hotelkette. In einer Datenbank aus obigen Gründen zu speichernde Informationen sind hier Reservierungen von Kunden und Preise sowie Verfügbarkeiten von Zimmern, sowie alle Angaben für die Rechnungslegung. Hingegen würden die Geburtstage und Hochzeitstage der Geschäftsführung nicht unbedingt in einer Datenbank aufzubewahren sein.
Für ein Hotel ist es wichtig, die Rechnungsdaten längere Zeit korrekt zu speichern (Regressansprüche von Gästen, Jahresumsatz), sowie verschiedene Arten von Software auf diese Daten zugreifen zu lassen (Rechnungserstellung, Umsatzberechnung, Vorratshaltung der Hotelküche, Datenaustausch zu Buchungsportalen, Erstellung von Gästeprofilen etc.).
Eine Datenbank hat nun die Aufgabe, die Daten in strukturierter Form zur Verwendung durch mehr als ein Software-System zu speichern. Die obigen Beispiele zeigen unterschiedlichen Zugriffsbedarf: In einem Fall werden die Daten eines Gastes analysiert, im Fall der Vorratshaltung die Nachbestellung von Lebensmitteln ausgelöst. Es ist daher sinnvoll, die Daten in einem Format zu speichern, das für viele Zugriffsarten offen ist. Bei Datenbanken ist insbesondere die Speicherung in Tabellenform in SQL-Datenbanken verbreitet.
Die Abbildung von Datenbeständen in eine Tabellenform wird uns in diesem Buch intensiv beschäftigen. Die oben genannten Daten liegen durchaus teilweise bereits in Tabellenform vor. Auf einer Rechnung werden aber auch verschiedene Informationen gemischt, die man in einer Datenbank trennen sollte. Auch macht es Sinn, bestimmte Daten (etwa die Adresse des Gastes oder die Informationen zum Zimmertyp) nur einmal abzuspeichern, um Tippfehler bei der erneuten Eingabe von vornherein zu verhindern. Für unser Beispiel einer Hotelrechnung bedeutet dies, dass wir mehrere Tabellen zur Speicherung nutzen sollten:
Eine Gästetabelle speichert relevante Informationen des Gastes (Namen, Adresse etc.).
Analog gibt es Tabellen mit Informationen zu Zimmertypen, Zimmern und – im Falle einer Hotelkette – zu den einzelnen Hotels.
Weitere Tabellen können Angaben zu reservierten sowie belegten (und damit in Rechnung zu stellenden) Zimmern verwalten.
Eine weitere Tabelle enthält die Daten einzelner Rechnungen.
Abbildung 1.1 zeigt die Daten des Rechnungsausschnitts in einer derartigen Tabellenform.
Die Einträge in den verschiedenen Tabellen werden über die identifizierenden Nummern miteinander verknüpft. Die Speicherung in Tabellen erscheint bei den ersten Einträgen nicht besonders sinnvoll, da es sich ja jeweils nur um eine einzelne Zeile handelt – wir dürfen aber nicht vergessen, dass wir in diesen Tabellen die Daten aller Gäste und aller Rechnungen über mehrere Jahrzehnte speichern wollen.
Datenbanksysteme sind nun Software-Systeme, die derartig strukturierte Datenbestände verwalten. Die folgenden Abschnitte dieses Kapitels sollen diese Systeme, die Anforderungen und deren Eigenschaften genauer charakterisieren.
image
Abbildung 1.1: Rechnungsdaten in Tabellenform

1.2 Datenbanksysteme

Die Rolle der Datenbanksysteme ist eine sehr elementare: Sie sollen andere Softwaresysteme wie Buchhaltungssysteme, Rechnungslegungssysteme, Zimmerverwaltungssysteme, Schnittstellen zu Buchungsportalen und weitere Anwendungssoftware mit standardisierten Informationen unterstützen.

Das Problem der Datenredundanz

Ohne den Einsatz von Datenbanksystemen tritt dabei das Problem der Datenredundanz auf. Die Anwendungssoftware verwaltet in diesem Szenario jeweils ihre eigenen Daten in ihren eigenen Dateien, jeweils in eigenen speziellen Formaten. Ein typisches Szenario in unseren Hotels gibt die folgende Auflistung wieder:
Die Buchhaltung speichert Gäste-, Adressinformationen sowie Reservierungen und Belegungen.
In der Vorratshaltung der Küche werden Reservierungs-und Belegungszahlen benötigt.
Das Marketing braucht die Zahlen der Vorreservierungen, außerdem zur Direktwerbung die Gäste-und Adressinformationen und die Gästeprofile.
In diesem Szenario sind die Daten redundant, also mehrfach gespeichert. Etwa werden die Gästeadressen und die Reservierungen/Belegungen von mehreren Anwendungen in jeweils eigenen Dateien verwaltet. Die entstehenden Probleme sind Verschwendung von Speicherplatz und „Vergessen“ von lokalen Änderungen, die typisch für das Fehlen einer zentralen, „genormten“ Datenhaltung sind. Ein Ziel der Entwicklung von Datenbanksystemen ist die Beseitigung der Datenredundanz. Die Situation wird in Abbildung 1.2 verdeutlicht.
image
Abbildung 1.2: Zugriff auf Dateien ohne spezielle Verwaltung
Auch in der Anwendungserstellung führt der fehlende Einsatz einer zentralen Datenhaltungskomponente zu erheblichen Defiziten. Die Anwendungsprogrammierer oder auch Endanwender können Anwendungen nicht programmieren bzw. benutzen, ohne
die interne Darstellung der Daten sowie
Speichermedien oder Rechner (bei verteilten Systemen)
zu kennen. Dieses Problem wird als fehlende Datenunabhängigkeit bezeichnet und in Abschnitt 1.5 noch intensiver diskutiert. Auch ist die Sicherstellung der Zugriffskontrolle und der Datensicherheit ohne zentrale Datenhaltung nicht gewährleistet.

Vermeidung der Datenredundanz durch Datenbanksysteme

Die obigen Probleme können mit der Datenbanktechnologie gelöst werden. Wir sprechen dann im Gegensatz zur Datenredundanz von einer Datenintegration. Das Prinzip der Datenintegration basiert auf folgenden Überlegungen:
Die gesamte Anwendungssoftware arbeitet auf denselben Daten, die in einer zentralen Datenhaltungskomponente verwaltet werden. Der Gesamtbestand der Daten wird nun als Datenbank bezeichnet.
image
Abbildung 1.3: Datenbankmanagementsysteme
Diese Architekturvorstellung wird in Abbildung 1.3 grafisch verdeutlicht. Eine derartige Datenbank muss natürlich äußerst sorgfältig entworfen und in einer geeigneten Datendefinitionssprache beschrieben werden. Auch andere Probleme im Umgang mit großen Datenbeständen, etwa Fragestellungen der Effizienz, Parallelität, Zugriffskontrolle und Datensicherheit, können mit heutigen kommerziellen Datenbankmanagementsystemen (DBMS) zufriedenstellend gelöst werden. Diese Systeme zeichnen sich durch folgende Eigenschaften aus:
Datenbanksysteme können große Datenmengen effizient verwalten. Sie bieten benutzergerechte Anfragesprachen an, die eine komfortable Anfrageformulierung ohne Rücksichtnahme auf die interne Realisierung der Datenspeicherung ermöglichen. Eine interne Optimierung ermöglicht trotzdem einen effizienten Zugriff auf die Datenbestände.
Viele Benutzer können parallel auf Datenbanken arbeiten. Das Transaktionskonzept verhindert hier unerwünschte Nebeneffekte beim Zugriff auf gemeinsam genutzte Daten.
Die Datenunabhängigkeit wird durch ein Drei-Ebenen-Konzept gewährleistet, das eine externe Ebene der Anwendungssicht, eine konzeptuelle Ebene der logischen Gesamtsicht auf den Datenbestand und eine interne...

Inhaltsverzeichnis

  1. Umschlag
  2. Titel
  3. Impressum
  4. Inhaltsverzeichnis
  5. Vorwort
  6. 1 Was sind Datenbanken?
  7. 2 Relationale Datenbanken – Daten als Tabellen
  8. 3 Das Entity-Relationship- Modell
  9. 4 Datenbankentwurf
  10. 5 Normalisierung für eine redundanzfreie Datenbank
  11. 6 Datendefinition und Updates in SQL
  12. 7 Anfragen in SQL
  13. 8 Sichten und Datenschutz
  14. 9 Integrität und Trigger
  15. 10 Arbeitsweise eines DBMS und Tuning
  16. 11 OLTP- und OLAP-Systeme
  17. 12 Row und Column Stores, NoSQL und NewSQL
  18. 13 Ausblick
  19. A Hotel-Beispiel
  20. B Universitäts-Beispiel
  21. Literaturverzeichnis
  22. Sachindex
  23. Schlüsselwortindex
  24. Anmerkungen

Häufig gestellte Fragen

Ja, du kannst dein Abo jederzeit über den Tab Abo in deinen Kontoeinstellungen auf der Perlego-Website kündigen. Dein Abo bleibt bis zum Ende deines aktuellen Abrechnungszeitraums aktiv. Erfahre, wie du dein Abo kündigen kannst
Nein, Bücher können nicht als externe Dateien, z. B. PDFs, zur Verwendung außerhalb von Perlego heruntergeladen werden. Du kannst jedoch Bücher in der Perlego-App herunterladen, um sie offline auf deinem Smartphone oder Tablet zu lesen. Erfahre, wie du Bücher herunterladen kannst, um sie offline zu lesen
Wir sind ein Online-Lehrbuch-Abonnement-Service, bei dem du für weniger als den Preis eines einzelnen Buchs pro Monat Zugriff auf eine gesamte Online-Bibliothek erhältst. Bei über 1,5 Millionen Büchern zu mehr als 990 Themen bist du bestens versorgt! Erfahre mehr über unsere Mission
Achte auf das Symbol zum Vorlesen bei deinem nächsten Buch, um zu sehen, ob du es dir auch anhören kannst. Bei diesem Tool wird dir Text laut vorgelesen, wobei der Text beim Vorlesen auch grafisch hervorgehoben wird. Du kannst das Vorlesen jederzeit anhalten, beschleunigen und verlangsamen. Erfahre mehr über die Funktion „Vorlesen“
Ja! Du kannst die Perlego-App sowohl auf iOS- als auch auf Android-Geräten nutzen, damit du jederzeit und überall lesen kannst – sogar offline. Perfekt für den Weg zur Arbeit oder wenn du unterwegs bist.
Bitte beachte, dass wir Geräte, auf denen die Betriebssysteme iOS 13 und Android 7 oder noch ältere Versionen ausgeführt werden, nicht unterstützen können. Mehr über die Verwendung der App erfahren
Ja, du kannst auf Datenbanken von Andreas Heuer,Kai-Uwe Sattler,Gunter Saake,Hannes Grunert,Holger Meyer im PDF- und/oder ePUB-Format sowie auf andere beliebte Bücher in Informatik & Datenübertragungssysteme zugreifen. In unserem Katalog stehen über 1,5 Millionen Bücher zur Verfügung.