Donnerstag, 28. März 2024

Archiv

Datenbanken
Big Data macht neue Konzepte notwendig

Datenbanken bilden die Basis für viele IT-Anwendungen, die wir im Alltag nutzen, zum Beispiel des Online-Nachschlagewerks Wikipedia. Die Schemata, mit denen die Datenbanken Daten sortieren, sind aber oft unflexibel. Das soll sich mit einer veränderten Programmiersprache ändern.

Von Pia Grund-Ludwig | 19.12.2015
    Wikipedia
    Wikipedia, das Online-Nachschlagewerk arbeitet wie viele andere Anwendungen mit einer Datenbank im Hintergrund. (imago stock & people)
    Fünf Tage lang ging es diese Woche auf den IT-Tagen in Frankfurt um das Thema Datenbanksysteme, oft auch abgekürzt als Datenbanken bezeichnet. Zu den Kernfragen gehörte, wie sich Datenbanken beschleunigen lassen. Als "normaler" Computernutzer kommt man mit Datenbanken kaum direkt in Kontakt, aber sie bilden die Basis für viele IT-Anwendungen, die wir im Alltag nutzen. So ist das Wissen im Online-Nachschlagewerk Wikipedia über ein Datenbanksystem organisiert, oder die Abfrage von Kundendaten in einem Online-Shop. In Datenbanksystemen legen Programmierer fest, wie und wo Daten gespeichert und wie sie am besten von Anwendungen gefunden werden. Meist verwenden sie dazu heute relationale Datenbanksysteme, die die Daten in vorab definierten Schemata ablegen. In die müssen die Daten passen. Diese Schemata sind aber nicht besonders flexibel und für manche Anwendungen ein Handicap, zum Beispiel für soziale Netzwerke mit ihren enormen und sich schnell ändernden Datenmengen. Da wachsen diese relationalen Datenbanken nicht schnell genug mit, sie können nicht skalieren. Unternehmen wie Twitter, Facebook und Google haben deshalb als erste Alternativen zu relationalen Datenbanken gesucht:
    "Einer der Gründe ist, dass diese Firmen als allererste Skalierungsprobleme hatten und dafür Lösungen gesucht haben. Die meisten Firmen sind aber nicht Facebook, Google oder Twitter. Das heißt, die Probleme, die dort gelöst werden, müssen die meisten von uns gar nicht lösen. Es gibt aber Ansätze in der Schema-Flexibilisierung als auch in der Verteilung und Skalierbarkeit, die für viele Anwendungsfälle vorteilhaft sind. Deswegen wurden die Konzepte, die bei den Großen aufbereitet wurden, jetzt in breiterem Feld eingesetzt."
    Nachteile relationaler Datenbanken umgehen
    Philipp Krenn auf den IT-Tagen in Frankfurt. Krenn beschäftigt sich als IT-Trainer beim österreichischen Unternehmen Ecosio mit den neuen Datenbankkonzepten. Zu den Unternehmen, die Alternativen suchen, gehören Banken oder Versicherungenmit großen Datenmengen, aber auch Verlage. Verlage wollen ihre Datenbestände einfacher neu sortieren und zu neuen Produkten zusammenfügen. Ein Beispiel auf der Frankfurter Tagung war eine Anwendung des Duden-Verlags, die Auszüge aus dem Duden für unterschiedliche thematische Bereiche als Anwendung für das iPhone aufbereitet. Einer der Trends, mit denen die IT-Branche auf diese Anforderung reagiert, Inhalte schneller neu zu sortieren sind so genannte No-SQL-Datenbanken. SQL ist eine Datenbanksprache und beschreibt die Art und Weise, wie Informationen in bislang üblichen relationalen Datenbanken abgelegt und gesucht werden. No-SQL steht nun nicht für die komplette Abkehr von SQL, sondern für "not only SQL", nicht nur SQL:
    "Die No-SQL-Datenbanken umfassen zwei Dinge, die sie sehr unterscheiden von relationalen Datenbanken. Das eine ist das Verteilungsmodell, dass ich auf mehr Rechnern meine Datenbank betreiben kann und dass das starre Schema, das ich einer relationalen Datenbank habe, so nicht mehr vorkommt, sondern es gibt Ansätze für das flexiblere Schema."
    Es geht darum, diese Nachteile relationaler Datenbanken zu vermeiden.
    Noch gibt es Einwände gegen die neuen Ideen
    "Die relationalen Datenbanken wird es noch sehr lange geben. Es kommen nur die No-SQL-Datenbanken dazu, die ein bisschen einen anderen Anwendungsfall versuchen abzudecken."
    Zum Beispiel gehört es zu ihren Stärken, Zusammenhänge zwischen vorliegenden Daten zu erkennen und zu nutzen. Das funktioniert im Prinzip auch mit relationalen Datenbanken, aber in vielen Fällen nicht schnell genug.
    NoSQL sei ...
    "... eine Möglichkeit, die Limitierung von SQL-Systemen in einer kurzen Zeit aufzubrechen, ..."
    ... ergänzt Mario Briana. Er ist Softwarearchitekt bei Marklogic.
    "Das passiert bei Banken im Reporting oder in anderen Situationen, wo man eine 360- Grad-Ansicht der Kundendaten haben möchte, was mit den herkömmlichen Systemen zwar möglich ist, aber dann häufig sehr viel Zeit und sehr viele Ressourcen verbraucht."
    Noch gibt es aber auch Einwände gegen die neuen Ideen. So muss für einzelne Projekte immer noch bewiesen werden, dass die aus relationalen Datenbanken gewohnte Zuverlässigkeit und Nachvollziehbarkeit von Transaktionen und Veränderungen der Datenbasis gegeben ist.