Einsatz von Datenbanken
Datenbanken haben sich als fester Bestandteil von IT-Landschaften etabliert. Wo auch immer Software-Applikationen zum Einsatz kommen und auf eine gemeinsame, integrierte Datenbasis zugreifen, spielen sie eine wesentliche Rolle.
In der traditionellen Datenverarbeitung wurden spezielle Dateiformate bzw. -systeme für Anwendungen entwickelt, die auch nur von den entsprechenden Programmen verarbeitet werden konnten. Das führte zu einer engen Kopplung zwischen Programm und Daten. Die Übertragung in andere Programme war nur manuell oder mit sehr hohem Aufwand möglich.Eine Datenbank ermöglicht die dauerhafte, zentrale Speicherung von Daten und kann diese eigenständig verwalten. Das Speichern und Abfragen erfolgt mit einer speziellen Skriptsprache. Meist handelt es sich um Standard SQL oder einer herstellerspezifischen Abwandlung davon.
Dies trifft aber nur zu, wenn es sich um ein relationales Datenbanksystem handelt. Neben diesen gibt es u. a. Objektorientierte Datenbanken, Deduktive Datenbanken und Geodatenbanken.
Auch wenn im Allgemeinen von Datenbanken als Datenverwaltung die Rede ist, handelt es sich um ein Datenbanksystem. Dieses besteht aus einer Datenbasis (die Datenbank) und einem Datenbankmanagementsystem (DBMS). Letzteres führt die Anweisungen des Entwicklers aus, verwaltet und organisiert die Daten innerhalb der Datenbank.
Relationale Datenbanken zur Speicherung wichtiger Daten
Relationale Datenbanken haben sich in den letzten Jahren zum Standard entwickelt und sind die am weitesten verbreiteten Datenbanken weltweit. Sie ermöglichen eine strukturierte Ablage der Daten.
Für diese Datenbankgattung hat sich eine eigene Modellierungssprache Entity-Relationship-Diagram (ERD) herausgebildet, die über die Jahre weiter entwickelt wurde. Sie kommt bei der grafischen Modellierung der Sachverhalte zum Einsatz und wird bei der Überführung des Modells in das relationale Datenbankschema verwendet.
Relationale Datenbanken verwenden SQL, um Abfragen und Anweisungen durchzuführen. Dabei haben die unterschiedlichen Datenbankhersteller oft einen eigenen „Dialekt“ entwickelt, der sich in der Bezeichnung der Sprache (z. B. T-SQL, PL/SQL) widerspiegelt.
NoSQL Datenbanken zur Speicherung vieler Daten
Bei NoSQL Datenbanken handelt es sich um eine vergleichsweise junge Technologie. Im Gegensatz zu relationalen Datenbanken werden die Daten in einer weniger oder unstrukturierten Form abgelegt.
Sie werden dazu verwendet, Objekte mit ihren Attributen zu speichern, die beliebig befüllt sein können. Diese Speichertechnologie begann sich mit dem Big Data Hype zu etablieren. NoSQL Datenbanken ermöglichen es, große Datenmengen schnell zu speichern und auszuwerten.
Dabei wird auf die Konsistenz und Aktualität der Daten weniger Wert gelegt. Die Hauptaufgabe besteht darin, große und hochfrequente Daten schnell zu verarbeiten.
Vergleich von Relationalen und NoSQL Datenbanken
Vergleicht man beide Datenbanktechnologien, kann man sagen, dass relationale Datenbanken aufgrund von Speicherknappheit und teurer Speichermedien zum Standard avancierten. Durch die immer effizienteren Speicher gibt es dieses Problem der Speicherknappheit nicht mehr bzw. ist dieser sehr günstig zu erwerben.
Relationale Datenbanken sind für die schnelle Speicherung großer Datenmengen nicht geeignet, da Integritätsprüfungen und die Normalisierung zu viel Zeit bei der Verarbeitung beanspruchen. Für diesen Zweck eignen sich schnelle NoSQL Datenbanken besser und werden auch genau dafür eingesetzt.
Relationale Datenbanken gehören dennoch nicht per se der Vergangenheit an und sind da notwendig wo es auf Genauigkeit, Integrität, Aktualität und Nachvollziehbarkeit ankommt, wie beispielsweise bei Transaktionssystemen.
Vorteile von Datenbanken
Der Einsatz von Datenbanken verhindert Redundanzen (mehrfache Speicherung gleicher Informationen) und Inkonsistenzen (Probleme bei der Aktualisierung mehrfach gespeicherter Datensätze) in den Daten. Zudem wird die Programm-Daten-Abhängigkeit und Inflexibilität aufgelöst, da alle Programme eine zentrale Datenbasis verwenden.
DBMS besitzen bereits eine Vielzahl von Datenanalyse-Methoden zur Auswertung von Informationen. Die mächtige Skriptsprache SQL stellt Funktionen zur Berechnungen, Aggregationen und Sortierungen der Daten zur Verfügung.
Datenbankmanagementsysteme (DBMS) sind Abfrage-optimiert und können Daten in einem Bruchteil der Zeit auslesen, die andere Dateiformate (z.B. Excel, CSV) benötigen.