Wyślij zapytanie Dołącz do Sii

Część druga, to opis platform i systemów z obszaru przetwarzania danych, budowy aplikacji i raportowania. Będzie o HANA, XS(A), SAP BW, Cloud Platform i pokrewnych rozwiązaniach, oraz ich wzajemnych zależnościach.

Spis treści:

1. Wstęp

2. Indeks skrótów

Część I

  1. SAP HANA Cloud Platform (HCP) vs. SAP Cloud Platform
  2. Środowiska i narzędzia deweloperskie (/administracyjne)
    1. Cloud czy on-premise
    2. SAP HANA Studio/Eclipse
    3. Rodzina narzędzi typu Web IDE
      1. SAP Web IDE
      2. SAP HANA Web-based Development Workbench
      3. SAP Web IDE for HANA
      4. SAP Web IDE Full-stack
    4. SAP Design Studio (oraz SAP Lumira, SAP Lumira Discovery, SAP Lumira Designer)
    5. Źródła

Część II

  1. HANA vs. HANA DB vs. HANA Platform
    1. Źródła
  2. XS vs. XSA/HDI
    1. Wstęp
    2. Extended Application Services Classic (XS lub XSC)
    3. Extended Application Services Advanced (XSA) + HDI
    4. HDI (HANA Deployment Infrastucture)
    5. Cloud Foundry
    6. Źródła
  3. S/4HANA, C/4HANA, BW/4HANA (x/4HANA)
  4. SAP BW
    1. Źródła
  5. BW on HANA, BW powered by HANA, BW/4HANA
    1. Źródła (i auto-źródła)
  6. Embedded BW
    1. Źródła
  7. S/4HANA Embedded Analytics

Część III

  1. Virtual Data Model (VDM)
  2. HANA Native Views (HANA Views, HANA Information Views)
    1. Attribute View
    2. Analytic View
    3. Calculation View
    4. SAP HANA Live
    5. SAP HANA Live Browser
    6. Źródła
  3. Core Data Services (CDS)
    1. Wstęp
    2. ABAP CDS vs. HANA CDS
    3. Źródła

5. HANA vs. HANA DB vs. HANA Platform

Używając nazwy HANA trzeba uważać, czy jasno wynika z kontekstu, o co chodzi. Jest HANA DB (database services), czyli baza danych in-memory, oraz nieco szersze pojęcie – HANA Platform (application & analytic services, database services, integration services), czyli HANA DB + otoczka różnych dodatków dokoła. HANA Platform ma być produktem samowystarczalnym, który zapewnia większość potrzebnych usług do działania aplikacji biznesowych i nie tylko. Jest też HANA Appliance, termin ten odnosi się do części sprzętowej, na której HANA jest uruchomiona.

SAP HANA Platform Services
Ryc. 1 SAP HANA Platform Services

5.1. Źródła

6. XS vs. XSA/HDI

6.1. Wstęp

Extended Application Services jest rozszerzeniem platformy HANA o możliwość tworzenia i uruchamiania aplikacji typu full-stack (UI, server-side logic, database services) – w konfrontacji z możliwościami samej bazy danych, gdzie część aplikacyjna musiałaby być tworzona i hostowana z wykorzystaniem oddzielnego serwera. Wiąże się to z implementacją/obsługą w obrębie platformy serwera aplikacyjnego/webowego, który procesowałby logikę i komunikował się z użytkownikami oraz bazą. Dzięki temu, możliwe jest tworzenie tzw. natywnych aplikacji HANA – w całości obsługiwanych w obrębie jednej platformy.

6.2. Extended Application Services Classic (XS lub XSC)

Jest to rozszerzenie architektury HANA Platform o serwer aplikacyjno-webowy, umożliwiający obsługę skryptów server-side w języku JavaScript, procesowanych przez XS Engine. Architektura XS pojawiła się wraz z HANA 1.0 SPS05, od wersji HANA 1.0 SPS11 współistnieje z XSA, natomiast od wersji SAP HANA 2.0 SPS02 jest oznaczona jako deprecated (niezalecana/przestarzała) na rzecz XSA.

Poniżej kilka schematów dotyczących XS:

SAP HANA XS basic approach
Ryc. 2 SAP HANA XS basic approach
Schemat stosu aplikacyjnego bez XS (po lewej) i z XS
Ryc. 3 Schemat stosu aplikacyjnego bez XS (po lewej) i z XS
XS w kontekście platformy HANA
Ryc. 4 XS w kontekście platformy HANA

6.3. Extended Application Services Advanced (XSA) + HDI

(Poniższa treść w dużej mierze czerpie z artykułu.)

Architektura XSA/HDI pojawiła się w wersji SAP HANA 1.0 SPS11 (on-premise). XSA przyświeca kilka celów:

  • unifikacja architektury środowisk on-premise i cloud
  • adaptacja koncepcji Cloud Foundry, czyli:
  • elastyczne podejście do tworzenia aplikacji
  • większy (rozszerzalny) wybór środowisk uruchomieniowych i deweloperskich
  • skalowalność

XSA (on-premise) jest implementacją kluczowych konceptów i funkcji Cloud Foundry.

For the on premise delivery of SAP HANA, we felt that delivering the complete Cloud Foundry technical stack was too much. Therefore we have created our own implementation of the Cloud Foundry APIs as XS Advanced in the on premise HANA delivery in SPS 11. This means that the core concepts of Cloud Foundry will be present in both SAP HANA on premise and in SAP HANA Cloud Platform. (link)

Wraz z XSA pojawia się kilka dodatkowych możliwości, jeżeli chodzi o aplikacje serwerowe. Poza środowiskiem JavaScript, uruchamianym na XS Engine (XSJS), pojawiła się opcja korzystania z Node.js. Pojawiła się również możliwość implementacji rozwiązań bazujących na:

  • Apache TomEE Java
  • Google V8 JavaScript/Node.js

oraz aplikacji C++ (zastosowania wewnętrzne SAP oraz limitowany dostęp dla partnerów).

Architektura XS oraz XSA dla HANA 1.0 SPS11 (on-premise)
Ryc. 5 Architektura XS oraz XSA dla HANA 1.0 SPS11 (on-premise)
XSA/HDI (core Cloud Foundry) on-premise (po lewej) oraz w chmurze (full Cloud Foundry)
Ryc. 6 XSA/HDI (core Cloud Foundry) on-premise (po lewej) oraz w chmurze (full Cloud Foundry)

Jednym z głównych benefitów korzystania z XSA, na rzecz XS jest możliwość operowania w architekturze mikrousług (microservices).

W XS działa pojedynczy proces systemowy nazywany XSEngine. W ramach tego procesu, tworzona jest pula maszyn wirtualnych JavaScript (JS VM), które są klonami tej samej wersji bazowej. Nie ma możliwości kontroli wersji JS, na której aplikacja działa, ani konfiguracji parametrów (np. pamięci) dla każdej z osobna. Dodatkowo, w związku z tym, iż wszystkie maszyny wirtualne działają w obrębie tego samego procesu systemu operacyjnego (XSEngine), jest między nimi duża zależność i podatność na awarię.

W architekturze XSA, bazującej na Cloud Foundry, (mikro)usługa uruchamiana na platformie, wraz z właściwym środowiskiem uruchomieniowym (możliwe różne wersje działające równolegle) stanowią „izolowany byt”. Każda z usług to oddzielny proces systemowy, skalowalny pod kątem wykorzystywanych zasobów. Dzięki tym zabiegom, osiągnięto większą elastyczność, stabilność i niezawodność.

Co więcej, w XSA nastąpiło znacznie rozluźnienie powiązania pomiędzy aplikacją a bazą HANA. W XS obiekty typu design-time przetrzymywane są bezpośrednio w HANA Repository, czyli skojarzone z konkretną, jedną instancją HANA, na której też są deployowane (do obiektów run-time). W XS obiekty design-time przechowywane są w pakietach i subpakietach repozytorium HANA. W XSA projekt i jego obiekty design-time są przechowywane niezależnie od bazy HANA w centralnym repozytorium, np. git. Dopiero w momencie deploymentu trafia do środowiska docelowego, do kontenera HDI.

6.4. HDI (HANA Deployment Infrastucture)

W XSA pojawia się termin HDI, czyli HANA Deployment Infrastructure oraz związany z nią kontener HDI. An HDI container is a database schema of the SAP HANA database for HDI objects (link). W HDI istnieją 2 światy: design-time oraz run-time. Bazując na definicjach design-time (a konkretnie tych z modułu HDB w projekcie XSA), w kontenerze HDI generowane są wszystkie obiekty bazodanowe run-time. Zaletą tego podejścia jest lifecycle management (tworzenie, aktualizacja, usuwanie) obiektów w kontenerze przez HDI. Dzięki temu, że robi to system, obiekty są spójne i optymalnie skonstruowane do pracy na bazie HANA. Kontener HDI posiada dedykowanego użytkownika technicznego, który komunikuje się z bazą. Dzięki izolacji za pomocą kontenerów HDI, możliwy jest wielokrotny deployment tej samej aplikacji.

XSA może być instalowane na innym hoście niż baza HANA. Daje to możliwość niezależnego skalowania obu rozwiązań, na przykład poprzez implementację wielu node’ów XSA na słabszej (tańszej) architekturze, w stosunku do bardziej wymagającego hosta HANA.

Repozytoria dla XS i XSA
Ryc. 7 Repozytoria dla XS i XSA

6.5. Cloud Foundry

Cloud Foundry jest standardem open source, wspieranym m.in. przez Cisco, Google, IBM, Microsoft, Pivotal, SAP, SUSE. Jest to architektura implementacji rozwiązań w chmurze, mająca na celu zapewnienie elastyczności na wielu płaszczyznach oraz skalowalności. Dzięki CF możliwe jest tworzenie i uruchamianie aplikacji (np. prototypów) w szybki sposób, bez konieczności ponoszenia kosztu budowy i utrzymania całego stosu technologicznego (serwerów, sieci, etc.), a następnie przeskalowania ich według potrzeb.

Cloud Foundry stack overview
Ryc. 8 Cloud Foundry stack overview

6.6. Źródła

7. S/4HANA, C/4HANA, BW/4HANA (x/4HANA)

Nazwy x/4HANA wskazują na systemy nowej generacji, które zostały zoptymalizowane do pracy na HANA DB i mogą operować jedynie na tej bazie.

8. SAP BW

Business Warehouse (BW), czyli wersja hurtowni danych (data warehouse) według SAP.

Można patrzeć na BW jak na system, który realizuje dwie główne funkcje:

  • Baza danych – przechowywanie danych operacyjnych przedsiębiorstwa (i nie tylko – również innych danych, które niosą ze sobą wartościowe dla firmy informacje), zarówno obecnych jak i historycznych
  • Zarządzanie danymi
    • Zarządzanie procesem pozyskiwania i transformacji danych – narzędzia ETL
    • Data Lifecycle Management, czyli zarządzanie procesem „starzenia się” danych. Dla przykładu, jest to ustalenie wieku, po przekroczeniu którego dane przestają być istotne i mogą zostać usunięte z systemu (1 rok, 5 lat, 10 lat, etc.) lub przesunięte do bazy o mniejszej wydajności i koszcie.
    • Harmonizacja, konsolidacja i zapewnianie spójności danych – wszystko w celu zbudowania „jednego źródła danych” (single source of truth). Powyższe terminy, których znaczenia przenikają się, wiążą się z potrzebą zapewnienia jednoznaczności informacji. Dane, które trafiają do hurtowni danych często są bardzo różnej jakości (wprowadzają je użytkownicy lub generowane są automatycznie), pochodzą z różnych systemów (mają różne formaty), regionów (o różnych charakterystykach prawno-gospodarczych), czy też obszarów działalności firmy. Dlatego niezbędne jest czyszczenie danych wejściowych (data cleansing), np. uzupełnienia brakujących informacji. Może być to także transformacja cech i miarek do formatów, dzięki którym możliwe będzie dalsze ich przetwarzanie wraz z analogicznymi danymi ale z innego źródła – i wykorzystanie ich w raportach.
    • Modelowanie i udostępnianie danych do celów raportowych. W zasadzie – jest to główny cel hurtowni danych. Dzięki odpowiedniemu przygotowaniu, dane dostarczają informacji o stanie przedsiębiorstwa, zagrożeniach i perspektywach rozwoju, pozwalając na podejmowanie odpowiednich decyzji.

W skrócie: hurtownia danych = ETL + baza danych + aplikacyjna nakładka do zarządzania danymi

Warto podkreślić różnicę pomiędzy systemem transakcyjnym a hurtownią danych. Ten pierwszy jest zoptymalizowany pod kątem „codziennej pracy” – jednostkowych operacji na danych, takich jak wprowadzanie czy modyfikacje. Struktura danych jest wysoce znormalizowana, w celu minimalizacji redundancji (powtarzania się informacji), zmniejszenia objętości danych oraz szybszej realizacji wspomnianych operacji. Przykładem normalizacji jest przechowywanie adresu klienta w osobnej tabeli (1) niż tabela z zamówieniami (2). Dzięki temu informacja klient-adres przechowywana jest tylko raz w tabeli (1) i nie pojawia się wielokrotnie w tabeli (2). Ma to swoje zalety, ale ma również wady – odbudowanie całej struktury informacji (połączenie wszystkich powiązanych tabel) jest czasochłonne. Dlatego w hurtowni dane są zdenormalizowane. Raportowanie jest znacznie szybsze, ponieważ wymaga połączenia ze sobą znacznie mniejszej liczby tabel.

SAP BW historycznie przemierzał liczne ścieżki, obecnie kierunkiem rozwoju jest pełna integracja i wykorzystanie potencjału HANA.

8.1. Źródła

9. BW on HANA, BW powered by HANA, BW/4HANA

BW on HANA i BW powered by HANA to nazwy tego samego systemu (starsza i nowsza), czyli hurtowni danych stojącej na bazie HANA. Pierwsza wersja BW on HANA to BW 7.3, od tego czasu integracja zwiększała się, a kierunek wyklarował – powstał nowy system BW/4HANA. Wersje BW 7.3-7.5 to wzbogacanie istniejącego już wiele lat systemu BW, natomiast BW/4HANA to kompletnie nowy produkt, który jest HANA-optimized i pracuje tylko z tą bazą. Dodatkowo jest dużo lżejszy, dzięki pozbyciu się licznych fragmentów zapewniających wsteczną kompatybilność.

9.1. Źródła (i auto-źródła):

10. Embedded BW

Jest to wersja BW, wbudowana w SAP Business Suite (od wersji SAP NetWeaver 7.0 ) i S/4HANA. Głównym zastosowaniem Embedded BW jest wsparcie konkretnych procesów biznesowych, np. planistycznych: Integrated Business Planning for Finance, BPC.

SAP rekomenduje wykorzystanie Embedded BW do standardowych scenariuszy, np. dostarczanych z Business Content.

Embedded BW nie jest zalecane do operowania w pełnym zakresie, w roli EDW. Objętość obsługiwanych danych nie powinna przekraczać 20% całkowitej objętości danych z systemu ERP.

10.1. Źródła

11. S/4HANA Embedded Analytics

Jest to VDM w systemie SAP S/4HANA zbudowany na tabelach danych transakcyjnych z wykorzystaniem ABAP CDS. Embedded Analytics dostarcza gotowe rozwiązania raportowe i narzędzia do przeglądania/wyszukiwania modeli oraz analizy danych z wielu obszarów biznesowych, np. finansów czy zakupów. Jest analogicznym rozwiązaniem do SAP HANA Live, stworzonym jednak w innej technologii.

5/5 ( głosy: 4)
Ocena:
5/5 ( głosy: 4)
Autor
Avatar
Bartosz Kurowski

Konsultant i deweloper SAP BW/HANA z nutą ABAPa.

Zostaw komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Może Cię również zainteresować

Pokaż więcej artykułów

Bądź na bieżąco

Zasubskrybuj naszego bloga i otrzymuj informacje o najnowszych wpisach.

Otrzymaj ofertę

Jeśli chcesz dowiedzieć się więcej na temat oferty Sii, skontaktuj się z nami.

Wyślij zapytanie Wyślij zapytanie

Natalia Competency Center Director

Get an offer

Dołącz do Sii

Znajdź idealną pracę – zapoznaj się z naszą ofertą rekrutacyjną i aplikuj.

Aplikuj Aplikuj

Paweł Process Owner

Join Sii

ZATWIERDŹ

This content is available only in one language version.
You will be redirected to home page.

Are you sure you want to leave this page?