Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
Добрый день, товарищи! Есть некая процедура, которая состоит из подпроцедур, например: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. имеется процедура, которая это всё запускает, типа: Код: sql 1. Общее время выполнения процедуры Procedure занимает <t(procedure_1)>+5+8+15+4=32+ минуты, что является критически. Предлагалось создание job для распараллеливания выполнения под-процедур в Procedure_2, для сокращения времени до максимального из 4-х, тоесть до /*15 min*/. Есть ли какие решения по данной задаче? ПыСы. В инете честно искал, но дельного не нашел. Возможно и плохо искал( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2018, 11:37 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
НиколайСНЕсть ли какие решения по данной задаче?Service Broker ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2018, 11:51 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
задача для SSIS же ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2018, 13:52 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
Какая версия SQL Server? И какая редакция? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2018, 15:34 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
AlanDenton, Microsoft SQL Server 2012 (SP3-GDR) (KB4019092) - 11.0.6251.0 (X64) Jul 7 2017 07:14:24 Copyright (c) Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 6.3 <X64> (Build 9600: ) (Hypervisor) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2018, 17:32 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
Руслан Дамирович, а зачем мне ssis если у меня просто необходимо запустить несколько процедур параллельно в рамках даже одной Базы и нет всяких там integration services. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2018, 17:34 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
invm, пойду поизучаю) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2018, 17:34 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
а потом окажется, что неспроста так и процедуры зависимы друг от друга ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2018, 21:51 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
Критик, причем окажется, когда гениальный механик выкатит это на бой и уйдет в отпуск. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2018, 17:27 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
НиколайСНinvm, пойду поизучаю) пойти и поизучать так просто не получится, надо вникать. Русану предлагал когда-то вариант асинхронного выполнения, типа fire-and-forget. У него можно найти пример. Кроме того, на кодепрожекте был пример с асинхронным выполнением. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2018, 17:59 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
НиколайСНРуслан Дамирович, а зачем мне ssis если у меня просто необходимо запустить несколько процедур параллельно в рамках даже одной Базы и нет всяких там integration services.Затем что решение на SSIS делается за 5 минут, с зависимостями, обработкой ошибок и т.д.. Ну а так конечно много разных извращенных способов это сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2018, 19:29 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
Стесняюсь спросить, это что за патерн проектирования?НиколайСНДобрый день, товарищи! Есть некая процедура, которая состоит из подпроцедур, например: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2018, 22:14 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
Relic HunterСтесняюсь спросить, это что за патерн проектирования?фасад ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2018, 23:14 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
Есть такое направление- параллельные вычисления. Рекомендую почитать, немного. Смысл в том что вы должны учитывать зависимость процедур(входные параметры процедур, блокировки и т.п.) , вы должны уметь обрабатывать ошибки и возврат к общему транзакционному состоянию. Коллеги уже написали какие есть продукты от MS. Хотя можно и изобретать свое, только вот зря, многое придумали до нас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2018, 12:13 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
МуМуЕсть такое направление- параллельные вычисления. Рекомендую почитать, немного. Смысл в том что вы должны учитывать зависимость процедур(входные параметры процедур, блокировки и т.п.) , вы должны уметь обрабатывать ошибки и возврат к общему транзакционному состоянию. Коллеги уже написали какие есть продукты от MS. Хотя можно и изобретать свое, только вот зря, многое придумали до нас. А можно поподробнее ? есть какая нибудь ссылка ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2018, 13:22 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
НиколайСН, если не хочется связываться с SSIS, можно сделать джоб который создает джобы, и запускает их. после выполнения каждый джоб сам себя убивает, а основной ждет когда же все отработают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2018, 13:24 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
broccoliНиколайСН, если не хочется связываться с SSIS, можно сделать джоб который создает джобы, и запускает их. после выполнения каждый джоб сам себя убивает, а основной ждет когда же все отработают. ну, да, а юзеру наверняка хочется при такой процедуре, чтобы её вызыватель был уверен, что после вызова все 4 отработали и успешно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2018, 14:28 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
broccoli, см. пост №1 от меня - я писал про Джобы. Конечно же можно, но я бы их хотел оставить на самый последний вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2018, 11:05 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
МуМу, всё гораздо проще - нету зависимостей, параметров и прочих фичей. Они (процедуры типа 2_1-2_5) абсолютно независящие друг от друга. Именно поэтому и хочу их запускать параллельно. И варианты БЕЗ джобов. Дело в том, что я описал максимум в примере 1/300 от общей иерархии расчетов. Переделывать все расчеты на SSIS - это на месяц геморроя, и пару месяцев тестов - на это никто не пойдёт! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2018, 11:10 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
Волшебного способа не существует. При любом варианте будут затраты на разработку и тестирование. Наиболее подходящая под вашу задачу технология это сервис брокер, но он имеет, скажем так, особенности и учитывая, что вы его не знаете, то риски высоки. SSIS, в данном случае, некий оверхед, но этот путь может оказаться для вас оптимальным с точки зрения затраты/риски/функционал. Что касается месяца разработки... ваша задача на ссис реализуется за день (в тех рамках что вы описали). Если у вас нет спеца по ссис то делайте на том, что вы умеете - джобы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2018, 11:27 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
НиколайСН, http://www.sqlnotes.info/category/parallel-task-scheduling/ я взял за основу 7 вариант, доработал под себя. работает везде и на express-ах тоже ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2018, 11:28 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
НиколайСНМуМу, всё гораздо проще - нету зависимостей, параметров и прочих фичей. Они (процедуры типа 2_1-2_5) абсолютно независящие друг от друга. Именно поэтому и хочу их запускать параллельно. И варианты БЕЗ джобов. Дело в том, что я описал максимум в примере 1/300 от общей иерархии расчетов. Переделывать все расчеты на SSIS - это на месяц геморроя, и пару месяцев тестов - на это никто не пойдёт! 1. Хотеть не вредно. Вредно не хотеть. 2. Если они "абсолютно" независимы - дык, джоб - ваше фсе. 3. Запуск 10 процедур параллельно способен подзавесить сервер. 4. Эффективнее - оптимизировать процедуры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2018, 11:30 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
[quot aleks222]НиколайСНМуМу, 3. Запуск 10 процедур параллельно способен подзавесить сервер. сервак ниразу более чем на 25% не был нагружен даже в самый пик. Поэтому будет даже плюсом его нагрузить чем минусом) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2018, 14:30 |
|
||
|
Распараллеливание процедур. Совет
|
|||
|---|---|---|---|
|
#18+
ShIgor, Громадное спасибо) Реально оч много вариантов уже придумано) Спасибо) На тестах вариант 7 реально работает) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2018, 14:41 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39644258&tid=1689722]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
77ms |
get tp. blocked users: |
2ms |
| others: | 258ms |
| total: | 430ms |

| 0 / 0 |
