Die Idee hinter multidimensionale Datenbanken

Multidimensionale Datenbanken (MDDBs) werfen die Konventionen ihrer relationalen Vorfahren und organisieren Daten in einer Weise, die sehr förderlich für die multidimensionale Analyse ist. Um mehrdimensionale Datenbanken daher verstehen, müssen Sie zuerst die Grundlagen der analytischen Funktionen verstehen mit den in ihnen gespeicherten Daten durchgeführt.

Multidimensionale Analyse wird um ein paar einfache Datenorganisationskonzepte gebaut - speziell, Fakten und Dimensionen:

  • Fakten: EIN Tatsache ist eine Instanz einer bestimmten Auftreten oder Ereignis und die Eigenschaften des Ereignisses alle in einer Datenbank gespeichert. Haben verkaufen Sie eine Uhr an einen Kunden letzten Nachmittag Freitag? Das ist Fakt. Hat Ihr Geschäft eine Lieferung von 76 Klasse Ringe gestern von einem bestimmten Lieferanten erhalten? Das ist eine andere Tatsache.

  • Maße: EIN Dimension ist ein Schlüssel Beschreiber, ein Index, mit dem Sie Tatsachen entsprechend dem Wert möchten Sie (oder Werte) zugreifen können. Zeit, Kunde und Produkt: Zum Beispiel könnten Sie Ihre Verkaufsdaten nach diesen Dimensionen organisieren.

Die Grundlagen

In diesen einfachen Beispielen können Sie organisieren und Ihre Verkaufsdaten als dreidimensionale Anordnung zu sehen, durch die Zeit, die Kunden indiziert und Produktabmessungen:

  • Im Oktober 2008 (die Zeitdimension), Kunde A (der Kunde Dimension) gekauft Klasse Ringe (die Produktdimension) - 79 von ihnen für $ 8.833.

  • Im Jahr 2007 (die Zeitdimension), Kunde A (der Kunde Dimension) gekauft viele verschiedene Produkte (die Produktdimension) - insgesamt 3.333 Einheiten für $ 55.905 (die Fakten).

Beachten Sie die subtilen Unterschiede zwischen der Art und Weise die Abmessungen in diesen beiden Beispielen verwendet. In der ersten, bezieht sich die Zeitdimension ein Monat- die Kundendimension zu einem bestimmten kunden- bezieht und die Produktdimension für ein bestimmtes Produkt.

Im zweiten Beispiel wird jedoch Zeit ist für ein Jahr, kein Monat- Kunde ist immer noch die gleichen (ein einzelner Kunde) - und Produkt ist für die gesamte Produktlinie.

Multidimensionale Analyse unterstützt die Vorstellung von Hierarchien in den Dimensionen. Zum Beispiel können Sie Zeit in einer Hierarchie von Jahr-Viertel Monat organisieren. Sie können sehen Fakten (oder die Konsolidierung von Fakten) in der Datenbank auf einer dieser Ebenen: von Jahr, Quartal oder Monat.

In ähnlicher Weise können Sie Produkte in einer Hierarchie der Produktfamilie-Produkt typspezifische Produkte zu organisieren. Klasse Ringe könnte ein Produkt Typ- sein # 147-Klasse Ring, moderner Stil, Onyx Stein # 148- könnte ein spezifisches Produkt. Des Weiteren Klasse Ringe, Uhren, andere Ringe und andere Gegenstände würden alle in die Schmuck-Produktfamilie aufrollen.

Gibt es eine Grenze für die Anzahl der Dimensionen?

Theoretisch kann man so viele Dimensionen in Ihrem mehrdimensionalen Modell haben, wie nötig. Die Frage ist immer vorhanden, jedoch davon, ob Ihr multidimensionalen Datenbank Produkt sie unterstützen kann. Aber hier ist eine wichtige Frage - auch wenn ein Produkt für eine bestimmte Anzahl von Dimensionen erlaubt (15, zum Beispiel), ist es sinnvoll, ein Modell dieser Größe zu schaffen?

Sie sollten eng mit den Benutzern zusammenarbeiten, um festzustellen, ob die Anzahl der Dimensionen Ihre Lösung zu komplex macht - und damit auch die Bevölkerung der Nutzer zu begrenzen - oder verbessert die Benutzerfreundlichkeit - und damit die Benutzerpopulation zu erweitern.

Sie können zum Beispiel Geographie der Dimension Liste hinzufügen, die Zeit, Kunden enthält, und Produkt, so dass Sie sehen können und organisieren Fakten nach Verkaufsgebieten, Staaten, Städte und bestimmte Geschäfte.

Wie sollten Sie die Ebenen in einer Hierarchie wählen?

Die Ebenen in einer Hierarchie können Sie ausführen aufreißen Funktionalität. Und durch mehrere Ebenen innerhalb einer Hierarchie haben, können Sie schnell Antworten auf Ihre Fragen aufgrund der Informationen, die an jedem der definierten Ebenen eingerichtet wurde, so dass Informationen nur für Ihre Anfragen warten.

Da multidimensionale Datenbanken haben ziemlich starre Strukturen rund um den integrierten Vor-Berechnung von Fakten (Erstellen und Speichern von Aggregaten in der Datenbank, anstatt die Durchführung Bericht Zeit-Aggregation und Berechnung), desto mehr Dimensionen, die Sie haben und je mehr Ebenen in jeder Dimension, die Sie, desto größer sind Ihre Speicheranforderungen und je länger Ihr Build oder Ladezeiten haben .

Physische Datenbankstrukturen in einem MDDB

Obwohl fast alle MDDB Produkte rund um das Konzept der Tatsachen aufgebaut sind, Dimensionen und Hierarchien, niemand hat mit einer MDDB Standard Definition kommen. In der relationalen Welt, nicht-Standardisierung hat auch so etwas wie ein Problem, vor allem in Bezug auf Mehrwert-Funktionen, wie zum Beispiel Einschränkungen und gespeicherte Prozeduren gewesen.

Die grundlegende relationale Tabellen-Zeilen-Spalten-Struktur hat sich jedoch schon recht einfach in eine flache Datei eines bestimmten Typs zu exportieren oder zu entfernen, und dann in ein anderes RDBMS Produkt neu zu laden.

In der MDDB Welt haben die Hersteller eine Vielzahl von unterschiedlichen Ansätzen, um ihre jeweiligen Produkte physischen Darstellungen von Daten gemacht. Sie suchen alle Möglichkeiten der Lagerung und Komplexitätsprobleme, verursacht durch eine große Anzahl von Dimensionen (beispielsweise mehr als 15) und tiefen Ebenen der Hierarchie zu überwinden (beispielsweise 20 Ebenen tief).

Wenn Sie Produkte sind die Bewertung, nicht bekommen, sich Sorgen über die physischen Speichertechniken gefangen: Sie sicher, machen die logischen Darstellungen, die mit den Produkten (wie die Hierarchien, Ebenen und Fakten) kommen, um Ihre geschäftlichen Anforderungen zu erfüllen. Beseitigen Sie Produkte, die klobig erscheinen oder die haben zum Beispiel eine Hierarchie-Modell, das für Ihre Daten nicht ganz richtig zu sein.

Dann, nachdem Sie Produkte, die Ihr Unternehmen zu passen scheinen, treten die Reifen ein wenig (sozusagen), um zu sehen, wie sie im Inneren arbeiten.

Menü