Was ist Star Schema in der Data Warehouse-Modellierung?
โก Intelligente Zusammenfassung
Das Sternschema in der Data-Warehouse-Modellierung platziert eine zentrale Faktentabelle im Zentrum umgebender Dimensionstabellen. Dadurch entsteht ein denormalisiertes, sternfรถrmiges Design, das analytische Abfragen vereinfacht, die Berichterstellung beschleunigt und OLAP-Cubes auf Business-Intelligence-Plattformen unterstรผtzt.

Was ist ein Sternschema?
A Sternschema In einem Data Warehouse ist ein Sternschema eine Modellierungsstruktur, in der eine zentrale Faktentabelle mit mehreren zugehรถrigen Dimensionstabellen verbunden ist. Es wird als Sternschema bezeichnet, da die Struktur einem Stern รคhnelt, wobei sich die Faktentabelle im Zentrum befindet und die Dimensionstabellen wie Punkte nach auรen strahlen.
Das Sternschema ist der einfachste Typ von Data-Warehouse-Schema und wird auch als Stern-Join-Schema bezeichnet. Da seine Dimensionstabellen denormalisiert sind, ist das Modell fรผr die Abfrage sehr groรer Datensรคtze optimiert und daher eine gรคngige Wahl fรผr dimensionale Modellierung und Berichterstattung.
Was ist ein multidimensionales Schema?
A multidimensionales Schema ist speziell fรผr die Modellierung von Data-Warehouse-Systemen konzipiert. Diese Schemata erfรผllen die besonderen Anforderungen sehr groรer Datenbanken, die fรผr analytische Zwecke erstellt wurden. OLAP und nicht fรผr die routinemรครige Transaktionsverarbeitung.
Arten von Data-Warehouse-Schemas: Es gibt drei Haupttypen von mehrdimensionalen Schemata, und jeder bietet seine eigenen Vorteile.
- Sternschema โ eine zentrale Faktentabelle, die direkt mit denormalisierten Dimensionstabellen verknรผpft ist.
- Snowflake-Schema โ eine Erweiterung des Sternschemas, bei der die Dimensionen in zusรคtzliche Unterdimensionstabellen normalisiert werden.
- Galaxienschema โ auch Faktenkonstellation genannt, verwendet sie mehrere Faktentabellen, die gemeinsame Dimensionstabellen verwenden.
Da das Snowflake-Schema direkt auf dem Sternschema aufbaut, ist es hilfreich, die beiden Modelle zu vergleichen, bevor man ein detailliertes Sternschema-Beispiel durcharbeitet.
Sternschema vs. Schneeflockenschema
Das Sternschema und das Schneeflockenschema Beide Schemata organisieren Daten anhand von Fakten- und Dimensionstabellen, unterscheiden sich aber in der Art der Dimensionsspeicherung. Ein Sternschema speichert jede Dimension in einer einzelnen denormalisierten Tabelle, wรคhrend ein Schneeflockenschema diese Dimensionen in mehrere zusammengehรถrige Tabellen normalisiert.
- Struktur: Das Sternschema ist flach und einfach; das Schneeflockenschema verzweigt Dimensionen in Unterdimensionen.
- Abfragegeschwindigkeit: Sternschemata benรถtigen weniger Joins, daher laufen Abfragen in der Regel schneller und das SQL bleibt einfacher.
- Lagerung: Snowflake-Schemas beseitigen Redundanzen, benรถtigen daher weniger Speicherplatz, erhรถhen aber die Designkomplexitรคt.
- Datenintegritรคt: Normalisierte Schneeflockendimensionen gewรคhrleisten eine bessere Integritรคt, wรคhrend denormalisierte Sterndimensionen die Leistungsfรคhigkeit begรผnstigen.
- Einfache Anwendung: Ein Sternschema ist fรผr Analysten einfacher zu verstehen und schneller zu pflegen, wรคhrend ein Schneeflockenschema eine sorgfรคltigere Gestaltung erfordert.
In der Praxis entscheiden sich Teams oft fรผr ein Sternschema fรผr Data Marts und Dashboards, die eine schnelle und unkomplizierte Berichterstellung erfordern, und fรผr ein Schneeflockenschema, wenn Speicherplatzersparnis und strikte Konsistenz wichtiger sind.
Beispiel fรผr ein Sternschema
Im folgenden Sternschema-Beispiel befindet sich die Faktentabelle im Zentrum und enthรคlt die Schlรผssel zu jeder Dimensionstabelle, wie z. B. Dealer_ID, Model_ID, Date_ID, Product_ID und Branch_ID, sowie messbare Attribute wie verkaufte Einheiten und Umsatz.

Jede umgebende Dimensionstabelle fรผgt diesen Kennzahlen beschreibenden Kontext hinzu, sodass eine einzige Abfrage die Verkaufsdaten nach Hรคndler, Modell, Datum, Produkt oder Filiale gruppieren oder filtern kann, ohne dass andere Tabellen verknรผpft werden mรผssen.
Faktentabellen
Eine Faktentabelle in einem Sternschema enthรคlt Fakten und ist mit den Dimensionen verknรผpft. Eine Faktentabelle enthรคlt zwei Arten von Spalten:
- Eine Spalte, in der die Fakten oder Kennzahlen gespeichert werden.
- Fremdschlรผssel, die mit den einzelnen Dimensionstabellen verknรผpfen.
Im Allgemeinen ist der Primรคrschlรผssel einer Faktentabelle ein zusammengesetzter Schlรผssel, der aus allen Fremdschlรผsseln der Tabelle besteht.
Faktentabellen kรถnnen detaillierte oder aggregierte Fakten enthalten. Faktentabellen mit aggregierten Fakten werden oft als รbersichtstabellen bezeichnet und enthalten in der Regel bereits aggregierte Fakten.
Maรtabellen
Eine Dimension ist eine Struktur, die Daten hierarchisch kategorisiert. Eine Dimension ohne Hierarchien und Ebenen wird als flache Dimension oder Liste bezeichnet. Der Primรคrschlรผssel jeder Dimensionstabelle ist Teil des zusammengesetzten Primรคrschlรผssels der Faktentabelle.
Ein Dimensionsattribut ist ein beschreibendes, textuelles Attribut, das einen Dimensionswert wie beispielsweise einen Produktnamen oder eine Stadt beschreibt. Da Dimensionstabellen diesen beschreibenden Kontext und nicht Transaktionsereignisse speichern, sind Faktentabellen in der Regel wesentlich grรถรer als Dimensionstabellen.
Wie man ein Sternschema entwirft
Die Entwicklung eines Sternschemas folgt dem von Ralph Kimball bekannt gemachten Ansatz der dimensionalen Modellierung. Ziel ist es, Geschรคftskennzahlen anhand klarer, wiederverwendbarer Dimensionen zu organisieren, sodass das fertige Modell leicht abzufragen und schnell auszuwerten ist. Die folgenden fรผnf Schritte beschreiben den Prozess, dem die meisten Projekte zur dimensionalen Modellierung folgen โ von der รผbergeordneten Geschรคftsfrage bis hin zu den physischen Fakten- und Dimensionstabellen.
- Identifizieren Sie den Geschรคftsprozess: Wรคhlen Sie die Aktivitรคt aus, die Sie analysieren mรถchten, z. B. Umsatz, Versandpingoder den Lagerbestand. Diese Entscheidung legt fest, was die Faktentabelle messen soll.
- Getreide deklarieren: Legen Sie den Detaillierungsgrad jeder Datenzeile fest, beispielsweise eine Zeile pro Position, pro Transaktion oder pro Tag. Eine klare Strukturierung gewรคhrleistet die Konsistenz des Modells.
- Ermitteln Sie die Dimensionen: Geben Sie den beschreibenden Kontext an, der zur Segmentierung der Fakten benรถtigt wird, z. B. Produkt, Kunde, Hรคndler, Filiale und Datum. Jeder dieser Kontexte wird zu einer Dimensionstabelle mit Attributen.
- Identifizieren Sie die Fakten: Ermitteln Sie die numerischen Kennzahlen, die das Unternehmen anstrebt. track, wie z. B. verkaufte Einheiten, Umsatz oder Kosten, und fรผgen Sie diese in die zentrale Faktentabelle ein.
- Baue den Stern: Verbinde die Faktentabelle รผber Fremdschlรผssel mit jeder Dimension.ping Die Dimensionen wurden denormalisiert, sodass das Diagramm eine einzige zentrale Faktentabelle bildet, die von ihren Dimensionen umgeben ist.
Nachdem das Sternschema erstellt wurde, fรผgen Sie jeder Dimension einen kรผnstlichen Schlรผssel hinzu, stellen Sie sicher, dass jede Faktentabelle eine zugehรถrige Datumsdimension besitzt, und vergewissern Sie sich, dass alle Fakten auf derselben Granularitรคt vorliegen. Es empfiehlt sich auรerdem, atomare Daten der niedrigsten Ebene zuerst zu laden, da Zusammenfassungstabellen spรคter jederzeit abgeleitet werden kรถnnen. Die Einhaltung dieser Regeln sorgt fรผr ein optimiertes Schema mit hoher Performance und einfacher Handhabung. Data Warehouse Berichterstattung.
Eigenschaften des Sternschemas
- In einem Sternschema wird jede Dimension durch genau eine Dimensionstabelle reprรคsentiert.
- Jede Dimensionstabelle enthรคlt ihre eigenen Attribute.
- Die Dimensionstabelle ist รผber einen Fremdschlรผssel mit der Faktentabelle verknรผpft.
- Die Dimensionstabellen sind nicht miteinander verknรผpft.
- Die Faktentabelle enthรคlt Schlรผssel und Kennzahlen.
- Das Sternschema ist leicht verstรคndlich und bietet eine optimale Festplattennutzung.
- Die Dimensionstabellen sind nicht normalisiert. Beispielsweise verfรผgt im obigen Beispiel Country_ID nicht รผber eine separate Country-Lookup-Tabelle, wie es bei einer anderen Tabelle der Fall ist. OLTP Das Design wรผrde.
- Das Schema wird von BI-Tools weitgehend unterstรผtzt.
Vorteile des Sternschemas
Das Sternschema bietet mehrere Vorteile, die es zu einem beliebten Ausgangspunkt fรผr das Design von Data Warehouses machen:
- Sternschemata verwenden eine einfachere Join-Logik als andere Schemata beim Abrufen von Daten aus hochgradig normalisierten Transaktionsquellen.
- Das Sternschema vereinfacht gรคngige Geschรคftsberichtslogiken, wie z. B. Periodenvergleiche und Stichtagsberichte.
- Sternschemata werden von OLAP-Systemen hรคufig verwendet, um Cubes effizient zu erstellen, und ein Sternschema kann in den meisten groรen OLAP-Systemen als Quelle dienen, ohne dass eine Cube-Struktur entworfen werden muss.
- Durch die Aktivierung spezifischer Leistungsoptimierungen, die auf Abfragen angewendet werden kรถnnen, kann der Abfrageprozessor bessere Ausfรผhrungsplรคne anbieten.
Nachteile des Sternschemas
- Da das Schema stark denormalisiert ist, wird die Datenintegritรคt nicht konsequent durchgesetzt.
- Es ist hinsichtlich fortgeschrittener Analyseanforderungen nicht flexibel genug.
- Sternschemata verstรคrken keine Viele-zu-Viele-Beziehungen zwischen Geschรคftseinheiten.
Wann verwendet man ein Sternschema?
Ein Sternschema ist die richtige Wahl, wenn schnelle und vorhersehbare Abfrageleistung wichtiger ist als Speicherplatzersparnis. Da das Modell seine Dimensionstabellen denormalisiert hรคlt und die Anzahl der Joins gering ist, eignet es sich fรผr analytische Workloads, bei denen Anwender regelmรครig รคhnliche Berichte, Dashboards und Aggregationen รผber groรe Mengen historischer Daten ausfรผhren.
Typische Situationen, in denen ein Sternschema gut geeignet ist, sind beispielsweise:
- Data Marts: Abteilung Datamarts mit einfachen, gut verstรคndlichen Beziehungen profitieren von der รผbersichtlichen Struktur.
- BI-Dashboards: Business Intelligence Die Tools lassen sich sauber auf Sternschemata abbilden, sodass Berichte und Visualisierungen schnell erstellt werden kรถnnen.
- OLAP-Cubes: Sternschemata sind eine natรผrliche Quelle fรผr OLAP-Cubes, Aggregation und Slice-and-Dice-Analysen.
Wenn der Schwerpunkt stattdessen auf minimalem Speicherbedarf, strikter Datenintegritรคt oder tiefgreifenden, sich verรคndernden Hierarchien liegt, eignen sich ein Snowflake-Schema oder ein stรคrker normalisiertes Design mรถglicherweise besser. Viele Teams kombinieren sogar beide Ansรคtze, indem sie mit einem Sternschema beginnen und nur die Dimensionen normalisieren, die dies tatsรคchlich erfordern.
