Datenbankmodelle
Datenbankmodelle sind das Gerüst nach welchem implementierte Daten gespeichert werden. Datenbankmodell sind abhängig vom Datenbankmanagementsystem.
Das ER-Modell als abstraktes Datenmodell und Datenmodellierungsinstrument zählt nicht zu den Datenbankmodellen.
Es gibt vier Hauptdatenbankmodelle, welche nach folgenden Adjektiven eingeordnet werden:
- netzwerkartig bzw. vernetzt
- hierarchisch
- objektorientiert
- relational
Aus diesen vier Hauptdatenbankmodellen sind einige Mischformen bzw. hybride Modelle, z.B. das objektrelationale Datenbankmodell oder relationale Netzwerk-Datenbankmodell, entstanden, welche die Eigenschaften der unterschiedlichen Datenbankmodelle kombinieren.
Das verbreiteste Datenbankmodell ist das relationale Datenbankmodell. Für kleine bis mittelgroße Softwareprojekte wird fast ausschließlich eine oder mehrere relationale Datenbanken verwendet. (mehr…)
Datensicherungsverfahren
Alle Datensicherungsverfahren haben den gleichen Zweck, sie dienen der Sicherung von Daten (Backup). Es gibt jedoch eine Unterscheidung der Datensicherungsverfahren in drei Datensicherungen, welche in ihrem Umfang unterschieden werden:
Vollständige Datensicherung
Werden sämtliche Daten gespeichert, handelt es sich um eine Vollsicherung. Diese könnte den gesamten Inhalt eines Datenträgers umfassen (inklusiver Betriebssystem etc.), oder ein bestimmter, abgegrenzter Datenbereich (z.B. eine Projektmappe oder ein Verzeichnis).
Vorteil: Eine vollständige Datensicherung ist unabhängig von anderen Datensicherungen.
Nachteil: Die Datensicherung ist ggf. sehr zeitintensiv und benötigt verhältnismäßig viel Datenspeicher. Geht die Datensicherung verloren, ist der Verlust enorm. Daher sollten Vollsicherungen redundant gehalten und an verschiedenen Orten archiviert werden.
Eine Vollsicherung ist jedoch unumgänglich und dient mindestens als Basis für die weitere Datensicherung.
Differenzielle Datensicherung
Es werden bei der differenziellen Datensicherung die aktuellen Daten mit den Daten dem Stand der letzten vollständigen Datensicherung abgeglichen. Der ersten differenziellen Datensicherung muss eine vollständige Datensicherung voraus gehen. Die differenzielle Datensicherung ist eine Teilsicherung.
Bei der differenziellen Datensicherung werden alle Daten gesichert, die sich seit der letzten Datensicherung geändert haben bzw. neu hinzugekommen sind.
Dabei sind der jeweiligen differenziellen Datensicherung die bereits durch andere differenzielle Datensicherungen gesicherten Daten unbekannt.
Jeder differenzielle Datensicherung umfasst daher mehr Daten als seine vorhergehende, sofern es eine gab und sich Daten seit der letzten Datensicherung geändert haben.
Vorteil: Eine vollständige Datensicherung und eine einzige (möglichst aktuelle) Teilsicherung nach dem Prinzip der differenziellen Datensicherung reicht für die Möglichkeit der vollständigen Datenwiederherstellung aus.
Nachteil: Datensicherung kann sehr groß werden und Dimensionen der letzten vollständigen Datensicherung annehmen oder diese überschreiten.
Der Nachteil gegenüber der inkrementellen Datensicherung tritt dann auf, wenn sich nie (oder nur bedingt) die gleichen Dateien ändern, sondern immer neue Dateien hinzukommen; Dann werden bei jeder Datensicherung die alten und die neuen Dateien gesichert.
Inkrementelle Datensicherung
Es werden bei der inkrementellen Datensicherung die aktuellen Daten mit den Daten dem Stand der letzten vollständigen Datensicherung oder Teilsicherung abgeglichen. Der ersten inkrementellen Datensicherung muss eine vollständige Datensicherung voraus gehen.
Vorteil: Die Datensicherung ist sehr klein und dementsprechend schnell geschehen.
Kommen ständig neue zu sichernde Dateien hinzu, werden nur die jeweils neuen (im Vergleich zur letzten Sicherung) Dateien gespeichert.
Ändern sich jedoch permanent die gleichen Dateien, hat die inkrementelle Datensicherung keinen Vorteil gegenüber der differenziellen Datensicherung.
Nachteil: Es werden alle Datensicherungen seit der letzten Vollsicherung benötigt, wenn alle Daten wieder hergestellt werden sollen. Geht eine Datensicherung verloren, handelt es sich um einen Teildatenverlust.
Datenbankmanagementsystem (DBMS)
Die Datenmenge einer Datenbank ist nicht nur oft sehr groß, sondern auch verteilt. Die Daten sind in verschiedenen Containern (Tabellen) vorliegend und möglicherweise sogar auf verschiedene Rechner oder gar Netzwerke verteilt. Die Daten werden von mehreren Benutzern aufgerufen, bearbeitet oder gelöscht.
Ein Datenbankmanagementsystem, kurz DBMS oder auch Datenbankverwaltungssystem, organisiert die Datenbankzugriffe (Transaktionen) und verhindert so Probleme, die bei der Arbeit mit Datenbanken auftreten können.
Darstellungsprinzip
Eine Datenbank ist eine Sammlung an Daten, abstrahiert in mehreren Dateien. Datenbanken sind abstrakt und für den Menschen nur schwer, am besten aber bildlich vorstellbar. Ein DBMS stellt die Datenbank durch Objekte dar, es zeigt die Beziehungen der Daten zueinander und die Daten lassen sich auch in der Objektdarstellung bearbeiten.
Schnittstellenprinzip
Ein DBMS trennt im Grunde die Datenbank-Benutzer von der Datenbank. Die Benutzer sprechen die Datenbankgrundsätzlich über das DBMS an, so dass keine Transaktion nicht von der DBMS z.B. auf Validität (Gültigkeit der eingegebenen Daten) geprüft wird.
Des weiteren lassen sich mit einem DBMS häufig Datenbank- und Speichereinstellungen (z.B. in welcher Kodierung Texte abgespeichert werden sollen) benutzerfreundlich und ohne Datenbankabfragesprachen (z.B. SQL) einstellen. Die Benutzer werden daher weitgehenst von Programmiersyntax verschont und verwalten die Daten über ergonomische Benutzeroberflächen.
Sicherheit und Zugriffsbeschränkung
In einem Unternehmen, welches eine Datenbank für Kunden- und Zulieferdaten hat, ist es mit Sicherheit erwünscht, dass nicht jeder Benutzer Zugriff auf die gesamten Daten hat und diese beliebig verändern kann. Beispielsweise sollte ein Mitarbeiter der Abteilung “Einkauf” nicht die Rechnungsdaten der Endkunden verändern, vielleicht nicht einmal einsehen, dürfen. Die Rechnungsdaten dürfen nur die Mitarbeiter der Abteilung “Verkauf/Vertrieb” bearbeiten. Die Geschäftsführung soll aber alle Daten einsehen und verändern dürfen. Vielleicht gibt es auch Zulieferer oder Endkunden, die bestimmte Daten aus der Datenbank lesen oder sogar verändern dürfen.
Ein DBMS verwaltet Zugriffsrechte, die von den Datenbank-Administratoren eingerichtet werden. So müssen nicht alle Daten der gesamten Belegschaft oder Dritten anvertraut werden müssen. Da es diesbezüglich sehr viele strenge Rechtsvorschriften gibt, ist ein DBMS mit ausgereiftem Rechtevergabesystem sogar Pflicht!
Ein weiterer Punkt ist die Nachvollziehbarkeit von Datenzugriffen. So kann nachvollzogen werden, welcher Benutzer wann und welche Daten angelegt, verändert oder gelöscht hat.
Inkonsistenz bei Redundanz
Datenbanken sollten grundsätzlich keine redundanten Daten enthalten. Bei Datenbanken, die besonders schnell sein müssen, können diese jedoch in Kauf genommen worden sein. Oder die Datenbank ist derart verteilt oder gesplittet, dass benötigte Daten an einem Zugangspunkt nicht immer zur Verfügung stehen (z.B. im zeitweisen Offline-Betrieb) und die Daten daher zusätzlich lokal angelegt werden und somit datenbankglobal redundant sind.
Bei solchen Redundanzen muss das DBMS eine Inkonsistenz verhindern oder ggf. nachträglich korrigieren, so dass Datensätze mit gleichen Inhalt immer abgeglichen werden.
Schutz vor Datenverlust
Sollte der Schreibzugriff auf Daten in der Datenbank fehlgeschlagen sein, droht – abhängig von der Datenbank – Datenverlust. Auch andere Gründe, z.B. ein Update, Upgrade oder ein Hardwareausfall, können zum Datenverlust führen. Ein gutes DBMS sorgt nicht nur für ein benutzerfreundliches Backup (Datensicherung), sondern prüft Backups auch auf Aktualität und führt nötigenfalls periodenweise oder unmittelbar vor einem kritischen Zugriff in Eigenregie ein Backup aus.
Mehrbenutzer-Probleme
Daten werden in der Regel von mehreren Benutzern verwaltet. Auf die Kundendaten können z.B. die Mitarbeiter der Rechnungs-, Support-, Vertriebs- und der Reklamationsabteilung zugreifen. Kritisch werden die Transaktionen, wenn mehrere Benutzer zeitgleich die selben Daten bearbeiten wollen.
Ein DBMS hat zur Aufgabe, Daten zu sperren, die in Bearbeitung sind und idealerweise Datenänderungen zwischenzuspeichern, abzugleichen und zu speichern.
Gewährleistung der Integrität
Ein DBMS kontrolliert bei Datenzugriff die Datenintegrität. So kann z.B. kein neuer Rechnungsdatensatz angelegt werden, ohne eine Kundennummer. Wird bei Eintragung von Rechnungsdaten die Kundennummer ausgelassen, wird der Datensatz nicht in die Datenbank gespeichert. Wird eine Kundennummer angegeben, prüft das DBMS, ob die Kundennummer (und damit auch der Kundendatensatz) existiert. Existiert kein Kunde mit der angegebenen Kundennummer, kommt wiederum eine Fehlermeldung durch das DBMS. So können nur Datensätze in die Datenbank gelangen, die komplett in einem Zusammenhang einzubringen sind. Eine Rechnungsdatensatz ohne Kunde ist ein wertloser Datensatz.
Umgekehrt soll auch kein Kundendatensatz gelöscht werden, welcher noch offene Rechnungen hat. Auch diese Prüfung wird vom DBMS durchgeführt und ist sehr wichtig, um die Integrität der Daten in der Datenbank zu gewährleisten.
Datenbanken – Hohe Priorität für die Zukunft
Experten sprechen heute von der Generation der Informationsgesellschaft, die mit den Heim-PC, den mobilen Endgräten und der Großrechnern vieler Firmenzentralen, vor ungefähr 3 Jahrzehnten ihren Aufbruch fand. Vor zwei Jahrzehnten waren die gespeicherten, persönlichen Daten einer Person noch recht überschaubar. Heute und in Zukunft ist eher von einer Informationsflucht zu reden. Das produzierende Gewerbe, Banken, Versicherungen, Möbelgeschäfte, Mietwagengesellschaften, Schulen, Vermieter, Behörden, Berater, Ärzte, Anwälte….. und noch viele Andere speichern und verwalten die Daten ihrer Kunden/Klienten/Patienten/Geschäftspartner.
Vor Jahrzehnten wurden z.B. die Versicherten-Daten der Krankenkarten auf Kärtchen im Karteikartensystem festgehalten. Dieses Karteikartensystem könnte bereits als Datenbank bezeichnet werden. Heute wird in jeder Krankenkasse mit digitalen Datenbanken eine weit größere Datenmenge verwaltet. Dabei haben die digitalen Datenbanksysteme die heutige Datenmenge erst möglich gemacht. Die Datenmenge wird zunehmend größer, die Datentechnologien leistungsfähiger und die dazugehörigen Rechtsvorschriften immer vielfältiger.
Kein mittelgroßes bis großes Unternehmen kann heutzutage noch auf ein großes Datenbanksystem verzichten. Die Datenbank alleine reicht jedoch noch lange nicht. Die Wirtschaft und Verwaltung benötigt gute Datentechnologien, ausgefeilte Datenbankverwaltungssysteme und -natürlich- auch qualifizierte Datenbank-Spezialisten.
Datenbanksysteme sind jedoch nicht nur für die Datenbank-Spezialisten interessant. Neben den meisten Wirtschaftsinformatikern werden auch viele Wirtschaftsingenieure nebenbei mit Datenbanken konfrontiert werden. Nicht umsonst ist die Lehre über Datenbanken und dem Datenbankmanagement fester Bestandteil in den Lehrplänen der meisten Hochschulen und oft auch für Studenten der Betriebswirtschaftslehre oder eines Ingenieurstudiengangs vorgesehen.