Obliczanie kostek z partycjami federowanymi i wykonywanie w nich zapytań

W przypadku używania partycji federowanej obliczenia i zapytania Essbase, gdy tylko jest to możliwe, są przekształcane przez oprogramowanie Essbase na kod SQL, a następnie wypychane do Autonomous Data Warehouse, tak aby przetwarzanie odbywało się w miejscu, w którym dane są składowane.

Struktura kostki Essbase zawiera metadane (nazwy wymiarów i elementów). W Autonomous Data Warehouse są przechowywane dane powiązane z metadanymi. Dane są składowane w tabeli faktów.

Essbase wypycha przetwarzanie obliczeń do miejsca, w którym są składowane dane, dzięki czemu pomaga rozwiązać problemy z opóźnieniami danych. Jest to nowa funkcja w Essbase, którą wprowadzono od wersji 21.5.

Nowi użytkownicy Essbase powinni przejrzeć temat Obliczanie kostek, aby zapoznać się z ogólnymi informacjami na temat obliczeń.

Sposób działania obliczeń z partycjami federowanymi zależy od typu kostki Essbase, od której zaczęto tworzenie partycji federowanej: czy była to kostka stanowiąca wolumin blokowy (BSO) czy kostka stanowiąca magazyn agregacji (ASO).

Uwagi dotyczące porównywania obliczeń

W przypadku kostek z partycjami federowanymi opartych na BSO, gdy użytkownik wykonuje obliczenia i zapytania, oprogramowanie Essbase analizuje zależności i zapisuje kod SQL w celu przetworzenia wyników za pomocą perspektyw analitycznych w Autonomous Data Warehouse.

W przypadku kostek z partycjami federowanymi opartych na ASO to serwer Essbase przetwarza niestandardowe obliczenia i alokacje, a następnie wypycha wyniki do Autonomous Data Warehouse.

Uwagi/ograniczenia dotyczące obliczeń z użyciem partycji federowanych

Funkcje obliczeniowe wolumen blokowy (BSO) Essbase można stosować w formułach struktury wolumenu BSO, a ich wyniki będą mogły być używane w zapytaniach z narzędzi Smart View i MDX oraz innych klientów bazujących na tabelach. Tych samych funkcji wraz z poleceniami obliczeniowymi można używać do pisania proceduralnych skryptów obliczeń.

Funkcje obliczeniowe przetwarzane w Autonomous Data Warehouse

Gdy jest używana partycja federowana, następujące funkcje obliczeniowe Essbase są tłumaczone na język SQL i przetwarzane w Autonomous Data Warehouse. Inne funkcje, które nie zostały tu wymienione, są przetwarzane w Essbase.

  • @ABS
  • @ALLANCESTORS
  • @ANCEST
  • @ANCESTORS
  • @AVG (tylko z opcją SKIPMISSING)
  • @AVGRANGE
  • @CHILDREN
  • @CURRMBR
  • @DESCENDANTS
  • @EXP
  • @FACTORIAL
  • @GENMBRS
  • @IALLANCESTORS
  • @IANCESTORS
  • @ICHILDREN
  • @IDESCENDANTS
  • @INT
  • @IRDESCENDANTS
  • @ISANCEST
  • @ISCHILD
  • @ISDESC
  • @ISGEN
  • @ISIANCEST
  • @ISIBLINGS
  • @ISICHILD
  • @ISIDESC
  • @ISIPARENT
  • @ISISIBLING
  • @ISLEV
  • @ISMBR (gdy argumentem jest tylko jedna nazwa elementu)
  • @ISPARENT
  • @ISSAMEGEN
  • @ISSAMELEV
  • @ISSIBLING
  • @LEVMBRS
  • @LN
  • @LOG
  • @LOG10
  • @LSIBLINGS
  • @MAX
  • @MAXRANGE (wyjątek: brak argumentu XrangeList)
  • @MAXS
  • @MAXSRANGE (wyjątek: brak argumentu XrangeList)
  • @MBRPARENT
  • @MEDIAN (wyjątek: brak argumentu XrangeList)
  • @MEMBERAT
  • @MIN
  • @MINRANGE (wyjątek: brak argumentu XrangeList)
  • @MINS
  • @MINSRANGE (wyjątek: brak argumentu XrangeList)
  • @MOD
  • @PARENT
  • @POWER
  • @RDESCENDANTS
  • @RELATIVE
  • @REMAINDER
  • @ROUND
  • @RSIBLINGS
  • @SIBLINGS
  • @SUM
  • @SUMRANGE (wyjątek: brak argumentu XrangeList)
  • @TRUNCATE
  • @XREF
  • @XWRITE

Polecenia obliczeniowe przetwarzane w Autonomous Data Warehouse

Gdy jest używana partycja federowana, następujące polecenia obliczeniowe Essbase są tłumaczone na język SQL i przetwarzane w Autonomous Data Warehouse.

  • AGG (z wyjątkiem sytuacji, gdy są agregowane elementy obliczeń dynamicznych albo elementy, które nie używają operatora konsolidacji addytywnej)
  • CLEARDATA
  • CLEARBLOCK (wyjątek: brak słów kluczowych NONINPUT i DYNAMIC)
  • DATAEXPORT (wyjątek: tylko z poniższymi opcjami eksportu danych)
    DATAEXPORTLEVEL ALL
    DATAEXPORTCSVFORMAT
    DATAEXPORTOVERWRITEFILE
    DATAEXPORTDECIMAL
  • IF...ENDIF
  • ELSE...ELSEIF (wyrażenia zawierające wiele zagnieżdżonych instrukcji IF/ELSE mogą działać z niższą wydajnością)
  • EXCLUDE...ENDEXCLUDE
  • LOOP...ENDLOOP
  • DATACOPY
  • Przypisania instrukcji FIX z wyrażeniami zawierającymi operacje matematyczne, instrukcje IF/ELSE, odwołania krzyżowe i obsługiwane funkcje @ wymienione na tej stronie.

Polecenia ARRAY i VAR, a także formuły dynamiczne przetwarzane w ramach instrukcji CALC DIM lub CALC ALL są przetwarzane w Essbase i mogą działać z niższą wydajnością.

Niektóre polecenia obliczeniowe nie są obsługiwane w przypadku kostek z partycjami federowanymi, a próba ich użycia powoduje zwrócenie błędu. Zob. Ograniczenia partycji federowanych.

Jeśli planowane jest uruchamianie skryptów obliczeń dotyczących wolumenu blokowego (BSO) w Essbase, jako wymiar przestawny należy wybrać wymiar gęsty. Skrypty obliczeń nie są obsługiwane w przypadku partycji federowanych, jeśli wymiar przestawny jest wymiarem rzadkim.

Blokowy tryb obliczeń (włączany, gdy ustawienie konfiguracji Essbase o nazwie CALCMODE ma wartość BLOCK) nie ma zastosowania do kostek z partycjami federowanymi. Przetwarzanie obliczeń jest wypychane do Autonomous Data Warehouse. Jeśli wystąpi wyjątek i obliczenia będą przetwarzane na serwerze Essbase, analiza zależności będzie wykonywana na podstawie kolejności rozwiązywania.

Podczas wykonywania alokacji niestandardowych w kostce stanowiącej magazyn agregacji z partycją federowaną można tylko zastępować istniejące wartości. Nie można dodawać do istniejących wartości ani od nich odejmować.

Inne ograniczenia

Zob. Ograniczenia partycji federowanych.

Cyfry precyzji w wynikach zapytania

Podczas obliczania kostki mającej partycję federowaną Autonomous Data Warehouse częściowo przetwarza obliczenia i agregacje. Z tego powodu wyniki zapytań mogą mieć nieco inne wartości precyzji w porównaniu z wartościami uzyskanymi bez użycia partycji federowanej.

Kolejność obliczeń

Podobnie jak w przypadku kostek BSO i kostek ASO trybu hybrydowego, priorytet obliczania elementów w kostkach z partycją federowaną jest ustalany na podstawie zdefiniowanej kolejności rozwiązywania, która została ustawiona w strukturze Essbase.

Możliwość uruchamiania obliczeń i zleceń ładowania danych w Essbase

Domyślnie dla ustawienia konfiguracyjnego Essbase FEDERATEDAVCALC jest w sposób niejawny ustawiana wartość TRUE dla aplikacji stanowiących woluminy blokowe (BSO), które mają partycję federowaną. Umożliwia to użytkownikom uruchamianie obliczeń dotyczących magazynu BSO Essbase oraz ładowanie danych za pośrednictwem Essbase w celu aktualizowania rekordów w tabeli faktów Autonomous Data Warehouse.