Niełatwe zarządzanie zadaniami

Jednym z zadań systemów IT jest efektywne wykonywanie zadań przetwarzających dane wejściowe do postaci oczekiwanej przez użytkownika. Planowanie wykonywania zadań określa się jako „job scheduling”.

Dla użytkowników końcowych sposób wykonania przez system zleconego zadania nie ma znaczenia. Z reguły są oni zainteresowani tylko szybkim uzyskaniem ostatecznego wyniku uruchomionego programu czy raportu.

Administratorzy zobowiązani są do zapewnienia takiej dostępności infrastruktury, aby zaplanowane przez użytkowników zadania wykonywały się w chwili przez nich oczekiwanej.

Nie zawsze jednak rozpoczęcie wykonywania zadania jest określone kryterium czasowym. Często moment startu jest zależny od innych czynników i trudniejszy do zdefiniowania, np.:

  • uruchomienie zadania po zakończeniu innego zadania, z uwzględnieniem statusu zakończenia poprzednika
  • rozpoczęcie nowego procesu po pojawieniu się w systemie plików o konkretnej nazwie lub o nazwie której dokładnie nie możemy przewidzieć
  • wystartowanie zadania w podanym czasie, ale tylko gdy dostępne są określone zasoby

W takich przypadkach mamy do czynienia z zadaniami sterowanymi zdarzeniami (ang. event-driven job scheduling), szczególnie przydatnymi, gdy chcemy zintegrować procesy uruchamiane w różnych systemach.

Ograniczone możliwości

Możliwości planowania zadań, dostępne w środowisku SAP, są ograniczone. Prócz bezpośredniego uruchomienia raportu np. poprzez wywołanie transakcji, większość czynności w systemach SAP można zaplanować do uruchomienia jako tzw. zadania w tle.

Nie zawsze jednak w SAP uda się nam zaplanować wszystko na czym na zależy. Często napotykamy na sytuacje uniemożliwiające efektywne wykorzystanie zasobów, takie jak:

  • ograniczone możliwości definiowania zależności między różnymi zadaniami w ramach jednego lub wielu systemów, np. uzależnienie rozpoczęcia wykonywania zadania od statusu zakończenia dwóch lub większej ilości innych zadań
  • niemożność „łączenia” zadań uruchamianych w różnych systemach SAP
  • ograniczone możliwości uzależnienia zadań wewnątrz SAP od zdarzeń występujących poza SAP i vice versa
  • potrzeba skrupulatnej kontroli zadań i ręczne interwencje w przypadku ich niewykonania

Ograniczenia te można wyeliminować dzięki rozwiązaniom, które znacznie rozszerzą dostępne możliwości, powodując że różne systemy SAP (np.: mySAP ERP, SAP BW, CRM) zaczną sprawnie współpracować nie tylko pomiędzy sobą, ale również z wieloma „obcymi” aplikacjami.

Cronacle: centralne zarządzanie zadaniami

Redwood Software, światowy partner SAP, oferuje oprogramowanie Cronacle, pozwalające na centralne zarządzanie planowaniem zadań w całej infrastrukturze IT, ze szczególnym naciskiem na systemy SAP. Rozwiązania firmy Redwood są używane przez kilkaset firm na świecie.

Zastosowanie Cronacle powoduje, że mozolne kontrolowanie zadań zaplanowanych w wielu systemach SAP przechodzi do przeszłości, a status wykonania poszczególnych zadań dostępny jest w jednym, centralnym repozytorium oprogramowania Cronacle.

Dodatkowo, dzięki rozbudowanym mechanizmom definiowania zadań, możemy budować łańcuchy zadań uruchamianych w różnych środowiskach.

Przykładowo, można zdefiniować następujący ciąg operacji:

  • (1) pojawia się plik w określonym katalogu podanego serwera
  • (2) w mySAP ERP startuje zadanie przetwarzające dane z tego pliku
  • (3) poprawne zakończenie tego zadania skutkuje wystartowaniem kolejnego, tym razem w innym systemie SAP (np.: SAP BW), jednak tylko w przypadku, gdy tutaj nastąpiło poprawne wykonanie jeszcze innego zadania
  • (4) po spełnieniu powyższych warunków kolejnym krokiem jest wysłanie maila do administratora o statusie zadania

Dla każdego z etapów można dodatkowo zdefiniować kroki, które powinny być wykonane w przypadku niepoprawnego zakończenia (np. restart całego łańcucha zadań, restart konkretnego kroku). Cały proces będzie dla operatora widoczny jako jedno wieloetapowe zadanie.

Nie tylko dla wygody administratorów

Pożytki z użycia Cronacle nie ograniczają się do ułatwień dla administratorów. Najważniejsze korzyści, które można wymienić, to:

  • lepsza utylizacja zasobów, dzięki możliwości startowania zadań gdy tylko zasób staje się dostępny
  • skrócenie czasu wykonywania zadań przez budowanie łańcuchów zadań, również pomiędzy różnymi systemami
  • zwiększenie stabilności działania infrastruktury IT, dzięki eliminacji potencjalnych pomyłek (ręczne planowanie zadań zastępujemy przez planowanie automatyczne)
  • wielokrotne skrócenie czasu poświęconego na monitorowanie zadań, które wcześniej musiały być kontrolowane osobno (zwiększa to ilość czasu, który pracownicy mogą poświęcić na inne zadania)
  • redukcja kosztów utrzymania infrastruktury IT (zastąpienie przygotowywanych samodzielnie aplikacji do planowania zadań przez oprogramowanie rozwijane i wspierane przez producenta)

Biorąc pod uwagę korzyści, potrzeba wykorzystania takiego rozwiązania w środowiskach, w których wykonuje się duże ilości zadań, wydaje się oczywista.

Cronacle częścią SAP NetWeaver

Dzięki aliansowi Redwood i SAP AG, firmy posiadające licencję na platformę SAP NetWeaver mogą bez dodatkowych opłat licencyjnych skorzystać z pakietu Job Scheduling Capabilities of SAP NetWeaver (JSCoSN), obejmującego funkcjonalność Cronacle potrzebną do centralnego zarządzania zadaniami w systemach SAP.

Rozwiązanie JSCoSN jest wspierane bezpośrednio przez światowy serwis SAP AG i jedynym kosztem jaki należy ponieść jest sam koszt wdrożenia rozwiązania. Chcąc wykorzystać Cronacle również do zarządzania zadaniami poza systemami SAP (np. zadaniami systemów operacyjnych), należy nabyć licencję od firmy Redwood na pełne rozwiązanie Cronacle.