SAP Widok obliczeniowy HANA: typy i sposób tworzenia
⚡ Inteligentne podsumowanie
Widok obliczeń w SAP HANA to najpotężniejszy widok informacji. Łączy tabele, widoki kolumnowe, widoki analityczne i inne widoki obliczeniowe poprzez łączenie, sumowanie, projekcję, agregację i węzły rangowania.

Co to jest widok obliczeń?
SAP Widok obliczeń HANA to zaawansowany widok informacyjny.
SAP Miarę widoku analitycznego HANA można wybrać tylko z jednej tabeli faktów. Gdy potrzeba więcej tabeli faktów w widoku informacji, pojawia się widok obliczeń. Widok obliczeń obsługuje złożone obliczenia.
Podstawę danych widoku obliczeniowego mogą stanowić tabele, widoki kolumnowe, widoki analityczne i widoki obliczeniowe.
Możemy tworzyć Łączy, Sumy, Agregacja i Projekcje dotyczące źródeł danych.
Widok obliczeń może zawierać wiele miar i może być używany do raportowania wielowymiarowego lub nie może zawierać żadnej miary, która jest używana w raportowaniu typu listowego.
Charakterystyka SAP Widok obliczeń HANA jak poniżej –
- Obsługa złożonych obliczeń.
- Obsługa modeli OLTP i OLAP.
- Wsparcie Obsługa Klienta, język, przeliczanie walut.
- Unia wsparcia, projekcja, agregacja, ranga itp.
SAP Widoki obliczeń HANA są dwojakiego rodzaju –
- SAP Graficzny widok obliczeń HANA (utworzony przez SAP HANA Studio Edytor graficzny).
- SAP Obliczenia oparte na skryptach HANA Widoki (utworzone przez skrypty SQL przez SAP Studio HANA).
Widok obliczeń graficznych i skryptowych
Oba warianty produkują ten sam rodzaj obiektu, ale są zbudowane i konserwowane w zupełnie inny sposób, a wyboru trudno zmienić, gdy widok jest już w fazie produkcji.
| Parametr | Graficzny | Oparty na skrypcie |
|---|---|---|
| Zbudowany z | Przeciągnij i upuść węzły w edytorze | Skrypt SQLScript w bloku CE_ lub SQL |
| Optymalizacja witryny | Silnik może usuwać nieużywane węzły w czasie wykonywania | Działa zgodnie z opisem, mniej miejsca na optymalizację |
| czytelność | Diagram scenariusza dokumentuje się sam | Zależy całkowicie od autora |
| Zdolność | Pokrywa większość wymagań | Zarządza logiką, której żadna kombinacja węzłów nie może wyrazić |
| Konserwacja | Każdy modelarz może to zrobić | Wymagane umiejętności SQLScript |
| Rekomendacja | Wybór domyślny | Tylko tam, gdzie grafika naprawdę nie może tego zrobić |
Decydujący jest punkt wydajności. Widok graficzny pozwala HANA odrzucić węzły, których wynik nie wymaga żadnej kolumny zapytania, więc nieużywane łączenie nic nie kosztuje. Widok oparty na skrypcie uruchamia każde zawarte w nim polecenie niezależnie. Uruchom widok graficzny i przenieś pojedynczy węzeł do skryptu tylko wtedy, gdy wymaga tego wymaganie.
SAP Graficzny widok obliczeń HANA
In SAP HANA Widok analityczny, możemy wybrać miarę tylko z jednej tabeli.
Jeśli więc istnieje wymóg widoku zawierającego miarę z innej tabeli, nie można go osiągnąć za pomocą widoku analitycznego, ale widoku obliczeniowego.
Zatem w tym przypadku możemy użyć dwóch różnych widoków analitycznych dla każdej tabeli i połączyć je w widoku obliczeniowym.
Utworzymy graficzny widok obliczeniowy „CA_FI_LEDGER” poprzez połączenie dwóch widoków analitycznych „AN_PURCHASE_ORDER” i „AN_FI_DOCUMENT”.
CA_FI_LEDGER wyświetli szczegóły dokumentu finansowego dotyczącego zamówienia zakupu.
Krok 1) W tym etapie,
- Przejdź do pakietu (Tutaj Modelowanie) i kliknij prawym przyciskiem myszy.
- Wybierz opcję Nowa opcja.
- Wybierz Widok obliczeń.
Wyświetli się Edytor widoku obliczeń, w którym Panel scenariuszy będzie wyświetlany jak poniżej –
Szczegóły panelu Scenariusz przedstawiono poniżej –
Paleta: Ta sekcja zawiera węzły, które można wykorzystać jako źródło do tworzenia widoków obliczeniowych. Mamy 5 różnych typów węzłów:
- Przyłączyć się: Węzeł ten służy do łączenia dwóch obiektów źródłowych i przekazywania wyniku do następnego węzła. Typy łączenia mogą być łączeniami wewnętrznymi, lewymi zewnętrznymi, prawymi zewnętrznymi i łączeniami tekstowymi. Uwaga: Do węzła łączenia możemy dodać tylko dwa obiekty źródłowe.
- Unia: Służy do wykonywania operacji union all między wieloma źródłami. Źródłem może być liczba n obiektów.
- Występ: Służy do wybierania kolumn, filtrowania danych i tworzenia dodatkowych kolumn, zanim użyjemy ich w kolejnych węzłach, takich jak suma, agregacja i ranga. Uwaga: W węźle Projekcja możemy dodać tylko jeden obiekt źródłowy.
- Zbiór: Służy do wykonywania agregacji w określonych kolumnach na podstawie wybranych atrybutów.
- Ranga: Jest to dokładny zamiennik funkcji RANK w SQL. Możemy zdefiniować podział i kolejność według klauzuli w oparciu o wymagania.
Krok 2)
- Kliknij węzeł projekcji na palecie, a następnie przeciągnij i upuść do obszaru scenariusza z widoku analitycznego zamówienia zakupu. Zmieniono jego nazwę na „Projekcja_PO”.
- Kliknij węzeł projekcji na palecie, a następnie przeciągnij i upuść do obszaru scenariusza, aby wyświetlić widok analityczny dokumentu FI. Zmieniono jego nazwę na „Projection_FI”.
- Przeciągnij i upuść widok analityczny „AN_PURCHASE_ORDER” i „AN_FI_DOCUMENT” z folderu Zawartość odpowiednio do węzła „Projection_PO” i węzła „Projection_FI”.
- Kliknij opcję Dołącz węzeł z palety i przeciągnij i upuść do obszaru scenariusza.
- Połącz węzeł Projection_PO z węzłem Join_1.
- Połącz węzeł Projection_FI z węzłem Join_1.
- Kliknij węzeł agregacji na palecie i przeciągnij i upuść do obszaru scenariusza.
- Dołącz węzeł Join_1 do węzła agregacji.
Dodaliśmy dwa widoki analityczne do tworzenia widoku obliczeniowego.
Krok 3) Kliknij na węzeł Join_1 znajdujący się w obszarze agregacji, aby zobaczyć wyświetloną sekcję szczegółów.
- Wybierz wszystkie kolumny z węzła Projection_PO jako dane wyjściowe.
- Wybierz wszystkie kolumny z węzła Projection_FI jako dane wyjściowe.
- Połącz węzeł Projection_PO z węzłem Projection_FI w kolumnie Projection_PO.PO_Number = Projection_FI.PO_NO.
Krok 4) W tym etapie,
- Kliknij węzeł Agregacja, a po prawej stronie panelu zostaną wyświetlone szczegóły.
- Wybierz kolumnę dla wyjścia z Join_1 wyświetlanego po prawej stronie w oknie szczegółów.
Krok 5) Teraz kliknij węzeł semantyki.
Ekran szczegółów zostanie wyświetlony jak poniżej. Zdefiniuj atrybut i typ miary dla kolumny, a także zaznacz klucz dla tego wyjścia.
- Zdefiniuj atrybut i miarę.
- Oznacz PO_Number i COMPANY jako klucz.
- Oznacz ACC_DOC_NO jako klucz.
Krok 6) Zatwierdź i aktywuj widok obliczeń z górnego paska okna.
- Kliknij ikonę Sprawdź poprawność.
- Kliknij ikonę Aktywuj.
Widok obliczeń zostanie aktywowany i wyświetlony w obszarze Pakiet modelowania, jak poniżej –
Wybierz widok obliczeń i kliknij prawym przyciskiem myszy -> Podgląd danych
Dodaliśmy dwa widoki analityczne i z obu widoków analitycznych wybieramy miarę (TAX_AMOUNT, GROSS_AMOUNT).
Ekran podglądu danych zostanie wyświetlony w sposób przedstawiony poniżej –
Funkcje CE w widokach opartych na skryptach
⚠️ Uwaga dotycząca wersji: Operatorzy planu silnika obliczeniowego, funkcje CE_ opisane poniżej, są przestarzałe SAPPozostają one tutaj udokumentowane, ponieważ znaczna część istniejącego kodu z nich korzysta, ale nowe rozwiązania powinny wykorzystywać standardowy SQL, który optymalizator obsługuje teraz co najmniej równie dobrze. Mieszanie funkcji CE_ i SQL w jednym poleceniu jest również znaną przyczyną chybionych planów.
Funkcje CE znane również jako plan silnika obliczeniowego Operator (CE Operators) stanowią alternatywę dla instrukcji SQL.
Funkcja CE jest dwojakiego rodzaju –
Funkcja dostępu do źródła danych
Ta funkcja wiąże tabelę kolumnową lub widok kolumnowy ze zmienną tabeli. Poniżej znajduje się lista funkcji dostępu do źródła danych –
- CE_COLUMN_TABLE
- CE_JOIN_VIEW
- CE_OLAP_VIEW
- CE_CALC_VIEW
Relacyjny Operafunkcja tora
Za pomocą relacyjnego Operator, użytkownik może ominąć SQL Procesor podczas ewaluacji i komunikuje się bezpośrednio z silnikiem obliczeniowym. Poniżej znajduje się kilka relacyjnych Operator Lista funkcji –
- CE_JOIN (Służy do wykonywania wewnętrznego łączenia dwóch źródeł i odczytywania wymaganych kolumn/danych.)
- CE_RIGHT_OUTER_JOIN (Służy do wykonania prawego sprzężenia zewnętrznego między dwoma źródłami i wyświetlenia zapytanych kolumn na wyjściu.)
- CE_LEFT_OUTER_JOIN (Służy do wykonania lewego zewnętrznego sprzężenia pomiędzy źródłami i wyświetlenia zapytanych kolumn na wyjściu).
- CE_PROJECTION (Ta funkcja wyświetla określone kolumny ze źródła i stosuje filtry w celu ograniczenia danych. Udostępnia również funkcje aliasów nazw kolumn.)
- CE_CALC (służy do obliczania dodatkowych kolumn w oparciu o wymagania biznesowe. Działa tak samo, jak obliczana kolumna w modelach graficznych.)
Poniżej znajduje się lista SQL z funkcją CE z pewnym przykładem-
| Nazwa zapytania | Zapytanie SQL | Funkcja CE-Build |
|---|---|---|
| Wybierz zapytanie w tabeli kolumnowej | WYBIERZ C, D z „COLUMN_TABLE”. | CE_COLUMN_TABLE(“COLUMN_TABELA”,[C,D]) |
| Wybierz zapytanie w widoku atrybutu | WYBIERZ C, D z „ATTRIBUTE_VIEW” | CE_JOIN_VIEW(„ATTRIBUTE_VIEW”,[C,D]) |
| Wybierz opcję Zapytanie w widoku analitycznym | WYBIERZ C, D, SUM(E) z grupy „ANALYTIC_VIEW” według C,D | CE_OLAP_VIEW(“ANALYTIC_VIEW”,[C,D]) |
| Wybierz opcję Zapytanie w widoku obliczeń | WYBIERZ C, D, SUM(E) z grupy „CALCULATION_VIEW” według C,D | CE_CALC_VIEW(“OBLICZENIA_WIDOK”,[C,D]) |
| Gdzie mieć | WYBIERZ C, D, SUMA(E) Z „ANALYTIC_VIEW”, gdzie C = 'wartość' | var1 = CE_COLUMN_TABLE(“COLUMN_TABLE”); CE_PROJECTION(:var1,[C,D],'”C” = ”wartość”') |
Typy widoków obliczeniowych: wymiar, sześcian i sześcian z połączeniem gwiaździstym
Aktualny SAP Wersje HANA wymagają podania kategorii danych podczas tworzenia widoku obliczeniowego. Wybór ten determinuje zakres możliwości widoku i sposób, w jaki narzędzia do raportowania go przetwarzają.
| Kategoria danych | Zawiera środki | Dostępne dołączenie gwiazdy | Zastępuje |
|---|---|---|---|
| Wymiary | Nie | Nie | Widok atrybutów |
| Kostka | Tak | Nie | Proste scenariusze analityczne |
| Kostka z połączeniem gwiazdowym | Tak | Tak | Widok analityczny |
Dlatego w obecnych projektach często tworzone są wyłącznie widoki obliczeniowe. Widok kategorii Wymiar wykonuje pracę widok atrybutów, a Cube z połączeniem gwiaździstym wykonuje pracę widok analityczny, więc jeden typ obiektu obejmuje cały model. Istniejące widoki atrybutów i analizy nadal działają, a koncepcje są bezpośrednio powiązane z powyższymi kategoriami.
Wskazówki dotyczące wydajności widoku obliczeniowego
Widok obliczeniowy jest na tyle elastyczny, że można go źle zbudować, a ten sam scenariusz może zostać zrealizowany w sekundę lub minutę, w zależności od rozmieszczenia węzłów. Sześć reguł obejmuje większość różnic.
- Przefiltruj jak najwcześniej. Umieść filtr w projekcji najbliższej źródła. Filtrowanie po agregacji oznacza, że najpierw zagregowano cały zestaw danych, a następnie większość z nich odrzucono.
- Jeśli to możliwe, przed połączeniem należy je zagregować. Połączenie dwóch dużych zestawów szczegółów i późniejsze ich zsumowanie powoduje przesunięcie znacznie większej liczby wierszy niż wcześniejsze zsumowanie każdej strony.
- Wybierz tylko potrzebne kolumny. Każda kolumna przenoszona przez węzeł jest przechowywana w pamięci przez cały czas wykonywania, a nieużywane kolumny blokują przycinanie węzłów.
- Preferuj połączenie w celu łączenia podobnych danych. Nakładanie wartości rzeczywistych i planowanych to unia. Wyrażenie tego jako łączenie mnoży wiersze, a następnie wymaga filtra, aby naprawić szkody.
- Obserwuj kardynalność dołączania. Deklaracja 1..1, gdzie dane to 1..N, duplikuje wiersze i zawyża każdą miarę, co jest najczęstszą przyczyną błędnych sum.
- Unikaj zbytniego nakładania widoków na siebie. Widok obliczeniowy w widoku obliczeniowym w widoku analitycznym jest legalny, ale trudny do optymalizacji i debugowania. Dwa poziomy zazwyczaj wystarczają.
Zamiast zgadywać, korzystaj z narzędzi analizy wydajności w edytorze. ZaplanujViz Pokazuje, który węzeł zużył czas, a odpowiedzią jest często filtr umieszczony o jeden węzeł za późno. Szersze podejście opisano w SAP Modelowanie HANA samouczek i alternatywy proceduralne w Skrypt SQL.








