|
|
|
Как правильно настроить dba_scheduler для обновления хранища.
|
|||
|---|---|---|---|
|
#18+
Обновление хранилища состоит из трех процедур. 1) renew_dict() - обновление словаря раз в день 2) renew_data1, renew_data2,renew_data3 - обновление данных независимых витрин, возможна параллельная загрузка, частота каждую минуту 3) renew_agg - обновление агрегаций, частота раз в час Каким образом правильно обеспечить параллельность и последовательность разнотипных задач? Задача не должна запускаться если она уже запущена или запущена задача другого типа. Сейчас сделала на основании флажком во внутренней таблице, но вероятность зависшего флага не устраивает, должно быть более лаконичное решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2018, 13:26 |
|
||
|
Как правильно настроить dba_scheduler для обновления хранища.
|
|||
|---|---|---|---|
|
#18+
Wisky, Задача это последовательное/параллельноe выполнение 1), 2) ,3)? Если да, то это реализуется через chain где 1), 2) ,3) это steps a последовательное/параллельноe выполнение steps задается через step rules. Ну а задача не должна запускаться если она уже запущена заложена в DBMS_SCHEDULER изначально. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2018, 15:21 |
|
||
|
Как правильно настроить dba_scheduler для обновления хранища.
|
|||
|---|---|---|---|
|
#18+
У задач 1), 2.1+2.2+2.3) и 3) слишком разные периоды. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2018, 15:35 |
|
||
|
Как правильно настроить dba_scheduler для обновления хранища.
|
|||
|---|---|---|---|
|
#18+
WiskyУ задач 1), 2.1+2.2+2.3) и 3) слишком разные периоды. Создаем chain из 5 steps. Schedule 1 минута. Step 1 проверяет дату последнего обновления словаря. Еcли < 1 дня просто выходим, если нет renew_dict(). Steps 2, 3, 4 с rule "после завершения Step 1" и посему параллельно выполняют renew_data1, renew_data2, renew_data3. Step 5 с rule "после завершения Step 2,3,4" проверяет дату последнего обновление агрегаций. Еcли < 1 часа просто выходим, если нет - renew_agg. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2018, 16:10 |
|
||
|
Как правильно настроить dba_scheduler для обновления хранища.
|
|||
|---|---|---|---|
|
#18+
Пока тоже планирую такой вариант, но тогда потребуются для 1) и 3) самостоятельные нерегламентные запуски, опять требующие остановки основной цепочки. Может потребоваться срочно обновить словарь или пересчитать агрегаты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2018, 16:38 |
|
||
|
Как правильно настроить dba_scheduler для обновления хранища.
|
|||
|---|---|---|---|
|
#18+
WiskyПока тоже планирую такой вариант, но тогда потребуются для 1) и 3) самостоятельные нерегламентные запуски, опять требующие остановки основной цепочки. Может потребоваться срочно обновить словарь или пересчитать агрегаты. С помощью DBMS_SCHEDULER.ALTER_CHAIN для нужных шагов устанавливаем атрибут SKIP в TRUE. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2018, 01:57 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=118&tid=1884137]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
| others: | 209ms |
| total: | 334ms |

| 0 / 0 |
