Task: Rozdiel medzi revíziami
(→Príkaz) |
(→Príkaz) |
||
| Riadok 57: | Riadok 57: | ||
insert into my_table (taskid, date, scenarioid) values (%taskid%, %date%, %scenarioid%); | insert into my_table (taskid, date, scenarioid) values (%taskid%, %date%, %scenarioid%); | ||
</code> | </code> | ||
| + | |||
| + | Okrem systémových parametrov je možné použiť aj používateľsky definované parametre, ktoré je možné použiť nasledovne: | ||
| + | |||
| + | <code> | ||
| + | call proc1 %u:usrpar1% | ||
| + | </code> | ||
| + | |||
| + | pričom prefix ''u:'' odlišuje užívateľsky definovaný parameter, tento musí existovať v zozname parametrov. ''usrpar1'' je názov parametra, ktorý je pri spustení nahradený jeho aktuálnou hodnotou. | ||
Verzia zo dňa a času 20:11, 4. október 2017
Čo to je
Úloha je základná jednotka spracovania. Reprezentuje volanie procedúry v databáze, prípadne shell skriptu. Úloha je vykonávaná synchrónne vždy v samostatnom vlákne. Je zaradená do práve jednej skupiny, má priradené práve jedno pripojenie, prostredníctvom ktorého je úloha vykonávaná.
Vlastnosti úlohy
- Názov - názov úlohy, ktorý musí byť jedinečný v rámci skupiny
- Query - dotaz/dopyt/príkaz, ktorý je vykonaný
- Skupina - skupina, do ktorej úloha patrí
- Pripojenie - pripojenie, ktoré je použité na spustenie úlohy
- Plán - typ plánovania úlohy - denné, týždenné, atď. vrátane výberu obdobia , kedy sa má úloha vykonávať. Má zmysel v prípade iných ako denných úloh.
- Priorita - číselné vyjadrenie priority, nižšie číslo znamená, že úloha je vybraná na spracovanie skôr ako úloha s vyšším číslom
- Váha - číselné vyjadrenie náročnosti úlohy z hľadiska spotrebovaných zdrojov
- Počet opakovaní - vyjadruje počet pokusov, ktoré budú vykonané v prípade chyby pri vykonávaní úlohy
- Čakanie medzi opakovaniami - vyjadruje interval, ktorý bude dodržaný medzi jednotlivými opakovaniami po neúspešnom pokuse o vykonanie
- Typ paralelizmu - plánovanie úlohy v prípade spracovania viacerých dátumov súčasne TBD
- Závislosti - zoznam závislostí na iných úlohách
- Operátori - zoznam notifikovaných operátorov v prípade chyby pri vykonávaní úlohy. Notifikácia je odoslaná len v prípade, že sa jedná o posledný automatický pokus o vykonanie úlohy.
Stav úlohy
V rámci spracovania nadobúda úloha jeden z nasledovnýc stavov:
- Scheduled - naplánovaná pre aktuálne spracovanie
- Prepared - vybraná pre ďalšie spracovanie - jedná sa o technický stav, v ktorom sa úloha nachádza potom, keď je vybraná na spustenie, ale k spusteniu ešte nedošlo
- Invalid - neplatná úloha, technický stav, ktorý nastáva v prípade, že počas behu úlohy, resp. stave prepared dôjde k pádu servera
- Running - aktuálne bežiaca úloha
- Finished - úloha dokončená
- Manual finish - úloha bola označená operátorom ako ukončená
- Manual repeat - úloha bola zaradená operátorom na opakované spracovanie
- Error - predchádzajúce spustenie úlohy skončilo s chybou
- Can't connect - predchádzajúce spustenie úlohy skončilo s chybou pri pokuse o pripojenie
- Cancel requested - úloha bola počas behu prerušená operátorom
- Cancel in progress - úloha je v procese prerušenia (nasleduje po stave Cancel requested)
Príkaz
Spúšťaný príkaz je vložený do poľa Query. V prípade databázového pripojenia je očakávaný platný SQL statement, ktorý môže byť volaním procedúry (stored procedure), DML, alebo DDL príkaz. V prípade, že príkaz vracia dáta (resultset), sú všetky dáta ignorované. V prípade shell commandu je v tomto poli očakávaný príkazový riadok, ktorý má byť spustený. V prípade ODI jobu je v poli očakávaný názov ODI jobu.
Pred spustením príkazu sa vo všetkých typoch pripojenia vykonáva nahradenie značiek hodnotou parametrov. Je možné použiť nasledovné parametre:
- date - dátum, za ktorý bolo spracovanie spustené
- taskid - číselný identifikátor úlohy
- taskname - názov úlohy
- groupid - číselný identifikátor skupiny, v ktorej je úloha zaradená
- groupname - názov skupiny, v ktorej je úloha zaradená
- period - typ plánovania úlohy: denná, mesačná, atď.
- iteration - kód iterácie spracovania (pre viacnásobné denné spracovania)
- trynumber - poradie pokusu o vykonanie úlohy, pri prvom pokuse začína 0
- scenarioid - číselný identifikátor scenára
- scenarioname - názov scenára
Parametre sú v príkaze vložené ako značky ohraničené oddeľovačom %značka% Pri viacnásobnom použití značiek sú nahradené všetky výskyty.
Príklad použitia viacerých značiek na SQL príkaze:
insert into my_table (taskid, date, scenarioid) values (%taskid%, %date%, %scenarioid%);
Okrem systémových parametrov je možné použiť aj používateľsky definované parametre, ktoré je možné použiť nasledovne:
call proc1 %u:usrpar1%
pričom prefix u: odlišuje užívateľsky definovaný parameter, tento musí existovať v zozname parametrov. usrpar1 je názov parametra, ktorý je pri spustení nahradený jeho aktuálnou hodnotou.