Video: Big Data und Advanced Analytics mit Microsoft Azure | Microsoft 2024
Nicht-relationale Datenbanken stützen sich nicht auf das für RDBMSs typische Tabellen- / Schlüsselmodell (relational Datenbankmanagementsystem). Kurz gesagt, Spezialdaten in der Big-Data-Welt erfordern spezielle Persistenz- und Datenmanipulationstechniken. Obwohl diese neuen Arten von Datenbanken einige Antworten auf Ihre Big-Data-Herausforderungen bieten, sind sie kein Express-Ticket für die Ziellinie.
Eine aufkommende, populäre Klasse nicht relationaler Datenbanken heißt nicht nur SQL (NoSQL). Ursprünglich stellten die Originatoren Datenbanken vor, die das relationale Modell und SQL nicht benötigten. Als diese Produkte in den Markt eingeführt wurden, wurde die Definition ein wenig gemildert und nun werden sie als "nicht nur SQL" angesehen, was wiederum der Allgegenwart von SQL zuwiderläuft.
Die andere Klasse sind Datenbanken, die das relationale Modell nicht unterstützen, sich aber auf SQL als primäres Mittel zur Manipulation der Daten verlassen. Obwohl relationale und nicht relationale Datenbanken ähnliche Grundlagen haben, wird durch die Art und Weise, wie die Grundlagen erreicht werden, die Differenzierung erzeugt. Nichtrelationale Datenbanktechnologien haben die folgenden Eigenschaften gemeinsam:
-
Skalierbarkeit: In diesem Fall bezieht sich dies auf die Fähigkeit, Daten über mehrere Datenspeicher gleichzeitig zu schreiben, ohne Rücksicht auf physikalische Einschränkungen der zugrunde liegenden Infrastruktur. Eine weitere wichtige Dimension ist die Nahtlosigkeit. Die Datenbanken müssen sich als Reaktion auf Datenflüsse erweitern und kontrahieren können und dies für die Endbenutzer unsichtbar machen.
-
Daten- und Abfragemodell: Anstelle der Zeilen-, Spalten- und Schlüsselstruktur verwenden nichtrelationale Datenbanken Spezialframeworks, um Daten mit einem erforderlichen Satz von Spezialabfrage-APIs zu speichern und so intelligent auf die Daten zuzugreifen.
-
Persistenzdesign: Persistenz ist immer noch ein kritisches Element in nicht relationalen Datenbanken. Aufgrund der hohen Geschwindigkeit, der Vielfalt und des Volumens von Big Data verwenden diese Datenbanken Differenzmechanismen zum Persistieren der Daten. Die leistungsstärkste Option ist "in memory", wobei die gesamte Datenbank im sehr schnellen Speichersystem Ihrer Server gespeichert ist.
-
Schnittstellenvielfalt: Obwohl die meisten dieser Technologien RESTful-APIs als "Go to" -Schnittstelle unterstützen, bieten sie auch eine Vielzahl von Verbindungsmechanismen für Programmierer und Datenbankmanager, einschließlich Analysetools und Reporting / Visualisierung.
-
Eventual Consistency: Während RDBMS ACID (Atomicity, Consistency, Isolation, Durability) zur Sicherstellung der Konsistenz von Daten verwendet, verwenden nicht relationale DBMS BASE.BASE steht für Basic Available, Soft State und Eventual Consistency. Eventuelle Konsistenz ist am wichtigsten, weil sie für die Konfliktlösung verantwortlich ist, wenn Daten zwischen Knoten in einer verteilten Implementierung bewegt werden. Der Datenzustand wird von der Software verwaltet und das Zugriffsmodell beruht auf der grundlegenden Verfügbarkeit.