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:
- Ładowanie tabel z danymi podstawowymi
- Tworzenie obiektu typu wymiar
- Ładowanei tabel z danymi transakcyjnymi
- Tworzenie modelu (łączenie danych transakcyjnych z podstawowymi)
- 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