1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

Vorteil Starschema/Snowflakeschema vs. normale Tabelle in Datenbanken bzw. Data Warehouses

Dieses Thema im Forum "Datenmodellierung, Datenbank-Design" wurde erstellt von BartSimpson81, 16 Juni 2011.

  1. BartSimpson81

    BartSimpson81 Neuer Benutzer

    Hallo zusammen:)

    ich hätte mal ne Frage bezüglich des beim Einsatzes der oben genannten Schemata wie Starschema/Snowflake gegenüber einer normalen Tabelle im Datenbanken/Data Warehouse Bereich.
    Und zwar lese ich immer wieder in der Literatur das der Einsatz dieser Schemata im Data Warehouse Bereich also dem OLAP (Online Analytical Processing) Performance Vorteile bei Abfragen bringen soll. Dies kann ich mir aber logisch nicht ganz erklären...:confused:

    Also hier mal mein Gedankengang, bei einer Tabelle ich nenne Sie jetzt einfach mal "Auftragstabelle" habe ich folgende Spalten: Auftragsnr, Kundennr, Kunde, Datum, Position, Artikelnr., Artikel, Stückzahl, Preis mit ihren jeweiligen Einträgen

    Will ich jetzt zum Beispiel wissen, ob einen bestimmten Artikel zum Beispiel einen Joggingschuh an Kunden verkauft habe und welche diese sind so würde ich folgende Anfrage in SQL schreiben:

    (Beispiel mit einer einzigen Tabelle)

    SELECT Kundenname
    FROM Auftragstabelle
    WHERE Artikel = 'Joggingschuh'

    bei Einsatz eines Schemata wie Starschema/Snowflake Schema würde aber die Anfrage über mehrere Tabellen (Faktentabelle/Dimensiontabellen) gehen und die Anfrage komplexer werden (mehrer Joins). So könnte die vorige Tabelle "Auftragstabelle" jetzt in vier Tabellen zerlegt sein, für diese Beispiel sollen Sie den Namen "Auftragstabelle" (enthält Auftragnr, Kundennr, Datum), "Kundentabelle" (enthält Kundennr, Kunde) "Auftragspositionen" (enthält Auftragsnr,Position,Artikelnr, Stückzahl) sowie die Tabelle "Artikeltabelle" (enthält Artikelnr, Artikel, Preis)

    die gleiche Abfrage mit dem Joggingschuh wie oben lautet jetzt mit SQL:

    SELECT Kundenname
    FROM Kundentabelle, Artikeltabelle, Auftragspositionen, Auftragstabelle
    WHERE Kundentabelle.Kundennummer = Auftragstabelle.Kundennummer
    AND
    Auftragspositionen.Auftragsnummer = Auftragstabelle.Auftragsnummer
    AND
    Artikeltabelle.Artikelnummer = Auftragspositionen.Artikelnummer
    AND
    Artikel = 'Joggingschuh'

    also ist doch die zweiter Anfrage wie oben schon erwähnt komplexer, und braucht da doch auch mehr Zeit bei einer Abfrage bzw. OLAP, oder nicht? Falls es doch einen Performancevorteil gegenüber der Verwendung einer einzelnen Tabelle gibt bitte ich um detailierte Erklärung wie dieser durch die Schemata entsteht?

    Oder habe ich was wesentliches im Bezug auf OLAP vergessen. Gibt es vielleicht auch noch andere Vorteile warum diese Schemata im Data Warehousing/OLAP eingesetzt werden.

    Wäre super wenn ihr mir hier weiterhelfen könntet:)
     

Diese Seite empfehlen