Kostkę można utworzyć z danych tabelarycznych, ekstrahując tabele faktów z relacyjnej bazy danych do pliku Excela, a następnie wprowadzając kostkę do środowiska wykonawczego.
W celu wprowadzenia kostki wielowymiarowej są wykrywane wzorce powiązań nagłówków kolumn i zawartych w nich danych. Proces transformacji danych tabelarycznych w strukturę, która może zostać użyta w kostce wielowymiarowej, obejmuje następujące aspekty:
Korelacje między kolumnami
Korelacje między typami kolumn (np. daty, liczbowe i tekstowe)
Analiza tekstów nagłówkowych pod kątem wspólnych prefiksów i terminów powiązanych z analityką biznesową (takich jak koszt, cena, konto)
Struktura raportu (np. komórki scalane i komórki puste)
Opcjonalnie: Nagłówki wyznaczające, służące do jawnego definiowania postaci kostki oraz mogące zawierać formuły do tworzenia wymiarów miar
Hierarchie miar (mogą być także generowane za pomocą funkcji transformacji danych w narzędziu Cube Designer)
W celu zademonstrowania koncepcji nagłówków naturalnych i nagłówków wyznaczających są udostępniane przykładowe pliki Excela z danymi tabelarycznymi.
Podczas pracy z danymi tabelarycznymi należy je przeanalizować przed przystąpieniem do tworzenia z nich kostki. Następnie, po utworzeniu kostki, należy sprawdzić, czy uzyskana struktura kostki jest odpowiednia.
Kostkę można utworzyć z danych z danych tabelarycznych w instancji Essbase lub w narzędziu Cube Designer. Zob. Tworzenie i aktualizowanie kostki z danych tabelarycznych.
Dla nagłówków naturalnych jest używany format "tabela.kolumna", przedstawiony w pliku Sample_Table.xlsx
. W tym przykładowym pliku nagłówki kolumn mają takie nazwy, jak: Units, Discounts, Time.Month, Regions.Region i Product.Brand.
W procesie transformacji jest tworzona następująca hierarchia:
Units Discounts Fixed Costs Variable Costs Revenue Time Month Quarter Years Regions Region Area Country Channel Product Brand ...
Korzystając z nagłówków wyznaczających (podpowiedzi), można określić sposób traktowania danych tabelarycznych w procesie transformacji.
Na przykład można wymusić traktowanie kolumny jako wymiaru miar lub jako wymiaru atrybutowego. Dla większości nagłówków wyznaczających trzeba podać w nawiasach kwadratowych [ ] odpowiednie słowo kluczowe. Nagłówki wyznaczające są zademonstrowane w szablonach Unstr_Hints.xlsx
i Sample_Table.xlsx
, dostępnych w galerii.
Obsługiwane formaty nagłówków wyznaczających:
Tabela 6-1 Formaty nagłówków wyznaczających
Wyznaczenie | Format nagłówka | Przykład |
---|---|---|
Dimension generation |
GeneracjaNadrzędna.GeneracjaBieżąca |
Category.Product |
Alias |
GeneracjaReferencyjna.Generacja[alias] |
Year.ShortYearForm[alias] |
Attribute |
GeneracjaReferencyjna.NazwaWymAtrybutowego[atr] |
Product.Discounted[attr] |
Measures |
NazwaMiary[miara] |
Price[measure] |
Measure generation |
Rodzic.dziecko[miara] Rodzicem najwyższego poziomu jest, jeśli jest unikatowa, nazwa wymiaru "Konto". Jeśli nie jest unikatowa, ten element jest generowany w wymiarze "Konto". |
Measures.profit[measure] profit.cost[measure] cost.price[measure] |
Measures formula |
NazwaMiary[=składnia_formuły;] |
profit[="price"-"cost";] profit[="D1"-"E1";] price[=IF ("S1" == #MISSING) "R1"; ELSE "S1"; ENDIF;] |
Measures consolidation |
NazwaMiary[+] : dodanie do rodzica NazwaMiary[-] : odjęcie od rodzica NazwaMiary[~] : bez konsolidacji (równoważne z [miara]) Ustawienie domyślne: bez konsolidacji. |
price.shipment[+] Konsolidację można definiować tylko dla wymiarów miar |
Formula consolidation |
NazwaFormuły[+=<formuła>] : dodanie do rodzica NazwaFormuły[-=<formuła>] : odjęcie od rodzica |
profit[+=price-cost] cost.external[+=ExternalWork+ExternalParts] |
UDA |
GeneracjaReferencyjna[uda] |
Product[uda] |
Skip Kolumna nie jest odczytywana. |
NazwaKolumny[skip] |
column[skip] |
Recur Dla pustych komórek jest używana wartość ostatniej komórki kolumny Powtarzanie (słowo kluczowe "recur") można łączyć z innymi wyznaczeniami; w nawiasach kwadratowych należy zawrzeć rozdzielone przecinkiem wyznaczenia, np. ColumnName[wyznaczenieA,recur]. |
NazwaKolumny[recur] |
Product[recur] Product[uda,recur] |
Można wyznaczyć kolumny na wymiary miar oraz można używać formuł do tworzenia, w procesie transformacji, wymiarów miar z danymi obliczanymi. Nagłówki wyznaczające miary i formuły miar są określane poprzez nazwę wymiaru miar, po której następuje słowo kluczowe lub formuła, ujęte w nawiasy kwadratowe.
Można także konsolidować miary i formuły, dodając lub odejmując je do/od rodzica.
Aby wyznaczyć kolumnę na wymiar miar, należy w nagłówku kolumny wpisać nazwę wymiaru, po czym dołączyć w nawiasach kwadratowych słowo kluczowe [measure]. Na przykład można wyznaczyć kolumny Units i Fixed Costs jako wymiary miar, używając następującej składni: Units[measure] i Fixed Costs[measure].
W procesie transformacji zostanie utworzona następująca hierarchia z kolumnami Units, Discounts, Fixed Costs, Variable Costs i Revenue stanowiącymi miary:
Time Year Quarter Month Regions Region Area Country ... Product Brand ... Units Discounts Fixed Costs Variable Costs Revenue
Hierarchię generacji miary (hierarchia rodzic.dziecko[measure]) można utworzyć w sposób analogiczny do tworzenia generacji zwykłych wymiarów.
Na przykład, aby utworzyć hierarchię miar, można wpisać Measures.profit[measure], profit.cost[measure] i cost.price[measure], wskutek czego uzyskuje się następującą hierarchię:
Measures profit cost price
Aby utworzyć wymiar miar z użyciem formuły, należy w nagłówku kolumny wpisać nazwę wymiaru, po czym dołączyć w nawiasach kwadratowych [ ] wzór formuły. W nawiasach kwadratowych formuła zaczyna się znakiem równości (=), a kończy średnikiem (;). Argumenty w formule odpowiadają nazwom kolumn lub współrzędnym i muszą być ujęte w cudzysłów. W formule można używać funkcji i poleceń obliczeniowych z systemu Essbase.
Załóżmy, że mamy plik Spend_Formulas.xlsx z danymi tabelarycznymi, zapisanymi w arkuszu SpendHistory, zawierającym wiele kolumn. Na przykład są w nim dostępne kolumny Year (kolumna A) i Quarter (kolumna B) oraz wymiary miar mające nazwy Spend (kolumna J) i Addressable Spend (kolumna K). W kolumnach tych znajdują się dane. Następnie istnieją nagłówki (nagłówki kolumn), w których — w celu utworzenia wymiarów miar — są używane formuły. Kolumny te nie zawierają danych. Na przykład, aby został utworzony wymiar Total Spend, w nagłówku w kolumnie O jest używana następująca formuła Essbase: Measure.Total Spend[="Addressable Spend" + "Non-Addressable Spend";]. Z kolei, aby został utworzony wymiar AddSpendPercent, w nagłówku w kolumnie P jest używana ta formuła Essbase: Measure.AddSpendPercent[="Addressable Spend"/"Total Spend";].
W procesie transformacji jest tworzona następująca hierarchia:
Proces transformacji może także zidentyfikować wymiary miar, gdy nazwa wymiaru jest zduplikowana. Załóżmy, że mamy nagłówek kolumny, w którym jest używana formuła Meas.profit[="a1"-"b1";] i który tworzy wymiar Meas. Jeśli w innym nagłówku kolumny zostanie jako rodzic najwyższego poziomu użyta nazwa wymiaru Meas (na przykład Meas.Sales), to wymiar Sales będzie także traktowany jako wymiar miar.