Datenbank-Grundlagen
Eine wesentliche Funktion eines Computersystems besteht darin, Daten, Texte, Bilder, Sprache, Sounds (oder auch Kombinationen mehrerer Informationsarten) zu speichern, so dass deren bedarfsgerechtes, insbesondere rasches und einfaches Wiederauffinden und Nutzen ermöglicht wird.
Das Kapitel der Datenbanken behandelt insbesondere, wie große Datenmengen dauerhaft und zuverlässig gespeichert und bei Bedarf abgerufen werden können. Dazu ist es erforderlich, die für einen oder mehrere Benutzer relevanten Ausschnitte aus der Realität einzugrenzen, und Letztere in konventionellen Dateisystemen oder in Datenbanken abzubilden. Grundlegende Fragen der Datenorganisation und der Planung von Datenbanksystemen sowie verbreitete Werkzeuge zur Nutzung von Datenbanken (insbesondere SQL) sind daher Inhalte des an dieser Stelle eingeleiteten Kapitels. |
Was sind und wozu dienen Datenbanken?
Datenbanken sind strukturierte Lagerstätten für Daten aller Art. Das zentrale, strukturgebende Element in Datenbanken sind Tabellen, die aus Zeilen (Sätzen) und Spalten (Feldern), bestehen. Der Umfang, die Zusammensetzung und der Aufbau der Tabellen bzw. deren Felder ist nicht willkürlich, sondern Regeln unterworfen. Tabellen gehören, insbesondere in Form von Listen zum millionenfach benutzten Objekt organisierender oder auch nur darstellender Maßnahmen. Die überwiegende Mehrzahl solcher Tabellen und Listen stammt, wenn automatisiert erzeugt, aus Datenbanken.
Das Web nährt seine sekündlich milliardenfach produzierten, mit Hilfe der Netze ausgelieferten und über die Web-Browser dargestellten Inhalte vornehmlich aus Datenbanken. So gesehen ist die Facebook-Timline eines Mitgliedes eine Liste, bzw. Tabelle aus sturkturierten Inhalten mit den Feldern: Profilbid, Datum, Beitragsbild, Beitragstext, Anzahl der "Likes" u.a.m. welche aus einer immensen Datenbank selektiert und mit Layout-Paramtern versehen zum typischen Web-Erscheinungsbild kombiniert wird. Mit Hilfe desselben Erscheinungsbildes, oder sollte man es Forumular nennen, können die dargestellten Daten aber auch gelöscht, verändert oder ergänzt und somit als neuer oder veränderter Beitrag in die immense Datenbank rücktransferiert werden.
Wie am einfachen Facebook-Beispiel erkennbar enthalten Datenbanken auch unterschiedliche Datentypen, wie z.B. Texte, Datumswerte, Fotos oder auch nur die an sich winzige Information darüber, ob man etwas mag (liked) oder eben nicht.
Obwohl - glaubt man den Studien - sich die meisten NutzerInnen der Social Media über Wirkung und Reichweite Ihrer Postings wenig Gedanken machen, wäre der Zugriff auf Einzelheiten in den Tabellen der Datenbanken mittels Zugriffsrechten lenk- und begrenzbar. Wer demnach, welche Daten lesen, löschen, verändern oder ergänzen kann, ist mit Hilfe entsprechender Regelwerke, den Bedarfen unterschiedlicher Gruppierungen von Nutzern entsprechend modellierbar.
Das soeben beispielhaft Erwähnte gilt selbstredend für ungezählte Anwendungen aus allen Bereichen in denen Computer und Netzwerke eingesetzt werden. Im Hintergrund, weil sie sich eben auf den Oberflächen nicht immer leicht zu erkennen geben, arbeiten Datenbanken. In betrieblichen und behördlichen Informationssystemen, Freizeit- und Arbeitsumgebungen, Spielerischen und ernsthaften Bereichen unseres Lebens.
Wer Zugriff auf immense Datenbestände hat, besitzt ökonomische oder politische Macht. Digitale Werkzeuge bzw. Tools zur automatisierten quantitativen und qualitativen Auswertung von Datenbeständen filtern, ordnen, verbinden die in Tabellen scheinbar isolierten Daten zu neuen Erkenntnissen. Damit werden die Geschicke der Unternehmen gelenkt, politische Entscheidungen getroffen, aber auch Leistungsbeurteilungen in Lehrveranstaltungen ermittelt und sehr vieles mehr, wie bereits angeklungen ist.
Handeln die Daten von Menschen, sagen sie direkt oder indirekt etwas über Personen aus, so werden hiermit auch größten Schattenseiten der Anwendung von Datenbanken berührt. Der Möglichkeit effektivster Verknüpfung und Auswertung personenbezogener Daten wegen, wurde bereits Ende der 70er Jahre des vorigen Jahrhunderts in vielen Ländern der heutigen Europäischen Union eine Gesetz zum Schutz der Privatsphäre oder kurz Datenschutzgesezt erlassen. Mit der Verbreitung des Internets und dem Hineinfanden fast aller Computer-Anwendungen in zumindest internet-kompatible Systeme, ist das Thema des Datenschutzes aktueller den je. Der technische Hintergrund sind auch in diesem Fall: Datenbanken.
Von der Datei zur Datenbank
Geht es um die Abbildung von Teilen der Realität in Dateien und Datenbanken, so ist dabei stets von einer bedarfsgerechten Abbildung der Wirklichkeit auszugehen. Dateien und Datenbanken enthalten demnach jene Abbildungen der Wirklichkeit (der Produkte, der Lieferanten, der Geschäftsfälle usw.), die sich für betriebliche und zwischenbetriebliche Informations- und Kommunikationsprozesse als notwendig bzw. brauchbar erweisen. Die Vollständigkeit bzw. Richtigkeit einer Datei oder Datenbank kann nur unter Einbeziehung des realen Umfeldes beurteilt werden.
Ein Satz (Datensatz, data record, record) bildet ein Objekt der Realität vereinfachend in einem Computersystem ab. Ein solches Objekt (Entität, entity) kann ein konkreter Gegenstand, ein Ereignis oder auch ein abstrakter Begriff sein. Es wird durch seine Attribute (Merkmale, Eigenschaften) beschrieben. Das Objekt Lehrbuch kann beispielsweise durch die Attribute Nummer, Autor, Titel, Preis, Verlag, Auslaufend und Bestand beschrieben werden. Die konkreten Inhalte der Attribute eines konkreten Lehrbuches werden Feldern (Datenfelder, fields) zugewiesen. Alle Felder eines konkreten Objektes bilden einen Datensatz. Eine tabellarische Darstellung eignet sich dafür hervorragend, siehe Tabellen in Datenbanken. Die Tabelle kann dabei um die Beschreibung weiterer Objekte (im vorliegenden Beispiel Bücher) erweitert werden.
Nummer | Autor | Titel | Preis | Verlag | Auslaufend | Bestand |
---|---|---|---|---|---|---|
646 | Schwab | EDV - Projektleitung | 30,06 | mc | y | 95 |
Datenfelder bilden die kleinste Einheit von Dateien und Datenbanken. Datenfelder sind mit einem Namen versehen, der sich oftmals mit der Bezeichnung des Attributes deckt und können unterschiedlichen Datentyps sein. Die Felder Nummer und Bestand sind z. B. vom Typ Ganzzahl, das Feld Preis vom Typ Dezimalzahl. Die Felder Autor, Titel und Verlag sind vom Typ Text und das Feld Auslaufend vom Typ Flag (mit den Ausprägungen y oder n).
Relationale und redundante Datenbanken
Sämtliche Daten werden in Datenbanken immer in Form von Tabellen abgebildet (ähnlich Excel). Relational ist eine Datenbank dann, wenn sie nicht aus einer großen Tabelle, sondern aus mehreren Tabellen besteht. Die Datenmengen können dadurch gering gehalten werden, da die Daten nicht doppelt geführt werden müssen. Mit sogenannten Schlüsselfeldern (keys) werden zwischen den Tabellen Verknüpfungen erstellt, siehe Beziehungen in Datenbanken. Eine Datenbank, die nicht relational ist, sondern aus einer großen Tabelle besteht, ist meist redundant. Dies bedeutet, dass Daten, die in der Realität nur einmal vorkommen, viel öfter als notwendig gespeichert sind. Die Lösung für dieses Problem ist eine relationale Datenbank, die aus mehreren Tabellen besteht. Der Vorgang des Umwandelns einer redundanten Datenbank in eine relationale nennt man Normalisieren. Dies kann eine durchaus komplexe Angelegenheit werden. Es gibt dazu aus der Theorie einige Methoden, die es ermöglichen, diesen Vorgang zu standardisieren bzw. zu erleichtern. Dabei werden verschiedene Normalformen unterschieden - für den Praktiker und bei einfachen Datenbanken ist es aber auch möglich, ohne großartige Theoriekenntnisse die Datenbank zu normalisieren.
Literatur
Quellen
R. Elmasri, S. B. Navathe: Grundlagen von Datenbanksystemen. Ausgabe Grundstudium. Pearson Studium 2005
Weiterführende Links
Zitiervorschlag
Mittendorfer in Pils, Informationsverarbeitung I (27. 2. 2012), Datenbank-Grundlagen (mussswiki.idv.edu/iv1)