###### tags: `3. Business Intelligence - Modelleriung - Lösungsansätze`
# Klausur Wintersemester 2019/20
## 3 Business Intelligence - Modellierung (22 Punkte/Minuten)
Ein ADAPT-Modell wurde im Rahmen der Anforderungserhebung in einem Einzelhandelsunternehmen für ein neu zu erstellendes BI-System zusammengetragen.
Legende:


### Aufbau
Faktentabelle ist SalesData
- **Keyfigures auf KEINEN FALL IN EINER EIGENEN KEY-FIGURES-TABELLE ABBILDEN!!!**
- time in FT als Attribut TimeID (keine Verweis in eigene Tabelle)
Faktentabelle sieht also so aus
1. Time
2. productID
3. SalesOrganisationID
- Keyfigures wird hier zu:
4. Revenue
5. SalesQuantitiy (übernehmen)
### Snowflake:
- dann Produkttabelle für jedes "Dreieck" eigene Tabelle
- von FT ProductID zum untersten "Hierachie" Product ID und dann nach oben weitere Tabellen mit Verweis
- (also in Product -> ProductGrpID, dann neue Tabelle mit ProductGrpID und Attributen davon und ProductcategoryID)
- was am weitesten Weg ist bei snowflake ist gröbste Granulierung/von unten nach oben;
- Dabei ist zu beachten, das die Neuen Tabellen immer den PK bilden und alle anderen verweise (inklusive in Faktentabelle) als FK gekennzeichten sind;
- Besonderheit dabei, alle FK in FT bilden zusammen einen PK
- Level ist auf gleicher Hierarchiestufe wie ProductgrpCategory, daher wird bei ProductGrp sowohl FK von Category und Level hinzugefügt und 2 Tabellen dafür jeweils erstellt.
### Starschema:
und bei Starschema alle Attribute von allen "Dreiecken" in eine Tabelle, inklusive ID´s wie von ProductgrpID und ProductCategoryID, inklusive der "Level"
a. Leider ist Ihr Datenbankverantwortlicher bisher nur im OLTP-Bereich tätig gewesen und kann daher das ADAPT-Modell nicht zielführend interpretieren.
*Überführen Sie daher das ADAPTModell in ein Snowflake-Schema (10 Minuten).*
b. Beim Test des Systems treten Performance-Probleme auf, die auch durch ein Star-Schema nicht zielführend behoben werden können. Ursache sind insbesondere Aggregationen entlang der Hierarchien in der Product-Dimension, da das Unternehmen sehr viele Products vertreibt. Hingegen sind eher wenige ProductGroups vorgesehen.
*Welchen Lösungsvorschlag können Sie unterbreiten, um die Performance für Auswertungen entlang der Klassifikationsstufen der Product-Dimension zu verbessern?
Wie würde sich Ihr Lösungsvorschlag im Snowflake-Schema widerspiegeln? Skizzieren Sie die Änderungen im zuvor erstellen Snowflake-Schema (4 Minuten).
Erläutern Sie, für welche Art von Anfragen die Verarbeitungsgeschwindigkeit durch Ihre Lösung erhöht werden kann (2 Minuten).*
>[name=PDF 07 seite 42]
Vorabinfo:
***Aggregate*** sind keine Attribute ansich, sondern Berechnungen aus Attributen
~(Revenue/Nettoumsatz~ ~=~ ~Salesquantity~ ~*~ ~Nettoprice)~
b.)
- Fast Constellation Schema, da vorberechnetete Aggregate in einer eigenen Faktentabelle ausgelagert werden, was zur Entlastung des Systems sorgt
- Umsetzung in Snowflakeschema an beispiel Revenue -> weitere Faktentabelle wie Krake zu den benötigten Feldern zum Rausziehen der Daten zur Berechnung (FK in der Faktentabelle, alle anderen PKs /keine Änderung) Dabei geht man in beiden Schema direkt auf die Tabelle, welche die Infortmationen beinhalten.

- Alle Anfragen, welche auf die Aggregate der neu erstellten Faktentabelle zugreifen, da nicht mehr die einzelnen Attribute aus den Tabellen herausgezogen werden müssen (samt innerjoins) um sie anschließend zu berechnen
>[name= Just for Info: PDF 07 seite 43]
Fast Constellation Schema -> Auslagerung vorberechneter Aggregate in eigene Faktentabelle Summentabelle -> Verweis von Faktentabelle direkt auf Attribut der jeweiligen Hierarchieebene der Dimensionstabelle
*FastConstellation Schema ist einfach eine weitere Faktentabelle, die für sich notwendigen Attributen reinzieht um etwas zu berechnen oder verkleinert darzustellen*
c. Nach Behebung der Performance-Probleme erläutert Ihnen der Projektleiter des Einzelhandelsunternehmens, dass ihm ein befreundeter Unternehmer von der Möglichkeit erzählt hat, unterschiedliche Berichtsformen (as-is-Reporting, as-of-Reporting, as-posted-Reporting) im selben Datenmodell abzubilden.
*Erläutern Sie kurz, was unter den Berichtsformen (as-is-Reporting, as-of- und as-postedReporting) zu verstehen ist (3 Minuten).*
>[name=Hinweis -> Vorlesung 9,Seite 10/Videobeispiel ab Minute 18]
#### as-is-Reporting
Datensätze aus Sicht des "jetzt gerade", sprich es gibt keine History, in der man sehen kann, dass es z.b. eine Verschiebung eines Produktes in eine andere Kategorie gab.
Man würde im Bericht nur sehen, das die alte Kategorie Einbußungen in Höhe des verschobenen Produktes hat, während die neue Kategorie Gewinne enstprechender Höhe hat.
- Darstellung der Fakten/ Kennzahlen mit den aktuellen Dimensionsausprägungen und –hierarchien
- Dies vereinfacht Vergleiche mit Vergangenheitszeiträumen (z.B. Vorjahr).
- Beispiel:
- Analyst: „Es kommt mir darauf an, zu welcher Sales Organisation (SO) der Kunde jetzt gehört.“
- die ursprünglich in einer anderen SO angefallenen Umsätze werden in der neuen SO angezeigt
#### as-of-postedReporting
Es gibt eine definierte historische Struktur zum bestimmten Stichtag
Nur Datensätze zum Stichtag sind relevant
- Darstellung der Fakten/ Kennzahlen mit den zum Stichtag gültigen Dimensionsausprägungen und –hierarchien
- Erst nach dem Stichtag eingefügte Dimensionsausprägungen werden nicht angezeigt
- Beispiel:
- Analyst: „Ich möchte die Möglichkeit haben, einen Stichtag zu definieren. Der Bericht soll auf den Sales Organisationen (SO) zu diesem Stichtag basieren“
- Damit können Umsätze simulieren, als wenn eine Umstrukturierung nicht stattgefunden hätte
#### as-postedReporting
Datensätze gemäß historischer Wahrheit sind relevant
- Darstellung der Fakten/ Kennzahlen mit den zum Zeitpunkt der Durchführung des Geschäftsvorfalls (e.g. Verkauf) gültigen Dimensionsausprägungen und –hierarchien
- Transaktionsorientierte Sicht auf die Bewegungsdaten
- Beispiel:
- Analyst: „Es kommt mir darauf an, zu welcher Sales Organisation (SO) der Kunde zum Zeitpunkt des Verkaufsvorgangs gehört hat.“
- Die alten Umsätze verbleiben bei der alten SO, ab dem Wechsel werden die neuen Umsätze in der neuen SO angezeigt
*Skizzieren Sie die Tabelle der Sales Organisation (inkl. Kennzeichnung der Schlüsselattribute) für ihr Snowflake-Schema, so dass die Berichtsformen abgebildet werden können (3 Minuten).*
## **Klausur SoSe 2019**
**Business Intelligence - Modellierung (16 Punkte/Minuten)**
Ein ADAPT-Modell (siehe letzte Seite, das Blatt können Sie für die Bearbeitung abtrennen. Das Blatt
muss aber wieder mit abgegeben werden) wurde im Rahmen der Anforderungserhebung in einem
Einzelhandelsunternehmen für ein neu zu erstellendes BI-System zusammengetragen.
a. Leider ist Ihr Datenbankverantwortlicher bisher nur im OLTP-Bereich tätig gewesen und kann
daher das ADAPT-Modell nicht zielführend interpretieren. Überführen Sie daher das ADAPTModell in ein Snowflake-Schema (10 Pkt.).
b. Beim Test des Systems treten Performance-Probleme auf, die auch durch ein Star-Schema nicht
zielführend behoben werden können. Ursache sind insbesondere Aggregationen entlang der Hierarchien in der Product-Dimension, da das Unternehmen sehr viele Produkte vertreibt. Hingegen
sind eher wenige ProductGroups vorgesehen.
Welchen Lösungsvorschlag können Sie unterbreiten, um die Performance für Auswertungen entlang der Klassifikationsstufen der Product-Dimension zu verbessern? Wie würde sich Ihr Lösungsvorschlag im Snowflake-Schema widerspiegeln? Skizzieren Sie die Änderungen im zuvor erstellen
Snowflake-Schema (4 Pkt.).
Erläutern Sie, für welche Art von Anfragen die Verarbeitungsgeschwindigkeit durch Ihre Lösung
erhöht werden kann (2 Pkt.).

## **ProbeKlausur SoSe 2018**
Ein ADAPT-Modell (siehe letzte Seite, das Blatt können Sie für die Bearbeitung abtrennen. Das Blatt
muss aber wieder mit abgegeben werden) wurde im Rahmen der Anforderungserhebung in einem Einzelhandelsunternehmen für ein neu zu erstellendes BI-System zusammengetragen.
Leider ist Ihr Datenbankverantwortlicher bisher nur im OLTP-Bereich tätig gewesen und kann daher das ADAPT-Modell nicht zielführend interpretieren. Überführen Sie daher das ADAPT-Modell in ein Snowflake-Schema (12 Pkt.)