Was ist RDD?

Was ist RDD?
Beim relationalen DatenbankdesignRDD) werden Daten in zweidimensionalen Tabellen organisiert, die aus Zeilen und Spalten bestehen. Jede Tabellenzeile ist eine Aufzeichnung, mit Spalten, die Attribute oder Felder der Aufzeichnung sind. Eine Sammlung von zusammenhängenden Tabellen wird als Schema bezeichnet. Der Zweck eines solchen Schemas ist es, einen flexiblen Zugriff auf die im Schema gespeicherten Daten mit Hilfe der Structured Anfrage Language (SQL) zu ermöglichen.
Warum ist der Entwurf einer relationalen Datenbank wichtig?
Der relationale Datenbankentwurfsprozess bildet eine Geschäftsfunktion in einem Datenmodell ab, das von einem Relational Database Management System RDBMS) verwaltet werden kann. Das RDBMS speichert Daten über die Geschäftsfunktion und erleichtert so die Speicherung von Transaktionsinformationen, die von Anwendungen abgerufen und von Data Analytics wie Business Intelligence (BI)-Systemen verwendet werden können.
Dank der Unterstützung von Atomizität Beständigkeit Isolation Langlebigkeit (ACID) bietet das relationale Modell Unternehmen eine robuste Transaktionsverarbeitung. ACID bietet die folgenden Funktionen:
Atomizität
Atomizität setzt die Alles-oder-Nichts-Regel durch, um die Integrität der Daten in einem relationalen Datenbanksystem zu schützen. Wenn eine Transaktion mehrere Änderungen vornimmt, werden sie alle als eine Einheit übertragen. Wenn eine Änderung aus irgendeinem Grund fehlschlägt, wird die gesamte Transaktion rückgängig gemacht. Ist eine Transaktion im Gange, wenn der Server abstürzt, werden alle nicht abgeschlossenen Transaktionen standardmäßig zurückgesetzt.
Beständigkeit
Die Beständigkeit wird aufrechterhalten, indem alle Daten, die nicht dem Datentyp eines Feldes entsprechen, nicht zugelassen werden, was eine Einschränkung ist, die gültige Datenwerte regelt.
Isolation
Isolation stellt sicher, dass jede Transaktion in ihrem eigenen geschützten Bereich ausgeführt wird, so dass keine andere Transaktion eine andere beeinträchtigen kann.
Langlebigkeit
Langlebigkeit schützt übertragene Änderungen, um zu garantieren, dass sie in einen nichtflüchtigen Speicher geschrieben werden, so dass übertragene Transaktionen geschützt sind, falls ein Server ausfällt.
Der Entwurfsprozess für relationale Datenbanken
Im Folgenden werden die Schritte beschrieben, die ein Datenbankdesigner durchführt, um eine Geschäftsfunktion in einer relationalen Datenbank abzubilden.
Modellierung von Entitäten
Der erste Schritt im Entwurfsprozess ist die Identifizierung aller an einem Geschäftsvorgang beteiligten Unternehmen.
Wir können eine Anwendung zur Verwaltung von Kundenaufträgen als Beispiel verwenden. Die an der Auftragsabwicklung beteiligten Einheiten könnten Mitarbeiter, Abteilungen, Produkte, Kunden und Aufträge sein.
Jede Entität verfügt über Attribute oder Details, die wichtig sind, um sie zu verfolgen. Im Falle einer Bestellung könnten dies der Kundenname, die Kundennummer, die Produkt-ID und die Produktbeschreibung, die Menge, das Bestelldatum und der Positionsbetrag sein.
Es ist wichtig zu wissen, wie die Entitäten miteinander verbunden sind und ob die Beziehung eins-zu-eins, viele-zu-eins, eins-zu-viele, optional oder obligatorisch ist.
Jetzt haben wir genügend Informationen, um ein Entity-Relationship-Modell zu erstellen.
Normalisierung
Durch die Normalisierung werden sich wiederholende Gruppen entfernt und das Datenmodell organisiert, indem sichergestellt wird, dass jedes Element durch Primär- und Fremdschlüsselwerte verbunden ist.
Die Normalisierungsreihen sind wie folgt definiert:
- Erste Normalform.
- Zweite Normalform.
- Dritte Normalform.
- Boyce-Codd-Normalform.
- Fünfte Normalform.
Physikalisches Design
Nachdem der logische Entwurf abgeschlossen ist, können wir mit der physischen Entwurfsphase fortfahren. Das Datenbankschema entspricht weitgehend dem vollständig normalisierten Modell für einen transaktionszentrierten use case. Es verwendet eine minimale Anzahl von Indizes, um den Durchsatz zu maximieren, da die Aktualisierung von Indizes langsam sein kann.
In einem use case der Entscheidungsunterstützung von Analysen können die Daten denormalisiert und zusätzliche Indizes hinzugefügt werden. Ein Analytics Database kann in einem Stern- oder Schneeflockenschema organisiert werden, um die häufigsten Abfragen zu unterstützen.
Lagerung
Traditionelle relationale Datenbanken speichern eine Aufzeichnung als ganze Zeile, während spaltenorientierte Datenbanken Tabellen in einzelnen Spalten speichern. Dies hat den Vorteil, dass die Daten in der Reihenfolge gespeichert werden, in der sie beim Laden sortiert wurden. Dies ist oft der natürliche Primärindex, der den Bedarf an Indizes minimiert. Der zweite Grund, warum sich spaltenorientierte Datenbanken hervorragend für analytic workloads eignen, ist, dass sie alle Spalten überspringen können, die mit einer Anfrage nicht in Zusammenhang stehen, so dass die Ergebnismenge viel kleiner ist und viel eher in den Cache-Speicher passt.
Actian und relationale Datenbanken
Die Actian Data Platform umfasst mehrere relationale Datenbanken, darunter Actian Vector für analytic workloads und Actian Ingres für Transaktionslasten. Die Actian Data Platform läuft On-Premises und auf mehreren Cloud , darunter AWS, Azure und Google Cloud, sodass Sie Ihre Analysen dort ausführen können, wo sich Ihre Daten befinden.