Читать книгу Relationale Datenbanken - Josef Ludwig Staud - Страница 10
Оглавление2 Informationen, Daten, Attribute
2.1 Informationen, Daten
Alles was wir wahrnehmen. „Information“ bedeutet in erster Linie Wahrnehmung. Wahrnehmung wiederum ist für uns Menschen mit irgendeinem Phänomen der Realwelt verbunden, einem Informationsträger. Die englische Fachliteratur hat dafür den Begriff entity. Information ist deshalb jegliche Kenntnis über Dinge, Ereignisse, Beziehungen, Abläufe, Tatsachen, usw. Sie kommt in irgendeiner Form, die wir wahrnehmen können, entweder direkt (Bild, Ton, Text, Ziffern, usw.) oder mithilfe von Hifsmitteln (Fernsehen, Computer, Smartphone, Radio, usw.).
Strukturiert vs. unstrukturiert. Informationen sind also eigentlich schon strukturiert, werden aber als unstrukturiert bezeichnet. Strukturiert für uns Menschen, unstrukturiert weil sie nicht direkt in unsere digitalen Systeme und Speicher aufgenommen und nicht direkt digital verarbeitet werden können.
Maschinelle Informationsverarbeitung
Diese Diskrepanz wird Schritt um Schritt aufgelöst. Menschliche Sprache kann heute nicht nur aufgezeichnet, sondern auch gleich digital-textlich verfügbar gemacht werden. Genauso Handschrift. Der Tablet-Computer, auf dem dieser Text gerade bearbeitet wird, hat eine Texterkennung, die keine Probleme mit der nicht "unkrakeligen" Handschrift des Autors hat. Ein großes Internetunternehmen kann digital erfasste Gesichter identifizieren und sie Personen zuordnen, die ihrem Datenbestand zugeliefert wurden. Eine Sache von der die Künstliche Intelligenz - Forschung (KI), die Strafverfolgungsbehörden und die Geheimdienste vor einigen Jahren noch geträumt haben. Aus den zwar digitalen aber komplexen Daten des SocialWeb werden durch Programme Profile von Nutzern, Situationen ("hat geheiratet und will Haus bauen", …) gewonnen, die nicht nur Geheimdiensten ("neigt zum Terrorismus"), sondern auch Versicherungsunternehmen dienen. Im Sommer 2014 wurde eine Software zum Formulieren von einfachen Texten vorgestellt. Diese Liste liese sich lange fortsetzen.
Ein Gegenbeispiel soll nicht verschwiegen werden: Das Verstehen von textlich formulierter Information. Dies ist - trotz der intensiven Anstrengungen kapitalstarker Internetunternehmen mit riesigen Entwicklerabteilungen - noch nicht gelöst (das Programm, das menschliche Gegner im Quiz schlägt, versteht die Fragen nicht, sondern löst sie aufgrund massenhafter Datenabgleiche). Dafür wäre "Verstehen" notwendig, Verstehen von Semantik, Zusammenhängen, usw., also der Besitz von Weltwissen, wie das in der KI genannt wird. Das geht noch nicht, aber wer weiß …
Daten
Information an und für sich ist etwas abstraktes, immaterielles. Sie kann nur mitgeteilt (transportiert) und verarbeitet werden, wenn sie z.B. in Worten formuliert, mit Buchstaben aufgeschrieben, mithilfe von Symbolen gezeichnet, wenn sie also in irgendeiner Form dargestellt wird. Die so repräsentierten Informationen nennen wir Daten. Sie stellen Informationen aufgrund bestimmter Regeln oder Abmachungen in einer zur maschinellen Verarbeitung, Speicherung oder Übertragung geeigneten Form dar. Informationen haben Semantik, Daten nicht - deren Semantik muss durch das datenverwaltende System unterstützt bzw. sicher gestellt sein.
Analog, digital
Bilder, Töne und andere physikalische Größen wie Temperatur, Geschwindigkeit oder elektrische Spannung bestehen meist nicht aus einzelnen (diskreten) Werten, sondern sind durch einen kontinuierlichen Verlauf gekennzeichnet. Sie sind stetig veränderlich und können somit unendlich viele Werte annehmen. Man spricht deshalb von analogen Größen. Im Gegensatz dazu heißt eine Darstellung, die sich aus einzelnen, endlich vielen Zeichen zusammensetzt, digital.
Beispiel: Uhren
Ein Beispiel stellen die verschiedenen Uhrentechnologien dar. Grundsätzlich ist der Zeitverlauf kontinuierlich. Zwischen 0 und 24 Uhr durchläuft die Zeit unendlich viele Punkte. Bei einer analogen Uhr, die auf der Basis ihres Uhrwerks mit Ziffernblatt und Zeiger arbeitet, kann jeder auch noch so winzige Zeitpunkt angezeigt werden. Der Zeiger überstreicht unendlich viele Positionen. Ganz anders bei einer digitalen Uhr: Diese stellt nur einzelne (ausgewählte) Zeitpunkte durch Zeigerpositionen oder Ziffern dar. Sie beginnt bei 0 Uhr und zählt die einzelnen Sekunden hoch. Alle Zwischenwerte werden auf- oder abgerundet. Somit gilt:
• Digitale Daten bestehen aus aufeinanderfolgenden (diskreten) Zeichen.
• Analoge Daten entsprechen kontinuierlichen Funktionen und werden durch physikalische Größen dargestellt, die stufenlos veränderbar sind und den zu beschreibenden Sachverhalt repräsentieren.
Weitere Beispiele für analoge Daten sind die Darstellung der Temperatur durch die Höhe einer Quecksilbersäule in einem Thermometer oder die Musik auf einer Schallplatte. Auf einer CD gespeicherte Worte, Zahlen oder Musik sind Beispiele digitaler Daten. Selbstverständlich sind alle im Internet gespeicherten Daten ebenfalls digital.
Digitalisierung
Computer können nur mit digitalen Daten umgehen. Liegen analoge Werte vor, müssen sie zur Verarbeitung im Rechner digital dargestellt werden. Will man etwa den analog erhobenen Temperaturverlauf eines Tages zur Wettervorhersage für den nächsten Tag heranziehen und durch einen Computer verarbeiten lassen, so muss die Temperaturkurve vor der Verarbeitung in digitale Werte umgewandelt werden. Werden analoge Übertragungseinrichtungen benutzt (z.B. Datenübertragung über das analoge Telefonnetz) ist eine Analog-Digital-Wandlung erforderlich. Man nennt dies Digitalisierung. Dabei verliert man Informationen, das Ergebnis ist gegenüber den analogen Daten ungenau. Stellt man die Abtastrate (Zeitabstufung) und die Empfindlichkeit des Messvorgangs jedoch fein genug ein, bemerkt man den Fehler normalerweise nicht.
Ohne Digitalisierung geht es also nicht, soll die Information in Rechnern erfasst und verarbeitet werden. Sie hat darüberhinaus große Vorteile. Im Gegensatz zu analogen Daten können digitale Daten komprimiert (verdichtet) werden. Das bedeutet, dass sie weniger Speicherplatz auf den Datenträgern benötigen und dass größere Datenmengen transportiert werden können. So steigt durch Komprimierung die Kapazität von Datenübertragungswegen beträchtlich an. Auch sind digitale Daten bei einer Übertragung weniger störanfällig als analoge. Strom- oder Spannungsverläufe in elektrischen Kabeln lassen sich durch elektromagnetische Einflüsse sehr leicht verändern. Sind die Spannungswerte dagegen digitalisiert, führt ihre "Ungenauigkeit" dazu, dass kleinere Störungen unerheblich bleiben, die evtl. gestörten Zwischenwerte interessieren nicht.
Träger von Daten
Eine weitere Eigenschaft von Daten ist, dass sie einen Träger brauchen, denn sie existieren auch außerhalb der menschlichen Vorstellungswelt. Früher war das "in Stein meißeln" üblich, heute ist sehr oft Papier der Träger der Wahl (z.B. als Buch oder Aufsatz), im Rahmen der Informatik sind aber andere Träger notwendig. Vor allem solche, die schnell, leicht und immer wieder beschrieben werden können. Ein solches Mittel, auf dem Daten aufbewahrt und auch transportiert werden können, heißt Datenträger. Die Entwicklung ist hier, genauso wie in der sonstigen IT, sehr dynamisch. Heute werden Festplatten mit bis zu 20 Terabyte Daten und sehr kurzen Zugriffszeiten zu erschwinglichen Preisen angeboten.
Kapitel 22 gibt einen Überblick zu den aktuell genutzten Datenträgern
Dauerhaft, flüchtig, nur zum Transport
Datenträger können Daten dauerhaft speichern, z.B. auf Magnetplatten, in einem Solid State Drive (SSD), auf optischen Speichern (DVD, Blue Ray, CD-ROM). Oder sie nur vorübergehend festhalten (die "flüchtigen", aber schnellen Speicher bei der Informationsverarbeitung rund um die CPU) bzw. sehr kurz abbilden, d.h. nur während eines Transports bewahren (z.B. elektromagnetische Schwingung, Gleichstromimpuls).
2.2 Klassifizierung von Daten
Es gibt Daten in unendlicher Vielfalt, wie es eben auch Informationen aller Art gibt. Alle diese Daten werden in Datenbanken gespeichert. Hier nun einige Definitionen grundsätzlicher Natur und aus dem Umfeld betrieblicher Anwendungsbereiche.
Formatierte Daten
Daten, die zur maschinellen Verarbeitung in einem fest vereinbarten Aufbau geordnet sind, bezeichnet man als formatierte Daten. Dabei erhalten sie eine Struktur (in Feldern und Sätzen) und werden zusammenfassend in Dateien und Datenbanken abgelegt. Vgl. dazu Kapitel 20 und 21.
Unformatierte Daten
Daten, die über keine solche formale Struktur verfügen, nennt man unformatierte Daten. Das wichtigste Beispiel dafür ist Text, eine Aneinanderreihung von Buchstaben, Ziffern und Sonderzeichen zu Wörtern und Sätzen, die nur durch unsere Sprachkompetenz erzeug- und verstehbar sind. Es wird allerdings schon lange an textverstehenden Programmen gearbeitet, erste Erfolge sind erzielt. Zum Beispiel bei der Sprachsteuerung in Kraftfahrzeugen oder bei Diktiersystemen, die gesprochenen Text in Dateien niederschreiben.
Die folgenden Definitionen sind im Umfeld von Informationssystemen von Organisationen (insbesondere Unternehmen) üblich (vgl. [Mertens 2013] für eine vertiefte Betrachtung):
• Nach dem Inhalt: Nutzdaten, Steuerdaten
• Bezüglich statischer und dynamischer Aspekte: Zustandsorientierte und abwicklungsorientierte Daten
• Nach dem Verwendungszweck: Stammdaten, Bestandsdaten, Änderungsdaten, Bewegungsdaten
• Nach der Stellung im Verarbeitungsprozess: Eingabedaten, Ausgabedaten
Nach dem Inhalt
Nutzdaten. Daten, die Phänomene der betrieblichen (unternehmerischen, organisationellen) Anwendungsbereiche beschreiben, heißen Nutzdaten. Mit ihnen arbeiten die betrieblichen Anwendungssysteme. Sie werden unterschieden von den Steuerdaten, die für die Steuerung der rechnerinternen Verarbeitungsprozesse benötigt werden.
Bezüglich statischer und dynamischer Aspekte
Zustandsorientierte Daten. Damit sind Daten gemeint, die den Zustand einer Organisation zu einem Zeitpunkt beschreiben. Angaben über einen Auftrag, also etwa die Auftragsnummer, der Name und die Anschrift des Auftraggebers, bestellte Mengen, geforderter Liefertermin usw. und Informationen über die Kapazitäten, etwa Auslastung der vorhandenen Maschinen, einsetzbares Personal usw. beschreiben den Zustand des Betriebs. Es sind zustandsorientierte Daten, die eine gewisse zeitliche Gültigkeit haben. Die Anschrift des Auftraggebers wird sich normalerweise nicht so schnell ändern und auch der Liefertermin oder die bestellte Menge bleiben zumindest während der Gültigkeit des Auftrags stabil. Erst wenn der Auftrag geändert oder ein neuer Auftrag gestellt wird, verlieren diese Angaben ihre Gültigkeit und müssen angepasst werden. Der Zustand des Auftrags und damit der des Betriebs verändern sich.
Abwicklungsorientierte Daten. Daten, die Aktionen oder Ereignisse beschreiben, die zustandsorientierte Daten verändern, heißen abwicklungsorientierte Daten. Die Entscheidung, Sonderschichten einzuführen, würde über solche Daten dargestellt werden, also die Einteilung von Mitarbeitern zu den einzelnen Schichten. Damit steigt (verändert sich) die verfügbare Kapazität des Betriebs.
Nach dem Verwendungszweck
Stammdaten. Stammdaten sind zustandsorientierte Daten, die der Identifizierung, Klassifizierung und Charakterisierung von Sachverhalten dienen und die unverändert über einen längeren Zeitraum hinweg zur Verfügung stehen. Sie ändern sich nicht oder nur sehr selten.
Bestandsdaten. Anders sieht es aber mit dem Lagerbestand der Artikel, dem Kassenbestand, dem Umsatz oder dem Resturlaub von Mitarbeitern aus. Sie werden oftmals, von Monat zu Monat, variieren. Diese werden Bestandsdaten genannt. Sie sind zustandsorientierte Daten, welche die betriebliche Mengen- und Wertestruktur kennzeichnen und durch das Betriebsgeschehen systematischen Änderungen unterworfen sind.
Änderungsdaten. Änderungsdaten sind abwicklungsorientierte Daten, die fallweise eine Änderung von Stammdaten auslösen. So sind beispielsweise eine neue Telefonnummer, Angaben über neue oder auslaufende Artikel oder Änderungsmitteilungen von Lieferantenadressen Änderungsdaten. Ihre Verarbeitung führt zu einer Aktualisierung der jeweiligen Stammdatensätze.
Bewegungsdaten. Bewegungsdaten sind abwicklungsorientierte Daten, die Bestandsdaten verändern. Sie stellen den größten Teil der anfallenden Daten und entstehen immer wieder neu durch die betrieblichen Leistungsprozesse. Für die laufende Bearbeitung von Geschäftsvorfällen werden sie gespeichert, nach einer gewissen Zeitspanne können sie jedoch wieder aus den Datenbanken entfernt werden, da sie nur für kurze Zeit aktuell sind. Bewegungsdaten sind beispielsweise Warenlieferungen, Warenentnahmen, Ein- oder Auslagerungen, Rechnungsbegleichungen oder Kontobewegungen.
Obiges kann die Vielfalt und den Aufbau dieser Daten nur andeuten. Einen vertieften Einblick geben die einschlägigen Bücher aus der Wirtschaftsinformatik, z.B. die Bücher von Mertens zur Integrierten Informationsverarbeitung (vgl. [Mertens 2013]).
Alle oben beschriebenen Daten haben eines gemeinsam, sie bestehen aus Zeichenfolgen, die aus einem Zeichenvorrat nach bestimmten Regeln erzeugt werden.
2.3 Zeichen, Zeichenvorrat
Zeichen (Symbole) sind Elemente zur Darstellung von Informationen. Ein Zeichenvorrat (Alphabet) ist die Menge aller vereinbarten oder verfügbaren Zeichen für eine Darstellung von Informationen. Im einfachsten Fall definiert man die Menge der Zeichen durch das Aufzählen ihrer Elemente, z.B. so:
• Ziffern von 0 bis 9
• Buchstaben von a bis z und A bis Z
• Sonderzeichen: .,?! _ -+* usw., aber auch
• Farben, z.B. schwarz, weiß, rot, grün, blau usw., oder
• Schuhgrößen, z.B. 36 bis 46
Man unterscheidet
• numerische Daten, die aus Ziffern und gegebenenfalls einem Vorzeichen gebildet werden.
• alphabetische Daten, die nur aus Buchstaben gebildet werden.
• alphanumerische Daten, die aus beliebigen Zeichen (Ziffern, Buchstaben und Sonderzeichen) gebildet werden.
Grafische Daten, Akustische Daten
Es gibt aber auch Daten, die nicht aus einzelnen Zeichen zusammengesetzt sind, z.B. Videos, Bilder und Töne. Sie können unter den Stichworten
• grafische Daten, die Grafiken bzw. Bilder entweder über einzelne Bildpunkte mit den dazugehörenden Koordinaten oder über Vektoren beschreiben, und
• akustische Daten wie Töne, gesprochene Worte usw.
zusammengefasst werden.
Daten im Internet
Es gibt auch andere. Zum Beispiel im Internet, wo unsere Daten inzwischen intensiv ausgewertet werden. Da sind natürlich auch Bilder, Videos und Attribute dabei (Name, Alter, usw.), aber auch Beziehungsdaten, die man im SocialWeb erzeugt ("mag ich, mag ich nicht").
Fachinformationsdatenbanken
Ein Bereich, der von Informatik und Wirtschaftsinformatik beharrlich übersehen wird, die Fachinformationsdatenbanken, verwaltet schon seit Jahrzehnten weitere Arten von Daten. Die Vielfalt ist sehr groß. Die wichtigsten Datenarten und Datenbanktypen:
• Dokumente in Dokumentendatenbanken (auch Faktendatenbanken) zur Verwaltung beliebiger Dokumente.
• Bibliographische Information in Bibliographischen Datenbanken
• Volltexte in Volltextdatenbanken zur Verwaltung von Texten
• Zeitreihen in Statistischen Datenbanken
• Statistische Datenbanken mit Merkmalsräumen
• Naturwissenschaftliche Daten aller Art in entsprechenden Datenbanken zu Messwerten, Kernresonanzspektren, usw.
• Chemische Strukturformeln in Chemiedatenbanken
Ein Beispiel für einen Anbieter solcher Datenbanken ist das FIZ Karlsruhe. Vgl. für einen Überblick
https://www.fiz-karlsruhe.de/de/ produkte-und-dienstleistungen/produkte-dienstleistungen
2.4 Attribute
Die meisten der oben beschriebenen Daten stellen Eigenschaften von Ojekten und Beziehungen dar. Diese Eigenschaften sind es auch, die in Datenbanken erfasst werden. Für Datenbankzwecke werden sie etwas formaler gefasst und Attribute genannt.
Attributbasierte Datenbanken
Ein großer Teil des klassischen Datenbankgeschehens beruht tatsächlich auf Attributen. Es gibt auch andere Informationen in anderen Datenbanken, aber in wichtigen Bereichen liegen attributbasierte Datenbanken vor, die meist als Relationale Datenbanken realisiert sind. Vor allem in den Unternehmen und sonstigen Organisationen. Mit Hilfe von Attributen wird also die Information erfasst, die in der Datenbank gespeichert wird. Etwas konkreter und auf die heutige Datenbanktechnologie bezogen: Durch sie werden die zu erfassenden Objekte und Beziehungen (vgl. die Abschnitte 3.2 und 3.3) identifiziert und beschrieben. Außerdem erfolgt mit ihrer Hilfe dann auch die Abfrage der Datenbestände. SQL, die Abfrage-, Auswertungs- und Verwaltungssprache für relationale Datenbanken baut vollkommen auf Attributen auf (vgl. zu SQL Kapitel 19).
Struktur von Attributen
Wie sind nun diese Attribute strukturiert? Sie besitzen eine Bezeichnung, verschiedene Attributsausprägungen und Objekte oder Beziehungen, die sie beschreiben. Betrachten wir einige Beispiele:
• Widmer, Maier, usw. als Namen von Angestellten in einem Unternehmen
• Schwarz, weiß, grau, rot, … als Farben von Autos
• Männlich, weiblich als Geschlecht von Katzen
• 126 als Messwert des Blutzuckers bei Diabetikern
• 5, 10, 20, 50, … als Dauer von Ehen in Jahren
• 450,00 Euro als Preis eines Datenbanksystems bei einem bestimmten Händler
• 5000,00 Euro oder ein anderer positiver Betrag als Gehalt von Menschen
• 10050, 10051, … als Personalnummer von Angestellten
• 1,7 oder eine andere Zahl zwischen 1 und 5 als Note von Hochschulklausuren
Alle unterstrichenen Wörter: Name, Farbe, Geschlecht, Blutzucker, Ehedauer, Gehalt, Personalnummer und Note sind Beispiele für Attributsbezeichnungen.
Alle kursiv gesetzten Wörter und Zahlen sind Beispiele für Attributsausprägungen, d.h. von Werten, die ein Attribut annehmen kann. Die Zahl von Ausprägungen muss mindestens 2 sein (zum Beispiel bei Geschlecht), sie kann einige umfassen (Farbe von Autos) oder viele (Namen, Messwerte).
Attribute können bestimmte Werte annehmen, diese werden Attributsausprägungen genannt.
Objekte
Alle fett gesetzten Wörter: Angestellte, Autos, Katzen, Diabetiker, Ehen, Datenbanksysteme, Menschen, Hochschulklausuren bezeichnen Objekte und Beziehungen (im allgemeinsten Sinn). Diese werden durch die Attribute und ihre Ausprägungen beschrieben. Sie müssen angegeben werden, da sonst nicht klar ist, worauf sich die Attribute beziehen. Dieser Zusammenhang zwischen Attributsbezeichnungen, -ausprägungen und Objekten / Beziehungen ist grundlegend und wie folgt:
• Attribute haben eine bestimmte Menge von Attributsausprägungen.
• Objekten / Beziehungen werden Attribute zugeordnet
• Ein Objekt hat für jedes Attribut eine gültige Attributausprägung, manchmal auch mehrere (vgl. zu letzterem das Attribut Hobby in der Tabelle unten).
Vgl. hierzu das mit derselben Aufgabe bedachte (Zuweisung von Eigenschaften) semantisch ärmere Konzept der Key/Value-Tupel. Hier beschrieben in den Abschnitten 24.8 und 24.10.
Wenn man also, ganz am Anfang der Datenmodellierung und bei der Analyse eines Anwendungsbereichs etwas wahrnimmt und erfassen möchte, muss man zuerst entscheiden, ob es ein Attribut, eine Attributsausprägung oder ein Objekt / ein Beziehung bezeichnet. Oder etwas ganz anderes: Video-, Audiosequenz, chemische Strukturformel, Beziehungsdaten aus dem Social Web, usw.
Dieses "etwas" wird auch als Realweltphänomen bezeichnet, d.h. alles, was wir mit unserer körperlichen und geistigen Ausstattung als Menschen wahrnehmen können; z.B. einen AUDI A6, die Katze Miezi, die telefonische Bestellung des Kunden Kaiser, die mündliche Prüfung der Studierenden Müller. Hier stoßen wir an biologische und erkenntnistheoretische Fragen, die, was letztere angeht, z.B. in der sog. Konzeptionellen Datenmodellierung (Kapitel 3) oder "davor" in der Erkenntnistheorie, Psychologie, usw. behandelt werden.
"Etwas" ist Attribut
Erkennen wir etwas als Attribut, dann müssen wir die Ausprägungen suchen oder auch festlegen. Außerdem muss geklärt werden, auf welche Objekte es sich bezieht. Dies ist wichtig, weil Attributsbezeichnungen das Attribut alleine nicht definieren. Z.B. kann ein Attribut Größe sich auf Menschen, Tiere oder ein materielles Gut beziehen. Auch die grundsätzliche Entscheidung, ob etwas Attribut ist, ist nicht immer so einfach wie bei Gehalt oder Personalnummer von Angestellten. Liegt z.B. Programmiersprache (PS) vor, als Attribut, das die Programmiersprachenkompetenz von Entwicklern in einem Softwarehaus festhält, wird es schwieriger. Dann muss wirklich entschieden werden, ob diese Information als Attribut von Angestellten behandelt wird oder ob es selbst zum Objekt wird. Diese Frage ist Gegenstand von Kapitel 3.
"Etwas" ist Attributsausprägung
Wird es als Attributsausprägung erkannt, muss man die Bezeichnung des Attributs und die übrigen Ausprägungen suchen oder festlegen und kann dann auch das zugehörige Objekt ableiten. So kann man von einfließenden Geldbeträgen, z.B. in einem WebShop, auf Rechnungssumme und die dazugehörigen Rechnungen und Kunden schließen. Oder von der Zahl 1,7 auf Noten und die zugehörigen Klausuren. Oder von einer Ortsangabe auf ein Attribut Ort in Adressangaben.
"Etwas" ist Objekt oder Beziehung
Wird es als Objekt oder Beziehung erkannt, müssen die einschlägigen Attribute und ihre Ausprägungen gesucht bzw. festgelegt werden. Z.B. wenn im Rahmen eines Projekts zur Datenbankerstellung dem Modellierer Rechnungen, Lieferscheine und Produkte vorgelegt werden.
Anfangsfragen
Damit stellt sich zu Beginn jeder Datenmodellierung, bei der Betrachtung des Weltausschnitts oder Anwendungsbereichs, immer die Frage: Was beschreibt, was wird beschrieben?
In einer mehr technischen Sprache: Welches sind im Anwendungsbereich die Objekte, welche Attribute haben diese und welche Ausprägungen haben die Attribute.
Domain und entity. In der angelsächsischen Literatur wird die Menge der Attributsausprägungen eines Attributs mit domain bezeichnet, weshalb sich in der deutschsprachigen Literatur auch die Bezeichnung Domäne findet.
Eigenschaften von Attributen
Attribute können nach verschiedenen Kriterien unterschieden werden. Eines davon hat auch im Zusammenhang mit Datenbanken Bedeutung und soll deshalb hier betrachtet werden. Es betrifft die Art und Weise, wie das jeweilige Attribut beschreibt. Unterschieden werden dabei:
• identifizierende Attribute
• qualitative Attribute
• rangskalierte Attribute
• quantitative Attribute
Identifizierende Attribute sind eindeutige Bezeichnungen der Objekte bzw. Beziehungen. Oft z.B. Namen (z.B. von Datenbanksystemen, von Unternehmen) oder eindeutige Nummern (z.B. Personalnummern oder Artikelnummern). Ihr Kennzeichen ist die Eindeutigkeit, d.h. jedes Objekt bzw. jede Beziehung wird durch eine andere Attributsausprägung benannt. Personennamen gehören hier im übrigen meist nicht dazu, auch nicht Postleitzahlen, wenn es um Orte geht (da viele Orte mehrere Postleitzahlen haben).
Attribute dieses Typs dienen im Datenmodell - in Bezug auf ihre Objekte / Beziehungen - als Schlüssel, d.h. als identifizierende Information.
Dasselbe Attribut kann für die einen Objekte identifizierend sein und für die anderen nicht. Nehmen wir als Beispiel die Bezeichnungen von Programmiersprachen (C, COBOL, FORTRAN, usw.). Für die Objekte Programmiersprachen wäre dies ein identifizierendes Attribut, für Angestellte, wo jedem Angestellten die Programmiersprachen zugeordnet werden, die er oder sie beherrscht, ein beschreibendes (qualitatives) Attribut.
Schlüssel: Definition 1. In den folgenden Kapiteln wird es noch mehrmals um Schlüssel gehen, hier ein Erstkontakt. Ist also ein Attribut so konstruiert, dass es für jedes Objekt / jede Beziehung eine andere Ausprägung hat, dann wird es Schlüssel (oder: Schlüsselattribut) genannt. Der Schlüssel dient somit zur eindeutigen Identifizierung eines Objekts / einer Beziehung. So ist z.B. die Personalnummer ein Schlüsselattribut für Angestellte. Der Name kann es nicht sein, er ist nicht eindeutig (meist gibt es mehrere Angestellte mit den Namen Maier, Müller oder Schulze). Bei der Datenbankabfrage dienen Schlüssel zur Identifizierung einzelner Objekte und Beziehungen.
Während obiger Attributstyp identifizierenden Charakter hat, dienen die folgenden drei der weitergehenden Beschreibung der Objekte bzw. Beziehungen. Sie beruhen auf dem Gegensatz qualitativ/quantitativ, wie er aus der Statistik (genauer: der statistischen Messtheorie) bekannt ist.
Qualitative Attribute beschreiben die Objekte nicht-numerisch ("qualitativ"). Sie dienen der Differenzierung zwischen Objekten und nicht dem "in Beziehung setzen", weshalb auch in der Regel mehrere Objekte dieselbe Attributsausprägung aufweisen. Einige Beispiele hierzu:
• Geschlecht , Name , Vorname für Menschen
• TypDBS (Datenbanksystemtyp), Produzent eines Datenbanksystems für Datenbanksysteme
• Abteilung (szugehörigkeit), PS (beherrschte Programmiersprachen), Gehalt für die Angestellten eines Unternehmens
• Bezeichnung für technische Geräte aller Art
Bei der Datenbankabfrage dienen qualitative Attribute der inhaltlichen Festlegung der Suchmenge. Z.B. indem in einer entsprechenden Datenbank nach allen Angestellten gesucht wird, die in der Abteilung "IT" arbeiten und die fähig sind in Java zu programmieren. In Beziehung gesetzt werden können diese Attribute nur durch den Gleich/ungleich-Operator. Also zum Beispiel:
• Geschlecht='w' (Auswahl aller weiblichen Angestellten)
• TypDB S='RDB S' (Auswahl aller Relationalen Datenbanksysteme)
• PS='Java' (Wer kann Java?)
• Abteilung='IT' (Auswahl aller Angestellten in der IT-Abteilung)
In der Regel haben bei qualitativen Attributen mehrere Objekte dieselbe Attributsausprägung.
Rangskalierte Attribute drücken eine Rangfolge unter den Objekten / Beziehungen aus. Z.B. durch Noten oder Einschätzungen (schlecht, gut, hervorragend). Oft sind die Ausprägungen numerisch, allerdings kann mit ihnen nicht rechnerisch gearbeitet werden. Bei ihnen ist der Abstand zwischen den Werten nicht interpretierbar, nur die Rangfolge: 1. Preis, 2. Preis, usw. Nicht mal ein Mittelwert ist da eigentlich zulässig, wird aber oft berechnet.
Quantitative Attribute beschreiben die Objekte und Beziehungen numerisch und zwar so, dass die Ausprägungen verglichen werden können und dass man mit ihnen rechnen kann. Einige Beispiele:
• Preise , MaxDS (maximale Anzahl Datensätze) für Datenbanksysteme
• Alter , Gehalt für die Angestellten eines Unternehmens
• Preis für Lagerartikel (eines WebShops)
Diese Attributsart dient bei der Abfrage ebenfalls der inhaltlichen Festlegung der Suchmenge, z.B., wenn Datenbanksysteme mit einem Preis kleiner 3000,-- Euro gesucht werden. Die Ausprägungen quantitativer Attribute können - zusätzlich zum Gleich/Ungleich-Operator" auch mit dem Kleiner-/Größer-Operator in Beziehung gesetzt werden. Wichtiger ist, dass man mit den Ausprägungen quantitativer Attribute rechnen kann. In der Grundausstattung von SQL sind dann auch gleich Funktionen für die Aufsummierung, die Mittelung, das Finden des kleinsten/größten Werts, usw. enthalten.
In der Regel haben bei quantitativen Attributen mehrere Objekte dieselbe Attributsausprägung.
Quantitativ?
Nicht alles, was quantitativ erscheint, ist auch so. Zum Beispiel Personalnummern. Das Kriterium der Unterscheidung qualitativer und quantitativer Attribute ist einfach: Dient die Information - alphanumerisch oder numerisch - nur zur Unterscheidung der Objekte, ist sie qualitativ. Dient sie auch zu Berechnungen, ist sie quantitativ.
Attribute vs. Datentypen
Attribute als solche haben mit den konkreten Datenbanksystemen noch nichts zu tun. Dort stehen dann für die Attribute die Datentypen zur Verfügung (wie Integer, Real, Date, usw.). Vgl. hierzu Kapitel 18. Gleiches gilt für moderne Informationstypen wie Audio, Video, usw., die in Datenbanksystemen meist durch Binary Large Objects (BLOBs) realisiert werden. Der Begriff Attribut ist auf der Modellebene angesiedelt (auf der wir uns hier befinden), der Begriff Datentyp auf der Ebene der physischen Datenorganisation.
Die folgende Abbildung fasst die Ausführungen zu Attributen zusammen.
Abbildung 2.4-1: Das Attributkonzept - zusammengefasst