Task: Rozdiel medzi revíziami

Z DWFC3
Prejsť na: navigácia, hľadanie
 
(12 medziľahlých úprav od rovnakého používateľa.)
Riadok 1: Riadok 1:
 
==Čo to je==
 
==Čo to je==
−
Úloha je základná jednotka spracovania. Je zaradená do práve jednej skupiny, má priradené práve jedno pripojenie, prostredníctvom ktorého je úloha vykonávaná.
+
Ú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á.
  
−
==Parametre==
+
==Vlastnosti úlohy==
 
* Názov - názov úlohy, ktorý musí byť jedinečný v rámci skupiny
 
* Názov - názov úlohy, ktorý musí byť jedinečný v rámci skupiny
 
* Query - dotaz/dopyt/príkaz, ktorý je vykonaný
 
* Query - dotaz/dopyt/príkaz, ktorý je vykonaný
Riadok 13: Riadok 14:
 
* Čakanie medzi opakovaniami - vyjadruje interval, ktorý bude dodržaný medzi jednotlivými opakovaniami po neúspešnom pokuse o vykonanie
 
* Č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]]
 
* 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.
 +
* Typ závislosti - v prípade viacerých závoslostí je možné si vybrať, čí má úloha čakať na splnenie všetkých závislostí, alebo len na prvú závislosť. Typicky sa používa na Hadoop úlohy, kedy je vytvorených viacero úloh a po hlásení prvej z nich má zmysel pokračovať. Predvolené nastavenie je čakanie na splnenie všetkých závislostí.
 +
* Dedenie priority - určuje, či úloha zdedí prioritu od úlohy, ktorá je od nej závislá, pokiaľ má ona vyššiu prioritu. V predvolenom nastavení sú priority dedené. Viď kapitolu [[Prioritizácia]]
  
 
==Stav úlohy==
 
==Stav úlohy==
 +
V rámci spracovania nadobúda úloha jeden z nasledovnýc stavov:
 
* Scheduled - naplánovaná pre aktuálne spracovanie
 
* 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
 
* 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
Riadok 26: Riadok 32:
 
* Cancel requested - úloha bola počas behu prerušená operátorom
 
* 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)
 
* 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é vo formáte yyyy-mm-mm
 +
* 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
 +
* processingname - názov processingu; obsah 3. argument v prípade pokročilého scenára - viď [[Scenario]]
 +
* env - indikator prostredia (P|Production;T|Testing;D|Development)
 +
 +
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:
 +
 +
<code>
 +
insert into my_table (taskid, date, scenarioid) values (%taskid%, %date%, %scenarioid%);
 +
</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.

Aktuálna revízia z 13:13, 5. november 2019

Č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.
  • Typ závislosti - v prípade viacerých závoslostí je možné si vybrať, čí má úloha čakať na splnenie všetkých závislostí, alebo len na prvú závislosť. Typicky sa používa na Hadoop úlohy, kedy je vytvorených viacero úloh a po hlásení prvej z nich má zmysel pokračovať. Predvolené nastavenie je čakanie na splnenie všetkých závislostí.
  • Dedenie priority - určuje, či úloha zdedí prioritu od úlohy, ktorá je od nej závislá, pokiaľ má ona vyššiu prioritu. V predvolenom nastavení sú priority dedené. Viď kapitolu Prioritizácia

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é vo formáte yyyy-mm-mm
  • 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
  • processingname - názov processingu; obsah 3. argument v prípade pokročilého scenára - viď Scenario
  • env - indikator prostredia (P|Production;T|Testing;D|Development)

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.