Was sind Maße und Dimensionen in Würfeln?


21

Ich bin sehr neu in Microsoft SQL Server Business Intelligence und Analysis Service(aber ich programmiere seit Jahren mit SQL Server). Kann jemand Maße und Dimensionen in Cubes in einfachen Worten beschreiben (Wenn es mit Bildern möglich ist)?

Vielen Dank

Antworten:


39

Denken Sie an einen Prozess oder ein Ereignis , das Sie analysieren möchten.

Angenommen , Sie haben Lougle Analytics erstellt und möchten Besuche (im Gegensatz zu einseitigen Anfragen) auf Ihrer Website analysieren. Der Besuch einer Website ist ein Prozess.

Eine Faktentabelle stellt einen Prozess oder ein Ereignis dar, den bzw. das Sie analysieren möchten. In diesem Fall handelt es sich um eine Liste von Standortbesuchen. Sie können beliebig viele Faktentabellen erstellen, eine pro Prozess oder Ereignis.

Welche Dinge könnten für Sie bei der Analyse von Ortsbesichtigungen nützlich sein?

  • Informationen zum Webbrowser (Marke, Bildschirmauflösung, ...)
  • Informationen zum Benutzer (Land, Bundesland, Stadt, ISP, basierend auf seiner IP-Adresse)
  • Informationen darüber, wann der Besuch begonnen hat (Jahr, Quartal, Monat, Woche, Tag)
  • Die Dauer des Besuchs
  • Die verweisende Seite, Landing Page und Exit Page (Titel, URL-Pfad)
  • Die Anzahl der während des Besuchs besuchten Seiten

Technisch gesehen könnten Sie dies alles in einer Tabelle zusammenfassen - wie in Excel, aber das würde sehr schnell sehr groß werden, sodass wir EINE Ebene der Normalisierung durchführen. Dimensionales Design besteht oft nur darin, "alles, was Sie für eine Analyse benötigen, in eine große Tabelle zu packen" und dann eine Ebene zu normalisieren.

So sieht Ihre Faktentabelle aus:

web_browser_key          bigint
ip_address_key           bigint
start_date_key           int
referring_page_key       bigint
landing_page_key         bigint
exit_page_key            bigint
duration_seconds         int
number_of_pages_visited  int

Es enthält eine Reihe von Schlüsselwerten, die auf Werte in anderen Tabellen † verweisen, sowie zwei Nichtschlüssel. Die Nicht-Schlüssel sind numerische Werte und werden als Measures bezeichnet . Können Sie den Durchschnitt des Markennamens des Webbrowsers ermitteln? Nein, es ist also eine Dimension. Können Sie den Durchschnitt der Besuchsdauer ermitteln? Ja, es ist also eine Maßnahme.

Die anderen Tabellen heißen Dimensionstabellen , und die ip_addressDimensionstabelle könnte folgendermaßen aussehen:

ip_address_key  bigserial primary key, /* use meaningless surrogate keys */
ip_address      inet unique,
country         text,
division        text,
locality        text,
latitude        numeric(8,6),
longitude       numeric(9,6)

Beachten Sie, dass es nicht normalisiert ist: Land könnte von Stadt (Ort) abgeleitet werden. In einem Data Warehouse geht es uns jedoch zunächst darum, die Analyse zu vereinfachen . Mit der Erleichterung der Analyse meine ich, tiefe Verknüpfungen zu vermeiden.

Beachten Sie, dass einige der Daten in der Dimensionstabelle hierarchisch sind : Land> Abteilung> Ort. Ihr OLAP-Server versteht (hoffentlich) Hierarchien, um Drilldown-Vorgänge zu unterstützen.

Ein logischer Cube ist nur die Sammlung von Dimensionen und Kennzahlen , mit denen Sie arbeiten. Anders als ein Zauberwürfel kann er mehr als drei Dimensionen haben. Stellen Sie sich eine Dimension als Spalte in Ihrem Datensatz vor.

OLAP ist eine Reihe von Operationen, die Sie gegen einen Datensatz ausführen können, z. B. Schwenken, Schneiden, Schneiden, Bohren. Denken Sie an Excel PivotTables. Ein OLAP-Server erleichtert OLAP-Vorgänge.

† normalerweise ohne Fremdschlüssel


Ich mochte die Erklärung mit einem Beispiel, aber kleines Problem - es gibt keine Erwähnung eines cityin Ihren Schemata, wenn Sie also sagen, country could be derived from cityich bin nicht sicher, was Sie meinen.
Don Cheadle

@ mmcrae 'locality' ist der generische Name für Stadt / Dorf
Neil McGuigan

13

In der Abbildung unten, die ein Beispiel für ein grundlegendes Sternschema ist. Die Dimensionen sind die Dim_Tables.

Dies sind im Allgemeinen die Werte, anhand derer Sie die Daten analysieren möchten. Sie möchten sich also einen bestimmten Produktverkauf in einem bestimmten Land über einen bestimmten Zeitraum ansehen.

In der fact_sales-Tabelle haben Sie nur die Kennzahl Units_Sold.

Kennzahlen (auf der einfachsten Ebene) sind nur Dinge, die Sie aggregieren möchten, wenn Sie anhand von Kriterien in den Dimensionen analysieren.

Grundlegendes Sternschema

Wenn es noch etwas Spezifischeres gibt, das Sie gerne wissen würden, lassen Sie es mich bitte wissen.


Es scheint, dass dieses Bild aus Wikipedia stammt: en.wikipedia.org/wiki/Star_schema . Sie sollten es erwähnen.
Scarabee
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.