Was ist eine analytische MPP-Datenbank?

Analystische MPP-Datenbanken (Massively Parallel Processing) sind für analytische Workloads optimierte Datenbanken: Aggregation und Verarbeitung großer Datensätze. MPP-Datenbanken sind häufig spaltenförmig ausgelegt. Anstatt jede Zeile einer Tabelle als Objekt zu speichern (ein Merkmal von Transaktionsdatenbanken), speichern MPP-Datenbanken im Allgemeinen jede Spalte als ein Objekt. Durch diese Architektur ist eine viel schnellere und effizientere Bearbeitung komplexer analytischer Anfragen möglich.

Diese analytischen Datenbanken verteilen ihre Datensätze auf viele verschiedene Rechner oder Knoten, um so große Datenmengen zu verarbeiten (daher der Name). Diese Knoten verfügen alle über eigene Speicher- und Rechenfunktionen, sodass jeder einen Teil der Abfrage ausführen kann.

Die Verbreitung und der Rückgang der Kosten für analytische MPP-Datenbanken während der letzten zehn Jahre hat für datengesteuerte Unternehmen eine enorme Chance geschaffen, um größere Datenbestände als je zuvor zu operationalisieren und zu analysieren. Diese Datenbanken sind eine hervorragende Ergänzung des wachsenden Toolkits für Analysten, bringen jedoch auch zusätzliche Komplexität in die Architekturen.

Wofür sind Data Warehouses besonders gut geeignet?

Typische analytische Workloads

MPP-Datenbanken eignen sich sehr gut für die gängigsten analytischen Workloads, die im Allgemeinen durch Abfragen auf einer Untermenge von Spalten mit Aggregationen über weite Bereiche von Zeilen gekennzeichnet sind. Dies ist auf ihre Spaltenarchitektur zurückzuführen, durch die sie nur auf die Felder zugreifen können, die zur Bearbeitung einer Abfrage notwendig sind (im Gegensatz zu transaktionalen Datenbanken, die auf alle Felder einer Zeile zugreifen müssen).

Durch eine Spaltenarchitektur erhalten MPP-Datenbanken zusätzliche Funktionen, die für analytische Workloads nützlich sind. Diese variieren je nach Datenbank, beinhalten jedoch oft die Möglichkeit, Datenwerte zu komprimieren, sehr große Tabellen effizient zu indizieren und breite, denormalisierte Tabellen zu bearbeiten.

Datenzentralisierung

Unternehmen verwenden üblicherweise analytische MPP-Datenbanken als Data Warehouses oder zentralisierte Repositories, in denen alle in ihrem Unternehmen generierten Daten gespeichert werden, wie z. B. transaktionale Verkaufsdaten, Web-Tracking-Daten, Marketingdaten, Kundendienstdaten, Bestands-/Logistikdaten, HR-/Rekrutierungsdaten und Systemprotokolldaten. Da analytische MPP-Datenbanken große Datenmengen verarbeiten können, kann sich ein Unternehmen mit Gewissheit auf diese Datenbanken verlassen, nicht nur um Daten zu speichern, sondern auch um analytische Workloads aus diesen verschiedenen Geschäftsfunktionen zu unterstützen.

Lineare Skalierbarkeit

Analytische MPP-Datenbanken können ihre Rechen- und Speicherfähigkeiten leicht linear skalieren, indem das System um weitere Server erweitert wird. Dies ist das Gegenteil von vertikal skalierenden Rechen- und Speichermöglichkeiten, die eine Aufrüstung auf größere und leistungsfähigere einzelne Server erfordern und denen im Hinblick auf den Maßstab üblicherweise Grenzen gesetzt sind. Analytische MPP-Datenbanken können so schnell, einfach und effizient skaliert werden, dass On-Demand-Datenbankanbieter diesen Prozess automatisiert haben und das System je nach Größe der Abfrage nach oben oder unten skalieren können.

Data-Warehouse-Lösungen

Selbstverwaltete MPP-Datenbanken

On-Demand-MPP-Datenbanken

Analytische MPP-Architektur

Der Begriff Massively Parallel Processing (Massenparallelrechner) bezieht sich auf die Tatsache, dass die in diese Datenbanken geladene Tabellen über jeden Knoten in einem Cluster verteilt sind. Er besagt auch, dass bei einer Abfrage jeder Knoten gleichzeitig arbeitet, um die darauf liegenden Daten zu verarbeiten.

Verteilte Architektur

Analytische MPP-Datenbanken sind so konzipiert, dass Abfragen parallel über viele einzelne Server oder Knoten hinweg ausgeführt werden können. Infolgedessen kann die gleiche Workload durch das Hinzufügen weiterer Knoten zu einem Cluster auf mehr Server verteilt und somit schneller erledigt werden kann.​​​​​​​

Zwar können analytische MPP-Datenbanken in bestimmten Aspekten auch vertikal skaliert werden, jedoch besteht ihr größter Vorteil darin, dass das Datenbanksystem relativ leicht durch das Hinzufügen weiterer Knoten horizontal skaliert werden kann.

Massively Parallel Processing (MPP)

Verschiedene Systeme verfolgen unterschiedliche Ansätze zur Kopplung der Datenspeicherung und Berechnung für Abfragen und nutzen unterschiedliche Strategien zur Verschiebung von Daten von einem Knoten zu einem anderen. Jedoch sind alle MPP-Systeme schnell, da ein „Leader“ einen Abfrageplan erstellen und dann die eigentliche Arbeit der Bearbeitung einer Anfrage auf viele Worker aufteilen kann.

Gehosteste Implementierungen vs. On-Premise-Implementierungen

Analytische MPP-Datenbanken gibt es bereits seit Jahrzehnten, jedoch sind die Kosten und die Komplexität der Verwaltung erst im letzten Jahrzehnt drastisch gesunken. Bis vor kurzem war nur die Möglichkeit gegeben, diese Datenbanken selbst zu hosten. In jüngster Zeit wurden sie jedoch auch in die Cloud migriert.

Einige analytische Data Warehouses sind ausschließlich über eine gehostete Architektur verfügbar. Amazon Redshift, Snowflake und Google BigQuery beispielsweise werden ausschließlich über die Cloud angeboten. Andere, wie Teradata, können sowohl On-Premise als auch als Appliance (Software und Hardware gebündelt) oder über ein gehostetes Modell in der Cloud bereitgestellt werden.

HPE Vertica verfügt als einzige Datenbank in der Kategorie der analytischen MPP-Datenbanken über ein Softwareangebot, das Ihnen die Entwicklung Ihrer eigenen analytischen Datenbank auf handelsüblicher Hardware ermöglicht. Bei Implementierungen in größerem Umfang bietet diese Lösung mehr Flexibilität und Anpassungsmöglichkeiten für spezielle Anwendungsfälle.

Einschränkungen einer analytischen MPP-Datenbank​​​​​​​

Komplexität

Die größte Einschränkung im Zusammenhang mit verteilten MPP-Datenbanken besteht darin, dass sie eine andere Art der Planung und Einrichtung erfordern, als dies bei transaktionalen Datenbanken der Fall ist. Das Einrichten der anfänglichen ETL-Pipeline (Extract-Transform-Load), die Daten von der Quelle in Ihr Data Warehouse verschiebt, ist mitunter ein ziemlich aufwendiges Projekt (wobei viele Anbieter inzwischen Dienstleistungen zur Vereinfachung dieses Prozesses anbieten).

Skalierbarkeit

Die innerhalb des Clusters benötigten Ressourcen zu planen kann ebenfalls eine Herausforderung darstellen, wenn es sich um mehrere Datenquellen handelt. Dies gilt insbesondere dann, wenn das Datenvolumen aus diesen Quellen nicht vollständig von Ihnen gesteuert wird. Viele, jedoch nicht alle, in der Cloud gehostete MPP-Datenbanktechnologien bieten eine automatische Skalierung.

Batch-Ladung/Latenz

Aufgrund der Architektur analytischer MPP-Datenbanken gilt generell: Je näher an „Echtzeit“ Sie Ihre Daten nutzen möchten, desto schwieriger wird die Aufgabe des Data Engineering. Der Grund ist, dass diese Technologien typischerweise für Batch-Ladungen optimiert sind.​​​​​​​ Die Optimierung der Datenspeicherung für verteilte Lesevorgänge im Cluster ist eine arbeitsintensive Aufgabe.​​​​​​​ Einige verteilte MPP-Datenbanken bieten zur Bewältigung dieses Problems speziell hybride Speicherung oder zusätzliche Dienste an. Viele Unternehmen nutzen Replikate ihrer Transaktionsdatenbank, nur um den Echtzeit-Zugriff auf diesen Teil des Datenbestands zu ermöglichen.

Optimierung einer analytischen MPP-Datenbank

Die Überlegungen zur Leistungsanpassung einer analytische MPP-Datenbank unterscheiden sich dramatisch in Abhängigkeit davon, ob Sie eine On-Demand-MPP-Datenbanklösung oder eine verwaltete MPP-Datenbanklösung verwenden und welche Sie einsetzen.

Es ist wichtig zu beachten, dass MPP-Datenbanklösungen im Allgemeinen weitaus größere Datenmengen verarbeiten können als transaktionale Datenbanken mit ähnlichen Kosten. Daher können sie wesentlich mehr Daten verarbeiten, bevor Sie über Optimierung und Anpassung nachdenken müssen.

Wenn Sie jedoch die Phase erreicht haben, in der die Leistung angepasst werden muss, dann erledigen die verwalteten MPP-Lösungen mehr Einzelheiten für Sie als selbst-gehostete Lösungen, welche mehr Arbeit von Ihrer Seite erfordern.

Entdecken Sie Ihre Liebe zur Analytik.

Business Intelligence, Big-Data-Analyse oder eine 360°-Ansicht Ihrer Kunden.
Was auch immer Sie benötigen, Looker steht Ihnen zur Seite. Sprechen Sie einfach mit unseren Datenexperten.

Demo anfordern