Entwerfen einer relationalen Datenbank für Abfragen und Reporting-Support

Ihre Data-Warehousing-Umgebung oder eine bestimmte Data-Mart, die Ihre Haupt Data Warehouse wird ernähren könnte die Mission haben, eine endliche und berechenbare von der Generierung von Berichten. Hier ist ein Ansatz einer relationalen Datenbank zu entwerfen, die Mission zu unterstützen, gebaut um das Prinzip der Datenbank-Normalisierungs, oder absichtlich zu verletzen gute relationalen Datenbank-Design-Prinzipien im Interesse der Leistungseffizienz.

Denormalisierung ist am besten geeignet für Schnell Hit-Lösungen, in denen müssen Sie einen kleinen relationalen Data Warehouse oder Data Mart und läuft schnell. Zum Beispiel könnten Sie eine denormalized relationale Datenbank für eine erstellen spezifisch Charter eine bestimmte Reihe von Berichten zu produzieren, die nicht mehr als Folge von einem Altsystem Migrationsaufwand zur Verfügung stehen wird.

Obwohl Denormalisierung nicht ganz eine Sackgasse ist, hat es eine große doppelte Daten zu erstellen, und die Datenbankstrukturen erstellen Sie haben nicht viel Flexibilität. Darüber hinaus haben Sie wahrscheinlich begrenzt Abfragefunktionen (zusätzlich zu Ihrer Standard-Reports), weil diese Fähigkeiten in engem Zusammenhang mit den in der Tabelle Design formalisierten Berichtsstrukturen gebunden sind. Dennoch können Sie diesen Ansatz zu überprüfen.

Ein einfaches Beispiel für Denormalisierung, in der Figur gezeigt, zeigt, was die Quelldatenbanktabellen in einer Anwendung aussehen, die Umsatzentwicklung verfolgt, mit die Tabellen nach Standard relationalen Datenbank-Design-Prinzipien in erster Linie strukturiert (sie sind normiert).

Um das Berichtsformat auf der Unterseite der Figur gezeigt, die Source-Strukturen werden in eine denormalized Tabelle unterstützen, von denen abgebildet der Bericht ohne erzeugt werden können, die alle Tabellen zu verbinden. (Um es einfacher, Ihren Bericht läuft sehr schnell ab.)

Hinweis: Ein reales Beispiel würde bedeuten, viele weitere Tabellen (von 10 bis 50 oder mehr) und viele weitere Berichte als in der Abbildung dargestellt. Diese Zahl sollte die Idee zu vermitteln, aber.

bild0.jpg

Alternativ sollten Sie die Prinzipien und Techniken der dreidimensionalen Design zu folgen. Da RDBMS haben jetzt viel weniger Probleme mit formorientierten Strukturen zu tun als in der Vergangenheit, sind Sie wahrscheinlich eine angemessene Leistung für Ihre Reporting-Anforderungen zu erhalten und haben immer noch die Flexibilität, eine große Vielzahl von Ad-hoc-multidimensionale Abfragen zu unterstützen.

Für eine schnelle Bereitstellung, die orientierte Berichterstattung, obwohl zumindest Denormalisierung-basiertes Design für relationale Daten berücksichtigen.

Menü