Datenzugriffsgeschwindigkeit: Der Kampf um die Zukunft

Seit jeher beschäftigt sich die Menschheit damit, Informationen zu sammeln, zu analysieren und in irgendeiner Form zu speichern, um sie später an Nachkommen weiterzugeben. Die Evolution unseres Bewusstseins wurde größtenteils aufgrund dessen ermöglicht - eine neue Generation von Menschen musste nicht verstehen, was bereits für sie verstanden wurde. Ausgehend von den ältesten Medien - dem ägyptischen Papyrus und den sumerischen Keilschrifttafeln - hat die Menschheit immer mehr Informationen gesammelt. In der Geschichte der Menschheit gab es Zeiten, in denen infolge von Kriegen und Kataklysmen ein Teil des bereits gesammelten Wissens zerstört oder verschwunden war und der Fortschritt dann gestoppt und die Menschheit in ihrer Entwicklung zurückgeworfen wurde. Die wahre Revolution und der Durchbruch war die Entdeckung der Massendrucktechnologie, die es ermöglichte, Informationen an ein großes Publikum zu verbreiten. was wiederum zu einem explosiven Wachstum in den Wissenschaften und der Kunst führte und auch das Bewusstsein der gesamten Menschheit auf eine höhere Ebene brachte. Die Entwicklung der Technologie im 20. Jahrhundert hat zur Entstehung neuer Speichermedien geführt - Lochkarten, Lochbänder, Festplatten, usw. Immer mehr Informationen wurden von Sachbüchern auf elektronische Medien übertragen. Der Zugriff auf diese Daten musste organisiert und verwaltet werden - so entstanden die ersten DBMS.

Das 1970 von E.F. Coddom hat lange Zeit einen Trend in der Entwicklung von Datenbanken gesetzt und es ermöglicht, die Anforderungen des Geschäfts bis heute voll zu erfüllen. Seit 1970 haben relationale Datenbanken einen langen Weg zurückgelegt und sich vielen Herausforderungen gestellt, die ihnen im Wege stehen. Ständig wachsende Datenmengen haben zur Entwicklung von Methoden geführt, die einen schnelleren Zugriff auf die erforderlichen Daten ermöglichen - Indizes, sortierte Speicherung von Daten usw. Diese Methoden haben ihre Aufgabe recht erfolgreich gemeistert und haben ihre Relevanz immer noch nicht verloren. Die rasche Zunahme des Volumens an Speichermedien und die Verringerung der Kosten für die Datenspeicherung haben jedoch dazu geführt, dass Datenbankgrößen von mehreren zehn Terabyte nichts Ungewöhnliches mehr sind und als ein verbreitetes Phänomen wahrgenommen werden. Unternehmen können nicht zulassen so dass diese Daten "totes Gewicht" haben, da der ständig wachsende Wettbewerb in der Welt ihn dazu zwingt, nach neuen Ansätzen zu suchen, um den Bereich seiner Tätigkeit zu meistern, denn gemäß dem Motto "Wer die Informationen besitzt, besitzt die Welt". Wenn wir über Zeit reden, dann geht die Rechnung nicht für Tage oder gar Stunden, sondern für Minuten - wer schnell die nötigen Informationen bekommt, gewinnt.

Aber nicht alle modernen Datenbanken sind bereit für neue Volumes - alte Methoden sind nicht mehr so ​​effektiv. Die Hauptkomponente, die die gesamte Datenbank „verlangsamt“, ist ein Informationsspeicher. Leider sind es genau die Fähigkeiten der Festplatte, die jetzt die Weiterentwicklung von Möglichkeiten in Gang gesetzt haben, nützliche Informationen aus einem riesigen Datensatz von mehreren zehn Terabyte zu erhalten. Heutzutage kann die Technologie nicht mehr mit der wachsenden Datenmenge Schritt halten, die analysiert werden muss. Flash-Datenträger sind recht teuer und weisen erhebliche Nachteile auf, insbesondere die Aufzeichnungsressource, die ihre Verwendung als Datenspeichergeräte für Datenbanken in Unternehmen behindert. In diesem Artikel schlage ich vor, die Methoden zu diskutieren, die von modernen analytischen Datenbanken verwendet werden, um die Mängel bestehender Technologien zu überwinden. Ich möchte auch eine Diskussion über die vielfältige NoSQL-Datenbankfamilie in einem separaten Artikel hinterlassen, um die bestehenden Ansätze nicht zu verwirren. Datenbanken mit dem NoSQL-Modell sind für herkömmliche Analysesysteme immer noch ziemlich exotisch, obwohl sie bei einzelnen Aufgaben eine gewisse Popularität erlangt haben. Das Hauptinteresse gilt weiterhin Datenbanken mit einem traditionellen relationalen Datenmodell, die den ACID-Anforderungen entsprechen und für die Big Data-Analyse vorgesehen sind - wie sie auf eine moderne Herausforderung reagieren. obwohl sie in einzelnen Aufgaben etwas an Popularität gewonnen haben. Das Hauptinteresse gilt weiterhin Datenbanken mit einem traditionellen relationalen Datenmodell, die den ACID-Anforderungen entsprechen und für die Big Data-Analyse vorgesehen sind - wie sie auf eine moderne Herausforderung reagieren. obwohl sie in einzelnen Aufgaben etwas an Popularität gewonnen haben. Das Hauptinteresse gilt weiterhin Datenbanken mit einem traditionellen relationalen Datenmodell, die den ACID-Anforderungen entsprechen und für die Big Data-Analyse vorgesehen sind - wie sie auf eine moderne Herausforderung reagieren.

Es ist völlig klar, dass die von analytischen Datenbanken verwendeten Daten angemessen aufbereitet und geordnet werden müssen, da es schwierig ist, Regelmäßigkeiten von Chaos zu unterscheiden. Es gibt jedoch Ausnahmen von dieser Regel, über die wir später sprechen werden, möglicherweise gibt es einen anderen Artikel im Rahmen. Angenommen, die Daten werden von einem ETL-Prozess vorbereitet und in das Data Warehouse geladen. Wie moderne Analysedatenbanken einen so schnellen Zugriff auf Daten ermöglichen, dass sie nicht mehrere Tage damit verbringen müssen, mehrere Terabyte oder Dutzende Terabyte zu lesen.

Massive Parallelverarbeitung

Massiv parallele Architekturen werden aus separaten Knoten aufgebaut, wobei jeder Knoten über einen eigenen Prozessor, einen eigenen Speicher sowie Kommunikationswerkzeuge verfügt, mit denen er mit anderen Knoten kommunizieren kann. Ein separater Knoten ist in diesem Fall eine separate Datenbank, die mit allen anderen zusammenarbeitet. Wenn wir also eine Stufe tiefer gehen, sehen wir einen Prozess oder eine Reihe von Prozessen, bei denen es sich um eine Datenbank handelt, die ihre eigene separate Aufgabe ausführt und zur gemeinsamen Ursache beiträgt. Aufgrund der Tatsache, dass jeder Knoten seine eigene Infrastruktur (Prozessor und Speicher) hat, ruhen wir uns nicht gegen die traditionellen Einschränkungen aus, die für Datenbanken charakteristisch sind, die im Wesentlichen der einzige Knoten sind, der Zugriff auf das gesamte gespeicherte Datenvolumen hat. Hier speichert jeder Knoten seinen Teil der Daten und arbeitet damit, um den schnellsten Zugriff zu ermöglichen.

Theoretisch können wir für jeden Knoten einen eigenen Prozessor und einen eigenen Plattenspeicher bereitstellen, sodass die maximale Datenlesegeschwindigkeit gleich der Summe aller Lesegeschwindigkeiten für Informationsspeichergeräte ist. Auf diese Weise können wir akzeptable Ergebnisse in Bezug auf die Antwortzeit der Anforderungen erzielen, bei denen die Analyse besonders großer Volumina erforderlich ist Informationen. Um eine bessere Auslastung zu erzielen, befinden sich in der Praxis mehrere Knoten auf demselben Server und teilen Ressourcen untereinander.

Bei Datenbanken, die auf einer solchen Architektur aufbauen, muss einer der Knoten oder jeder von ihnen eine Anforderung vom Benutzer annehmen, an alle verbleibenden Knoten verteilen, auf eine Antwort von ihnen warten und diese Antwort als Ergebnis der Ausführung seiner Anforderung an den Benutzer weiterleiten können.

Die Vorteile einer solchen Architektur liegen in der Oberfläche - sie ist nahezu linear skalierbar. Darüber hinaus Skalierbarkeit in horizontaler und vertikaler Form.

Die Nachteile bestehen darin, dass erhebliche Anstrengungen unternommen werden müssen, um eine Software zu erstellen, mit der Sie alle Vorteile einer solchen Architektur nutzen können. Dies ist der Grund für die hohen Kosten solcher Produkte.

Analytische relationale Datenbanken mit MPP:

1. EMC Greenplum
Eine der besten Lösungen mit leistungsstarken Funktionen, die es ermöglichen, sie für jede Aufgabe zu konfigurieren.
2. Teradata
Bekannte Lösung, die sich am Markt bewährt hat. Hohe Kosten im Vergleich zu Wettbewerbern, nicht aufgrund wesentlicher Vorteile.
3. HP Vertica
Vorteile der Lösung sind gleichzeitig ihre Nachteile. Eine große Menge redundanter (duplizierter) Daten, die gespeichert werden müssen, konzentrieren sich auf ein enges Aufgabenspektrum, es fehlen einige wichtige Funktionen.
4. IBM Netezza
Eine interessante und recht schnelle Lösung. Die Nachteile sind, dass dies eine vollständig auf einer proprietären Plattform aufgebaute, teilweise veraltete Hardwarelösung ist. Es gibt Fragen zur Skalierbarkeit.

Für jede Entscheidung kann eine separate Überprüfung vorgenommen werden, wenn die Leser an der Zukunft interessiert sind. Wie dem auch sei, es sind diese vier Produkte, die den Trend im MPP-Sektor mit einer Architektur ohne gemeinsame Nutzung setzen. Anhand ihres Beispiels können wir den Entwicklungsvektor weiterer Technologien beobachten, die darauf abzielen, sehr große Datenmengen zu verarbeiten. Es ist eine völlig neue Klasse von Datenbanken erschienen, die speziell für die Verarbeitung von Dutzenden von Terabyte entwickelt wurde.

Es gibt jedoch eine zweite Möglichkeit, mit der Sie die Einschränkungen umgehen können, die mit den Funktionen von Festplatten verbunden sind.

IMDB

In-Memory-Datenbank ist eine Datenbank, die mit Daten arbeitet, die sich vollständig im RAM befinden. Wie Sie wissen, hat RAM eine Geschwindigkeit, die konventionellen Festplatten um eine Größenordnung überlegen ist, wodurch ein Hochleistungs-Datenspeicher mit enormen Lese- und Schreibgeschwindigkeiten bereitgestellt wird. Trotzdem gibt es immer noch wenige Menschen, die ihre Daten komplett im RAM speichern wollen. Dies ist in erster Linie auf die Tatsache zurückzuführen, dass die Kosten für einen solchen Speicher viel höher sind als die Kosten für Festplatten. Ein wichtiger Faktor ist, dass alle Daten verschwinden, sobald der Strom abgeschaltet wird. Datenbanken, die mit Daten im Hauptspeicher arbeiten, waren lange Zeit Hilfsdaten und dienten als Puffer, in dem nur für die operative Verarbeitung erforderliche Kurzzeitdaten gespeichert werden. Dennoch, Der Rückgang der Kosten für diese Art von Speicher hat das Interesse an Datenbanken dieser Art geweckt. Der Einstieg in den Big Data-Bereich beginnt vermutlich mit Terabyte. Bis vor kurzem gab es unter Datenbanken dieses Typs keine Lösungen, die mit einem ausreichend großen Volumen arbeiten könnten. Im Jahr 2011 stellte SAP jedoch seine HANA-Datenbank vor, die bis zu 8 Terabyte unkomprimierter Daten unterstützt. Theoretisch kann mit der Komprimierung die verwendete Datenmenge auf 40 Terabyte erhöht werden. Ein weiterer Vertreter der IMDB-Technologie ist TimesTen von Oracle. Beide Lösungen verfügen über eine hervorragende Funktionalität und sind die am weitesten entwickelten Produkte im Bereich In-Memory-RDBMS. Unter Datenbanken dieses Typs gab es keine Lösungen, die mit einem ausreichend großen Volumen arbeiten könnten. Im Jahr 2011 stellte SAP jedoch seine HANA-Datenbank vor, die bis zu 8 Terabyte unkomprimierter Daten unterstützt. Theoretisch kann mit der Komprimierung die verwendete Datenmenge auf 40 Terabyte erhöht werden. Ein weiterer Vertreter der IMDB-Technologie ist TimesTen von Oracle. Beide Lösungen verfügen über eine hervorragende Funktionalität und sind die am weitesten entwickelten Produkte im Bereich In-Memory-RDBMS. Unter Datenbanken dieses Typs gab es keine Lösungen, die mit einem ausreichend großen Volumen arbeiten könnten. Im Jahr 2011 stellte SAP jedoch seine HANA-Datenbank vor, die bis zu 8 Terabyte unkomprimierter Daten unterstützt. Theoretisch kann mit der Komprimierung die verwendete Datenmenge auf 40 Terabyte erhöht werden. Ein weiterer Vertreter der IMDB-Technologie ist TimesTen von Oracle. Beide Lösungen verfügen über eine hervorragende Funktionalität und sind die am weitesten entwickelten Produkte im Bereich In-Memory-RDBMS. Ein weiterer Vertreter der IMDB-Technologie ist TimesTen von Oracle. Beide Lösungen verfügen über eine hervorragende Funktionalität und sind die am weitesten entwickelten Produkte im Bereich In-Memory-RDBMS. Ein weiterer Vertreter der IMDB-Technologie ist TimesTen von Oracle. Beide Lösungen verfügen über eine hervorragende Funktionalität und sind die am weitesten entwickelten Produkte im Bereich In-Memory-RDBMS.

Unternehmen sind also bereit, die Herausforderung von Big Data anzunehmen. Es wurden bereits Lösungen entwickelt und getestet, die eine akzeptable Zeitspanne für die Beantwortung von Fragen von Analysten, Marketern und Datenbankmanagern mit Hilfe von Informationen bieten, die über Jahrzehnte hinweg gesammelt wurden. Es werden neue Datenbankklassen für die Verarbeitung sehr großer Datenmengen erstellt. Es werden neue Methoden entwickelt, um die Geschwindigkeit des Datenzugriffs zu erhöhen.

Gleichzeitig zeigt die moderne Realität, dass relationale Datenbanken keine Komplettlösungen sein können. Aus diesem Grund muss das Unternehmen neben dem Data Warehouse, in dem große Informationsmengen gespeichert und verarbeitet werden, über OLTP-Datenbanken verfügen, die für die Durchführung der Geschäftstätigkeit des Unternehmens ausgelegt sind.

Jetzt auch beliebt: