< POWRÓT

< POWRÓT

Najnowsze case studies

Konsolidacja finansowa bez bólu głowy - jak polska firma gamingowa uwolniła swój zespół od Excela i ręcznego przetwarzania danych.

Jak e-commerce'owy gigant skrócił czas zamknięcia miesiąca o połowę i zamienił chaos danych w konkretne decyzje biznesowe.

< POWRÓT

Niska wydajność modelu IBM PA – co oznacza i jak temu zaradzić?

Autor

Dział Marketingu

Incube CPM

Firmy, które rozwijają i modyfikują swoje modele w IBM Planning Analytics po kilku latach mogą zauważyć spadek wydajności systemu IBM PA. Po tym czasie dział IT może zgłaszać zwiększoną konsumpcję zasobów infrastruktury informatycznej tj pamięci RAM i CPU, a biznes – zbyt długi czas oczekiwania na raporty.  Dlaczego tak się dzieje i jak temu zaradzić?

Problemy wynikające ze spadku wydajności IBM PA

Przyjrzymy się przykładowi jednego z przedsiębiorstw, które zgłosiło się do nas z poniższymi problemami:

  • Obciążenie serwera – model firmy oscylował w okolicach 100gb RAM i zbliżał się maksymalnej możliwej pojemności dostępnej na serwerze.
  • Długi czas oczekiwania na raporty – czyli nawet kilkudziesięciosekundowy czas oczekiwania na pojawienie się danych w raportach i aplikacji dostępnych w systemie.

Zostaliśmy poproszeni o przeanalizowanie modelu i wdrożenie działań naprawczych.

Techniki optymalizacji wydajności modelu IBM Planning Analytics

Na podstawie analizy kostek, reguł biznesowych oraz procesów podjęliśmy następujące działania:

1. Przeniesienie obciążających obliczeń na okresy zmniejszonej aktywności użytkowników. Jedną z podstawowych technik przyśpieszenia działania modelu jest zamiana reguł biznesowych działających w trybie „on-line” na procesy kalkulujące dane. Procesy uruchamiane są automatycznie podczas nocnej przerwy serwisowej. Najlepsze efekty osiąga się dla kostek przechowujących duże i bardzo duże zbiory danych. Obliczenia on-line powinniśmy zachować dla danych podlegających dużej zmienności, do których niezbędny jest dostęp w czasie rzeczywistym tj. rachunek wyników czy sprawozdania finansowe typu bilans i cash flow.

2. Optymalizacja feedersów. Bezpośrednią konsekwencją ograniczenia reguł on-line jest również ograniczenie feedersów, co ma bezpośredni wpływ na ilość zaalokowanej pamięci RAM. Istotne jest odnalezienie i wyeliminowanie tzw. „overfeedingu”. Overfeeding to zjawisko gdzie feeders powiązany z regułą aktywuje zbyt duża ilość komórek w kostce, które nie zawierają danych. Optymalizacja feedersów potrafi znacząco zredukować ilość zaalokowanej pamięci RAM. Ponownie, najlepsze efekty osiąga się dla kostek przechowujących duże i bardzo duże zbiory danych.

3. Identyfikacja czasochłonnych procesów. Analiza czasów wykonywania procesów pozwoliła na zidentyfikowanie wąskich gardeł i udrożnienie ich poprzez zmianę logiki na procesowanie równoległe (w tym samym czasie). Więcej na ten temat w poprzednim artykule (LINK do „Jak skrócić czas procesowania danych w IBM Planning Analytic”).

Optymalizacja pozostałych reguł biznesowych – dobre praktyki, aby uniknąć nagromadzenia się obciążeń dla systemu

W sytuacji, w której reguły on-line są konieczne ze względu na wymagania biznesowe, optymalizację można osiągnąć poprzez stosowanie kilku zasad:

  • Dokładne określanie obszaru (poprzez podanie elementów wymiarów) dla którego zdefiniowana jest reguła (lewa strona reguły) oraz wskazanie, z którego wymiaru pochodzi element ( [‘Wymiar’:’Element’] = … ).
  • Zastąpienie wspólnych bloków logicznych dla wielu reguł wyrażeniami logicznymi (IF).
  • Stosowanie pojedynczych warunków dla funkcji IF i zastępowanie zagnieżdżania warunków, na rzecz deklaracji CONTINUE.
  • Zastosowanie funkcji DB do kostki sterującej, zamiast funkcji ATTR w celu pobrania atrybutu dla elementu.
  • Określenie danych pobieranych z tej samej kostki poprzez bezpośrednie wskazanie elementów, zamiast stosowania wewnętrznej funkcji DB.

Efekty optymalizacji

Stosując powyższe działania naprawcze udało się zredukować model z poziomu ~90Gb do ~20 gb, co wyeliminowało ryzyko wyczerpania pamięci RAM.

Dodatkowo czas oczekiwania przy odświeżaniu raportów i pobieraniu nowych danych został zredukowany z kilkudziesięciu sekund ( w niektórych przypadkach 3-5 minut), do kilku sekund oczekiwania.

Opisany wyżej projekt optymalizacji wydajności modelu IBM Planning Analytics trwał w Incube około dwóch tygodni. Prowadzili go przede wszystkim nasi konsultanci, bez konieczności angażowania zasobów klienta. Warto jednak zauważyć, że przy prawidłowym utrzymaniu systemu na bieżąco nie powinno dojść do jego obciążenia.

Optymalizacja modelu IBM Planning Analytics - Podsumowanie

Zagadnienie optymalizacji niskiej wydajności modelu IBM PA w środowisku produkcyjnym może stanowić istotne wyzwanie. Każdy przypadek należy przeanalizować niezależnie i dobrać odpowiednie narzędzia, aby osiągnąć zamierzony efekt.

Zachęcamy do kontaktu ze specjalistami Incube CPM, którzy pomogą w tym, jak i innych zagadnieniach związanych z technologią IBM Planning Analytics.

KONTAKT

Porozmawiajmy o Twoim projekcie

Skontaktuj się z nami za pomocą tego formularza, maila lub telefonu. Odpowiemy na Twoje pytania, omówimy najważniejsze wyzwania i zaproponujemy wstępne rozwiązania dopasowane do Twoich potrzeb.

    Twoje dane kontaktowe