Data Warehouse Cloud

Data Warehouse Cloud i Analytics Cloud – nowe możliwości modelowanie danych

Coraz więcej firm zdaje sobie sprawę z korzyści płynących z aplikacji technologii chmury przy procesach biznesowych. Pozwala ona przedsiębiorstwom skupić się na wyzwaniach biznesowych zamiast technicznych, umożliwia uproszczenie operacji i  oferuje zwiększoną elastyczność oraz łatwość dostosowania w porównaniu z rozwiązaniami on-premise.

Kontakt z chmurą jednak nadal ogranicza się zazwyczaj do adopcji rozwiązań, które wspomagają pomniejsze procesy biznesowe. Ale coraz więcej firm, patrząc na potencjalne benefity i obecne trendy rynkowe, zwraca uwagę na chmurowe rozwiązania dla systemów o krytycznym znaczeniu dla biznesu.

Jedną z odpowiedzi ze strony SAP na takie zapotrzebowania jest SAP Data Warehouse Cloud – hurtownia danych oparta na platformie SAP HANA. Łączy w sobie możliwości technologii in-memory z zaawansowaną analityką SAC (SAP Analytics Cloud) w jednym rozwiązaniu, które dzięki zastosowaniu technologii chmury można dopasować do firmy dowolnej wielkości.

W DWC można łączyć źródła danych przechowywane zarówno online  jak i lokalnie, posiada także wbudowana warstwę semantyczną. Do Analityki i zastosowań Business Intelligence na każdym tenancie zainstalowane jest rozwiązanie SAP Analytics Cloud.

Interfejs modelowania danych w DWC bardzo przypomina ten znany z SAC,  jednak operuje na kilku nowych funkcjonalnościach takich jak  „asocjacje (associations)”  czy wbudowane typy semantyczne (semantic type). W poniższym artykule postaram się pokazać jak łatwo i szybko, korzystając z tych technologii, można utworzyć model, dodać do niego dane i na ich podstawie utworzyć raport.

Spis treści:

  1. Ładowanie tabel z danymi podstawowymi
  2. Tworzenie obiektu typu wymiar
  3. Ładowanei tabel z danymi transakcyjnymi
  4. Tworzenie modelu (łączenie danych transakcyjnych z podstawowymi)
  5. Dodawanie hierarchii

Przy organizacji danych w DWC możemy skorzystać z możliwości modelowania graficznego, modelowania SQL, a także wykorzystać własne narzędzia do integracji danych. W artykule skupimy się na trybie graficznym.

Krok 1

Naszym zadaniem jest budowa prostego modelu opartego o sprzedaż samochodów. Źródłem danych będą tabele w plikach .csv.

Zaczniemy od dodania danych podstawowych związanych ze sprzedawcą samochodów. W tym celu do systemu władujemy 3 tabele – jedna zawierająca opisy dla sprzedawców, druga zawierająca atrybut (lokalizacja) , i trzecia zawierająca opisy dla lokalizacji

Każdą tabelkę importujemy z widoku Data Builder – Import CSV File

Po wybraniu tabelki i akceptacji wyboru pojawi się ekran edycji danych – tutaj wykonamy  walidację, wybierzemy nazwy dla kolumn, sprawdzimy czy rodzaj danych został poprawnie wykryty itp. Możemy także wykonać transformacje znane z SAC (konkatenacja, podział,  zamiana, filtr…). W przykładzie władowaliśmy tabelkę z opisami dla sprzedawców samochodów i ustawiliśmy odpowiednie nazwy kolumn.

Żeby załadować dane do systemu należy nacisnąć przycisk „Deploy” w prawym dolnym rogu a następnie wpisać nazwę dla tabeli.

Krok 2

Po władowaniu 3 tabelek z danymi połączymy je w jeden obiekt typu wymiar – zwiększy to zarówno czytelność modelu jak i  ułatwi dodanie warstwy semantycznej i asocjacji.

W tym celu w Data Builder wybieramy New Graphical View.

Po lewej stronie interfejsu mamy do wyboru wszystkie tabele zdefiniowane w systemie. Na środek ekranu przeciągamy tabelę z opisami dla sprzedawcy.

W interfejsie graficznym powinniśmy widzieć teraz dwa obiekty –dodany obiekt i View 1, który stanowi ostateczny widok naszego obiektu.

Teraz przeciągamy tabelę z atrybutami dla sprzedawcy, aby połączyć je z opisami. Jeśli nazwy kolumn są takie same, system automatycznie wybierze odpowiednią kolumny do połączenia. W przeciwnym razie wspólne pole musimy wskazać manualnie.

Następnie do atrybutów przeciągamy tabelkę z opisami dla lokalizacji.

Nasz wymiar jest już prawie gotowy. Teraz zdefiniujemy dane semantyczne – dzięki temu system będzie wiedział jak odczytywać dane obiektu.

W tym celu zaznaczamy ostatni element View 1, aby wywołać kontekstowe menu właściwości po prawej stronie ekranu. Możemy w nim zmienić nazwę naszego obiektu (np. Dealer Dimension). W polu „Type” wybieramy opcję „Dimension”. Umożliwi to dostęp do dodatkowych opcji przy definicji danych. Klikamy w ikonę ołówka przy polu „Attributes”.

Na ekranie pojawi się okno edycji danych podstawowych. Kolumna „Semantic Type” definiuje rodzaj informacji zawartej w obiekcie, może być to np. waluta lub data. W tym wypadku dla wszystkich opisów wybieramy opcję „Text”, a następnie kolumny te ukrywamy (odznaczenie ikonki oka). W polu  „Label Column” ustawiamy odpowiednie opisy dla identyfikatorów. Jako główny klucz ustawiamy klucz sprzedawcy.

Dzięki temu system wie, co powinien traktować jako klucz, a co jako opis. Taki widok zapisujemy i udostępniamy korzystając z przycisku Deploy w lewym górnym rogu.

Krok 3

Podobnie łatwo i szybko możemy władować tabelkę z danymi transakcyjnymi – po wczytaniu tabeli możemy wejść w jej edycje i zmienić typ na „Analytical Dataset” (odpowiednik modelu w DWC) , a nastepnie odpowiednio zdefiniować  klucze, wskaźniki i typy danych.

Krok 4

Teraz aby połączyć nasze dane korzystając z asocjacji utworzymy nowy Graphical View.

Na środek ekranu przeciągamy tabelę z danymi transakcyjnymi.

W oknie właściwości głownego obiektu przechodzimy do pola Associations.

Asocjacje służą do definiowana zależności między modelem opartym na faktach i używanych w nim wymiarach (np. hierarchie i opisy)

 Naciskamy plus aby dodac tabelę

Z listy dostępnych elementów wybieramy nasz obiekt z wymiarem sprzedawcy. Następnie klikamy ok. Upewniamy się, by tabelki były połączone po kolumnie z kluczem.

Aby udostępnić obiekt do konsumpcji należy zaznaczyć opcję „Exposing”. Następnie zapisujemy model i zaznaczamy opcję „Deploy

Taki model możemy teraz dodać do raportu w wbudowanym środowisku SAP Analytics Cloud (lub podłączyć się ze swojego tenantu) i zobaczyć, że dane wraz z opisami i atrybutami dla sprzedawców są już dostępne

Krok 5

Korzystając z asocjacji możemy także szybko i łatwo dodać hierarchię. W tym celu  należy przejść do edycji wymiaru sprzedawcy. W interfejsie zaznaczamy główny obiekt , a w okienku właściwości klikamy na ikonę hierarchii.

Jako że na chwilę obecną w tabeli mamy władowany tylko jeden atrybut, nasze możliwości tutaj są ograniczone, ale dla przykładu możemy dodać hierarchię typu Level-Based w schemacie Lokalizacja -> Dealer.

W tym celu naciskamy na plus i z dwóch opcji,Level Based i Parent-Child, wybieramy tą pierwszą. Następnie ustawiamy kolejność hierarchii zaczynając od klucza lokalizacji (im wyższa pozycja elementu na liście, tym wyżej jest postawiony w hierarchii)

Wykonujemy deploy na wymiarze, a następnie otwieramy model i też wykonujemy na nim deploy.

Po odświezeniu danych w SACu możemy zauwazyć, że atrybuty dla sprzedawcy wyświetlane są w formie hierarchii