1.1 Aufbau des Buches, Gesamtüberblick |
|||||
Im Mittelpunkt dieses Buches stehen Relationale Datenbanken - ihr Entwurf, ihre Modellierung, ihre Optimierung und ihre Einrichtung. Dies ist eingebettet in eine Darstellung des gesamten Weges, den die Informationen eines Anwendungsbereichs zurücklegen müssen, bis sie sich als Datenbank auf einem Speichermedium wiederfinden. |
|||||
In der Abbildung unten ist dieser Weg skizziert. Am Anfang (Position 1) ist der Anwendungsbereich. Er wird meist durch eine Wolke dargestellt. Die Auseinandersetzung mit dem Anwendungsbereich, das Gewinnen der für die Datenbank wichtigen Informationen, wird konzeptionelle Modellierung (conceptual modeling) genannt. Mit ihrer Hilfe werden Objekte und Objektklassen erkannt, Attribute gefunden und zugeordnet sowie Beziehungen geklärt. Vgl. dazu Kapitel 3. |
Anwendungsbereich und Konzeptionelle Modelllierung |
||||
Die konzeptionelle Modellierung führt zu einem semantischen Datenmodell (Position2). Mit einem solchen ist es möglich, Objekte, Beziehungen und Attribute unabhängig von einem konkreten Datenbanksystem zu beschreiben. Von den vielen, die in den letzten Jahrzehnten hierfür vorgeschlagen wurden, blieb nur das sog. Entity Relationship - Modell übrig. Seine Aufgabe ist eine erste mit viel Aussagekraft erstellte Modellierung. Oder auch eine für Überblicksnotationen. |
Semantische Datenmodelle |
||||
Vgl. hierzu " http://www.staud.info/er/er_f_1.htm |
|||||
Im nächsten Schritt (Position 3) entsteht ein logisches Datenmodell. Damit werden Modelle bezeichnet, die einer bestimmten Datenbanktheorie und damit einem bestimmten Datenbanksystemtyp entsprechen. Dies sind heutzutage relationale und objektorientierte Datenbanksysteme und weitere, die neueren Ansätzen zur Datenverwaltung entsprechen (vgl. Kapitel 23). In diesem Buch stehen relationale Datenmodelle und Datenbanken im Vordergrund. |
Logisches Datenmodell |
||||
Mit der Erstellung des logischen Datenmodells ist die Struktur der künftigen Datenbank festgelegt. Also ein relationales Datenmodell oder auch ein objektorientiertes. Für diese Datenmodelle gibt es Datenbanksysteme, die mehr oder weniger gut das jeweilige Datenmodell (die jeweilige Theorie) unterstützen und seine Umsetzung erlauben. In diesem Buch konzentrieren wir uns auf Relationale Datenbanksysteme. |
Datenbankdesign vollzogen |
||||
Nun gilt es, aufbauend auf dem logischen Datenmodell, die konkrete Datenbank mit einem geeigneten Datenbanksystem einzurichten (Position 4). Dies geschieht mittels der Masken und Menüs der grafischen Bedienoberflächen und - vor allem - mit einer formalen Sprache für das Einrichten, Befüllen, Verwalten und Auswerten der Daten. Bei Relationalen Datenbanksystemen ist dies SQL (vgl. Kapitel 19). Das Ergebnis dieser Bemühungen ist eine Datenbank. |
Datenbanken einrichten mit SQL |
||||
In Kapitel 19 wird SQL beschrieben. Wegen der leichten Verfügbarkeit und gleichzeitig großen Leistungsstärke wurde dafür mySQL mit XAMPP gewählt. |
|||||
Richtet man die relationale Datenbank ein, entstehen viele Dateien auf dem peripheren Speicher (heute meist Festplatten), in denen die Daten und die Verwaltungsinformation abgelegt sind (Position 5). Der grundsätzliche Aufbau dieser Dateien ist in den Kapiteln 20 und 21 beschrieben. Verwaltet werden diese Dateien von einem Teil des Betriebssystems, das Dateisystem (file system) genannt wird. Es nimmt die SQL-Befehle entgegen und setzt sie in Befehle für die sog. physische Datenorganisation um. Dabei nutzt es das sog. Festplattenverwaltungssystem. |
Dateien auf peripheren Speichern |
||||
Auf der rechten Seite der folgenden Abbildung ist angegeben, wer die jeweilige Aktivität umsetzt. Von 1 nach 2 ist Kompetenz in den Bereichen konzeptionelle und semantische Modellierung nötig. Geht es weiter nach 3, ist Kompetenz in logischer Datenmodellierung gefragt, heute also v.a. in relationaler oder in objektorientierter Modellierung (vgl. dazu [Staud 2019] und www.staud.info ==> Objektorientierung). Den Schritt nach 4, also die Einrichtung der Datenbank, übernehmen dann die die ganz normalen Datenbankspezialisten. |
Träger der jeweiligen Aktivität |
||||
Die nächsten Schritte bis zum physischen Speichermedium werden dann durch Anwendungssysteme realisiert. Durch das Datenbanksystem(database management system; DBMS; hier DBS) und das Betriebsssystem. Letzteres v.a. durch die in der Abbildung angeführten Komponenten Dateisystem (file system) und Festplattenverwaltungssystem (disk manager). |
Datenbanksystem - Betriebssystem |
||||
|
|||||
Obige Thematik wird, ergänzt um Kapitel zu „Modellierung, Speicherung, Alternativen“, in diesem Text betrachtet: |
|||||
***Teil I - Grundlagen |
|||||
2 Informationen, Daten, Attribute |
|||||
3 Konzeptionelle Modellierung |
|||||
***Teil II - Relationale Datenmodelle |
|||||
4 Relationen bilden |
|||||
5 Beziehungen erkennen und einrichten |
|||||
6 Zusammenfassung Grundlagen |
|||||
***Teil III - Optimierung des Datenbankentwurfs |
|||||
7 Die erste Normalform (1NF) |
|||||
8 Funktionale Abhängigkeiten |
|||||
9 Die zweite Normalform (2NF) |
|||||
10 Die dritte Normalform (3NF) |
|||||
11 Die Boyce-Codd - Normalform (BCNF) |
|||||
12 Die vierte Normalform (4NF) |
|||||
13 Die fünfte Normalform (5NF) |
|||||
***Teil IV - "Feintuning" und Vertiefung |
|||||
14 Muster in Anwendungsbereichen und Modellen |
|||||
15 Die Zeit in Datenmodellen und Datenbanken |
|||||
***Teil V - Beispiele relationaler Datenmodelle |
|||||
16 Modellierungsbeispiele mit Lösungsweg |
|||||
17 Weitere Modellierungsbeispiele |
|||||
***Teil VI - Datenbankpraxis |
|||||
18 Von Attributen zu Datentypen |
|||||
19 SQL - Eine Kurzeinführung |
|||||
***Teil VII - Physische Datenorganisation |
|||||
20 Vom Zeichen zur Datenbank |
|||||
21 Dateitechniken |
|||||
22 Speichermedien |
|||||
***Teil VIII - Alternativen |
|||||
23 Andere Datenmodelle |
|||||
24 Nicht-konventionelle Datenbanken – NoSQL etc. |
|||||
1.2 Hinweise zur Textgestaltung |
|||||
Was die zu beschreibenden Elemente in der Datenmodellierung angeht, kann man einen Ausgangspunkt und drei Modellebenen unterscheiden. Der Ausgangspunkt ist der zu modellierende Anwendungsbereich, manchmal auch Weltausschnitt genannt. Die erste Modellebene ist die der Attribute, durch die Objekte und Beziehungen beschrieben werden. Die zweite die Ebene der "kleinsten" Elemente im jeweiligen Ansatz, dies sind hier die Relationen. Die dritte Ebene ist die des gesamten Datenmodells. Um diesbezüglich im Text die Übersichtlichkeit zu erhöhen wird folgende typographische Festlegung getroffen: |
Überblick durch Typographie |
||||
|
|||||
Für die Relationen (Tabellen für relationale Datenbanken) wird bei der Bezeichnung immer die Mehrzahl gewählt, da ja in der Regel mehrere Objekte bzw. Beziehungen erfasst sind. Für die in den Beispielen oft benutzten Personal Computer gilt: als Relationenbezeichnung wird PC verwendet, ansonsten (im Text) für die Mehrzahl "PCs". |
Relationenbezeichnung |
||||
1.3 Datenbanken |
|||||
Digitale Abbilder |
|||||
Unsere digitale Welt erzeugt Daten in einem Umfang, den man sich in früheren Zeiten nicht vorstellen konnte. In den Unternehmen werden die Geschäftsprozesse immer intensiver durch Anwendungssysteme begleitet, was automatisch zu großen Datenbeständen führt. Die Internetunternehmen bedienen uns mit vollautomatisierten Geschäftsprozessen und mit einem ausgefeilten Kundenbeziehungsmanagement (CRM; Customer Relationship Management), beides ist ohne umfassende Datenbasis nicht möglich. Im Internet sorgen wir durch Nutzung des SocialWeb für Datenbestände, die (nicht nur durch Geheimdienste) abgespeichert und intensiv untersucht werden. Und auch im privaten Bereich entstehen immer mehr Daten (Bilder, Viedeosequenzen, Texte, ...), worauf die Industrie mit Festplatten antwortet, die inzwischen mehrere Terabyte fassen können. |
Immer mehr Daten, immer mehr Datenbanken |
||||
Überall also Daten und damit überall Datenbanken. Um den größeren Bogen zu spannen: Die Vermessung der Welt ist inzwischen einen Schritt weiter. Sie erfasst jetzt auch Interaktionen und Aktivitäten und geht in Richtung Widerspiegelung der Welt in digitalen Datenbeständen. Es gibt eine digitale Parallelwelt, die im Internet, aber nicht nur dort erzeugt wird. |
Digitale Parallelwelt |
||||
Ein Teil dieser Daten ist so strukturiert (vgl. die folgenden Kapitel), dass er in Relationalen Datenbanken abgespeichert werden kann. Um diese und um ihr "Umfeld" geht es in diesem Buch. Kurz gesagt, bedeutet dies, dass die Daten durch Attribute strukturiert und in verknüpfte Tabellen gefasst sind, die sich (meist) jeweils in einer Datei widerfinden. Zumindest für die Datenbestände von Unternehmen und sonstigen Organisationen ist dies der wichtigste Datenbanktyp. Es gibt aber inzwischen viele andere, sie werden im Kapitel 24 kurz vorgestellt. |
Relationale Datenbanksysteme |
||||
Jede Programmiersprache erlaubt das Anlegen von Dateien. Große, kleine, für unterschiedlichste Daten, mit unterschiedlichem Aufbau. Deshalb stellt sich die Frage: Benötigt man überhaupt Datenbanken, reichen nicht Dateien völlig aus? Es gibt ja auch Softwaresysteme, die es erlauben, einzelne Dateien einzurichten und zu verwalten, die sog. Dateisysteme Nun, einzelne Dateien reichen heute nicht mehr aus, denn sie können jeweils nur einen bestimmten eher kleinen Anwendungsbereich erfassen. Die meisten Anwendungsbereiche sind aber sehr viel umfangreicher. Eine integrierte prozessorientierte Software (ERP-Software, vgl. [Staud 2006] oder www.staud.info ==> ERP-Software) wie die von SAP enthält z.B. in ihrer Datenbank Informationen zu allen Aspekten des Unternehmens, man spricht da auch von einer unternehmensweiten Datenbank. Aber auch kleinere Anwendungsbereiche, z.B. die Beschaffung oder der Vertrieb eines Unternehmens, die Studierenden einer Hochschule oder die Daten eines Sportvereins können nicht alleine in einer Datei verwaltet werden. |
Dateisysteme vs. Datenbanksysteme. |
||||
Diese Komplexität der Daten rührt u.a. daher, weil die Daten die Geschäftsprozesse der Organisationen unterstützen sollen und in diesen sehr viele Aspekte der Geschäftstätigkeit eine Rolle spielen, z.B. Kunden, Lieferanten, Produktion, Artikel, usw. |
|||||
Anwendungsbereiche |
|||||
Jetzt wird es Zeit, den schon mehrfach benutzen Begriff Anwendungsbereich näher zu klären. Datenbanken speichern, wie oben beschrieben, die Datenbestände, die in der Weltgesellschaft und -wirtschaft entstehen und die zu irgendeinem Zweck aufbewahrt werden sollen. Sie stellen damit immer ein abstrahiertes Abbild der Realität dar. Irgendeiner Realität. Da es sich immer nur um Teilbereiche handelt, sind dafür Begriffe wie Anwendungsbereich, Weltausschnitt (slice of reality) und Miniwelt (bei Autoren mit Kontakt zur Künstlichen - Intelligenz - Forschung) in Gebrauch. In diesem Buch wird der Begriff Anwendungsbereich verwendet. |
Realität und Modell |
||||
Anwendungsbereiche können Abteilungen von Unternehmen ("Datenbank für den Vertrieb”) oder auch (fast) ganze Unternehmen sein (z.B. bei ERP-Software). Sie können aber auch durch eine einzelne Aufgabe definiert sein, z.B. "Daten für die Absatzprognose" oder "Daten für die neue Web-Präsentation des Unternehmens". |
|||||
Es soll hier nicht verschwiegen werden, dass es auch außerhalb des attributbasierten Bereichs, in dem wir uns hier bewegen, Weltausschnitte mit faszinierenden anderen Informationsarten gibt, z.B. in der Chemie mit chemischen Strukturformeln, in der Physik oder auch Ökonometrie (vgl. die Zeitreihendatenbanken der entsprechenden Anbieter). |
|||||
Hier einige Beispiele: |
Beispiele |
||||
|
|||||
Die Liste könnte beliebig fortgesetzt werden. |
|||||
1.4 Logische Datenmodelle, Datenorganisation |
|||||
Oben wurde es schon angedeutet: Grundlage einer jeden Datenbank ist ein sog. Datenmodell. Dieses stellt ein abstrahiertes Abbild eines Anwendungsbereichs oder Weltausschnittes dar. "Abstrahiert" deshalb, weil von der vielschichtigen Realität nur die Strukturen aufgenommen werden, die für die Anwendung benötigt werden. Etwa so, wie es bei den konzeptionellen Überlegungen festgelegt wurde. |
Abstrahiertes Abbild der Realität |
||||
Datenmodelle sind theoriespezifisch. D.h., sie werden mit Hilfe eines Instrumentariums erstellt, das eine Datenbanktheorie zur Verfügung stellt. Z.B. die relationale Datenbanktheorie, die objektorientierte oder die für die semantische Modellierung. Die relationale Theorie wird im weiteren hier vorgestellt. |
|||||
Nach Fertigstellung werden Datenmodelle mit Hilfe des entsprechenden Datenbanksystems in eine Datenbank umgesetzt. Diesen Zusammenhang veranschaulicht die folgende Abbildung. |
|||||
|
|||||
Ein Datenmodell ist ein Abbild des jeweiligen Weltausschnitts, das mit den Mitteln und gemäß den Regeln des jeweiligen datenbanktheoretischen Ansatzes realisiert wurde und das mit Hilfe eines Datenbanksystems in eine Datenbank umgesetzt wird. |
Zusammenfassung |
||||
Datenmodelle sind also ein Werkzeug, um mit Hilfe eines Datenbanksystems Datenbanken einzurichten. |
|||||
Die Nutzung eines Instruments gibt einerseits viele Möglichkeiten, bringt andererseits immer auch Einschränkungen mit sich. Der jeweilige datenbanktheoretische Ansatz legt fest, was wir erfassen können, mit welchen Mitteln wir dies tun und wie das Ergebnis aussieht. Hier nur einige sehr allgemeine Festlegungen, die spezifischen werden in den einzelnen Kapiteln diskutiert: |
Festlegungen |
||||
|
|||||
Weiter legt das Datenmodell als Methode fest, was wir von den sonstigen Strukturen und Regeln des Anwendungsbereichs - der Semantik - erfassen können. Diese Semantischen Integritätsbedingungen (constraints) schränken die Operationen ein, die auf den Daten erlaubt sind. |
|||||
Bis zum Aufkommen der objektorientierten Modellierung galt außerdem, dass ein Datenmodell nur Strukturen (statische Aspekte) erfasst, nicht "Verhalten" (dynamische Aspekte). |
|||||
1.5 Relationale Datenbanksysteme |
|||||
Die Software für das Einrichten, Befüllen, Betreiben und Auswerten von Datenbanken wird Datenbanksystem genannt. Im Falle von Relationalen Datenbanken dann entsprechend Relationales Datenbanksystem (RDBS). Der Begriff "relational" kommt von der zugrundeliegenden Theorie, die zu einem relationalen Datenmodell führt, das im folgenden intensiv betrachtet wird. Es besteht aus verknüpften Tabellen einer bestimmten Struktur. Damit entsteht ein integrierter Datenbestand, die Datenbank. Ein korrektes relationales Datenmodell beschreibt a) alle benötigten Daten redundanzfrei und erfasst b) die Beziehungen zwischen den Daten, wobei in relationalen Datenmodellen die "Beziehungen" v.a. Verknüpfungen zwischen den Relationen sind. |
Datenbanksystem, |
||||
Ohne Theorie geht es also bei der Verwaltung von Daten ganz grundsätzlich nicht. Die effiziente Speicherung von Informationen benötigt sie. Andere zu Datenbanken führende Theorien führen zu objektorientierten Datenbanken, zu spaltenorientierten (vgl. Abschnitt 24.3), zu multidimensionalen (vgl. Abschnitt 24.2), usw., früher auch zu Hierarchischen und Netzwerk-Datenbanken. |
Nicht ohne Theorie |
||||
Somit entstehen Relationale Datenbanken mit Hilfe der in den Kapiteln 4 bis 15 vorgestellten relationalen Theorie, relationale Datenmodellierung genannt. Es gibt ... |
Theorie + zugehörige Software ==> Datenbanken |
||||
|
|||||
Relationale Datenbanksysteme setzen also relationale Datenmodelle in Relationale Datenbanken um, d.h. in die adäquate physische Datenstruktur und erlauben deren Verwaltung. Es sind nichts anderes als Softwaresysteme, die auf diese Aufgabe zugeschnitten sind. |
|||||
Ähnliches gibt es noch für die objektorientierte Theorie [Anmerkung] und die objektorientierten Datenbanken bzw. Datenbanksysteme sowie für neuere Modellierungsansätze (vgl. Kapitel 24). Allerdings sind im Umfeld von Unternehmen, Verwaltungen und sonstigen Organisationen die Relationalen Datenbanken absolut führend und am meisten verbreitet. |
|||||
Aufgaben von Datenbanksystemen |
|||||
Die Hauptaufgabe von Datenbanksystemen ist die effiziente Verwaltung der Informationsarten, für die sie geschaffen wurden. Bei Relationalen Datenbanken also die von attributbasierten (vgl. unten sowie Abschnitt 2.4), in Datensätzen (vgl. Kapitel 21) organisierten Daten. Wesentlich ist, dass diese Datenverwaltung über lange Zeiträume stattfinden soll, womit eine langfristige Speicherung der Daten einhergeht. Man spricht hier auch von persistenter Datenhaltung. |
Attribute und ihre Ausprägungen in Datensätzen |
||||
Da die unternehmerische Wirklichkeit und auch die anderer Organisationen durch Geschäftsprozesse geprägt ist, ist es dort die Aufgabe der Datenbanken, die Geschäftsprozesse zu unterstützen. Sie stellen für diese Informationen bereit und nehmen die im Geschäftsprozess neu entstehenden auf. |
Relationale Datenbanken für Geschäftsprozesse |
||||
Mit obigem und mit dem Hinweis, dass letztendlich durch Datenbanken die Geschäftsprozesse der Organisationen unterstützt werden müssen, kann man die Hauptaufgaben von Relationalen Datenbanksystemen wie folgt formulieren. Sie ... |
|||||
|
|||||
Datenbanksysteme sichern aber auch den laufenden Betrieb über den gesamten Lebenszyklus einer Datenbank hinweg, insbesondere die Integrität der Daten. Dazu gehört die Redundanzfreiheit, Korrektheit der Schlüssel (identifizierende Attribute) und der relationalen Verknüpfungen. Also auch stimmige Schlüssel und Fremdschlüssel [Anmerkung] (Attribut, das der Verknüpfung von Relationen bzw. ihren Tupeln dient, vgl. Kapitel 5.). |
|||||
Eigenschaften von Datenbanksystemen |
|||||
Zusammengefasst und noch etwas ergänzt gehören somit zu den Eigenschaften, die von Datenbanksystemen gefordert werden, die folgenden: |
Zusammenfassung |
||||
|
|||||
Damit kann nun definiert werden. |
|||||
Eine relationale Datenbank beruht auf einem Datenmodell. Sie besteht aus einer Sammlung von Dateien, die untereinander in inhaltlich begründeten Beziehungen stehen. Sie wird mit Hilfe eines Datenbanksystems angelegt, ausgewertet und verwaltet sowie an die sich ständig verändernden Strukturen im Anwendungsbereich angepasst. |
Definition: relationale Datenbank |
||||
|
|||||
Datenbanksysteme sorgen für eine effiziente Verwaltung der in der Datenbank persistent gespeicherten komplexen Daten über einen Anwendungsbereich. Sie sichern die Redundanzfreiheit und Integrität der in der Datenbank gespeicherten Daten im Zeitverlauf. Darüber hinaus ermöglichen sie den Mehrfachzugriff sowie eine Kontrolle des Zugriffs auf die gespeicherten Daten. Und natürlich ermöglichen sie eine flexible Auswertung der Daten. |
Definition: Datenbanksysteme |
||||
1.6 Die drei Ebenen der ANSI-SPARC - Architektur |
|||||
Der SPARC-Ausschuss (Standards Planning and Requirements Committee) des amerikanischen Normungsinstituts ANSI (American National Standards Institution) hat bezüglich der Architektur von Datenbanken schon in den 1970er-Jahren drei gegeneinander abgegrenzte Ebenen eingeführt, die ANSI-SPARC - Architektur, deren Betrachtung auch heute noch lohnt: |
Drei Ebenen |
||||
|
|||||
Eine ausführliche Darstellung findet sich in [Connolly, Begg und Stachan 2002, S. 80ff]. |
|||||
Die sog. Sichten (views) auf eine Datenbank sind in der externen Ebene angesiedelt. Da eine Datenbank in der Regel einen großen Datenbestand enthält ist es sinnvoll, einzelnen Nutzern einen Ausschnitt davon zur Verfügung zu stellen. Da kann dann der Produktionsleiter alle Daten rund um die Produktion ausgewählt bekommen und die Personalchefin alle Daten des Personalwesens. |
Sichten - views |
||||
1.7 Syntax, Semantik, Pragmatik |
|||||
Die im Datenbankkontext verwalteten Informationen werden i.d.R. durch Daten ausgedrückt (vgl. auch Kapitel 20), weshalb wir von diesem Begriff ausgehen. |
|||||
Solche Daten haben einen bestimmten Aufbau (Syntax), eine Bedeutung (Semantik) und dienen einem Zweck (Pragmatik): |
|||||
|
|||||
Betrachten wir einige Beispiele, zuerst Datumsangaben. Diese haben eine schlichte Struktur. Sie bestehen aus einer Tages-, einer Monats- und einer Jahresangabe. Z.B. könnte die Syntax folgenden Aufbau vorschreiben: 4. Mai 2021 oder auch 2021/05/04. Also z.B. dass die Tagesangabe aus einer maximal zweistelligen positiven Zahl besteht, die Monatsangabe ebenfalls (oder aus einer Zeichenfolge) und die Jahresangabe entweder ebenfalls als zweistellige oder als vierstellige positive Zahl erfasst wird. Damit legt die Syntax den korrekten Aufbau dieser Information schon etwas fest, würde aber auch den 31. April 2024 oder den 35. 12. 2022 zulassen. |
Datumsangaben: Tag, Monat, Jahr |
||||
Dies unterbindet die Semantik, die zur weiteren Festlegung der Datumsangaben führt: |
|||||
|
|||||
usw. |
|||||
Solche Festlegungen stellen also die Semantik der Datumsangaben dar. Genauer formuliert ist es so, dass die Realwelt (Datumsangaben) eine Semantik hat, die durch die Datumsangaben im Datenbestand möglichst genau erfasst werden soll. Dem Datenbanksystem liefert damit die Semantik weitere Regeln für die Korrektheit der Information. Dabei spricht man auch von Semantischen Integritätsbedingungen (englisch: constraints). |
|||||
Noch präziser wird die Information durch die Pragmatik beschrieben. Eine Datumsangabe kann zum Beispiel einen Auftragseingang, ein Zahlungsziel oder den Abgabetermin für die Bachelorarbeit bedeuten. Das weiß die jeweilige Nutzerin und richtet ihr Verhalten daran aus. |
|||||
Betrachten wir ein weiteres Beispiel. Die Ausprägung einer Information sei die Zahl "19". Dieses Datenelement kann verschiedene Bedeutung haben: |
Beispiel |
||||
|
|||||
Diese Semantik wird erst durch den Zusammenhang klar: |
|||||
|
|||||
In einer Hochschule könnten folgende Grundsätze unserer Daseins zur Semantik gehören und bei der Gestaltung einer Datenbank zum Lehrbetrieb wichtig sein: |
Beispiel |
||||
|
|||||
usw. Wenigstens ein kleiner Teil solcher Semantikaspekte kann in Datenmodellen erfasst werden. Allerdings wirklich nur ein kleiner, wie im folgenden zu sehen sein wird, weshalb die diesbezüglichen Anstrengungen weitergehen. |
|||||
Woher kommt der Wunsch, möglichst viel Semantik des jeweiligen Weltausschnitts in einem Datenmodell und dann in der Datenbank zu erfassen? Nun, die Semantik gehört zur Anwendung. Sie muss auf jeden Fall berücksichtigt werden, soll die Anwendung leistungsstark sein. Entweder wird sie in der Datenbank hinterlegt oder in den Programmen softwaretechnisch realisiert (dann ist sie Gegenstand der Systemanalyse). |
Mehr Semantik in das Datenmodell |
||||
Es geht natürlich nur um den Teil der Semantik, der für die jeweilige Anwendung bzw. für die Geschäftsprozesse, denen die Datenbank "dient", Bedeutung hat. |
|||||
Die Hinterlegung in der Datenbank, aufbauend auf der vorangehenden Berücksichtigung beim Datenbankentwurf, hat aber Vorteile: Sie ist sehr übersichtlich (z.B. als Semantische Integritätsbedingungen (constraints) auf den Relationen) und leicht änderbar. Man kann es auch so formulieren: Alle (zu berücksichtigende) Semantik, die nicht in der Datenbank hinterlegt wird, muss bei der Systemanalyse für die Anwendungsprogramme berücksichtigt werden. |
|||||
Fehlt noch die Pragmatik von Daten bzw. Informationen. Daten, die eine Bedeutung haben, sind immer noch keine (eindeutige) Information. Dazu fehlt der praktische Wert, den eine Angabe für den Empfänger der Information bekommt. Eine Datumsangabe zum Beispiel kann einen Auftragseingang, ein Zahlungsziel oder den Abgabetermin für die Bachelorarbeit bedeuten. Das weiß der jeweilige Nutzer. Daten und ihre Bedeutung müssen also über einen zielgerichteten, pragmatischen Zweck verfügen, um zu einer (eindeutig interpretierbaren) Information zu werden. Diesen Aspekt von Daten nennt man auch Pragmatik. |
Pragmatik |
||||
|
|||||