powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / вопрос про параллельный запуск процедур
18 сообщений из 18, страница 1 из 1
вопрос про параллельный запуск процедур
    #39735443
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток. Вопрос вот в чем, у меня есть некая таблица с заданиями, мне надо гдето раз в 10-15 минут запускать хранимку, которая находит невыполненное задание, ставит по нему признак и запускает отчет. Запускать поочередно - неудобно. Одно задание может на час затянуться а остальные по 5 минут.
Пробую вот что:
1. Service Broker - все отлично на тестовой, но база боевая OLTP и мне надо ждать наверное выходных, чтобы выполнить "SET ENABLE_BROKER with rollback IMMEDIATE; " и не огрести.

2. Нашел себе вариант - создаю джоб с временем запуска +15 минут и свойством "Удалить после окончания."

Вариант № 2 с многократным созданием и удалением джоба чреват какими то проблемами в будущем (переполнение какихто логов, счетчиков)?

P.S. Microsoft SQL Server 2008 R2 (SP3)
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39735457
Serп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
denis_viktorovich,

мб, по джобу без шедулера на каждое задание и отдельный джоб, который с требуемой периодичностью по вашей логике будет запускать один из джобов-заданий, проверяя предварительно, что оно не запущено?
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39735459
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovich,

Если есть решение на брокере, его и используйте. Динамические джобы это костыль, хотя и частый: один джоб создаёт новые, ну и обрабатывать отвалившиеся джобы + котнроль выполнения...
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39735462
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovich,

а, ещё вариант 2-20(по нужным потокам) джобов которые выхватывают задачу, но надо внимательно контролировать параллельный отбор
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39735469
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39735509
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serп,

Мне как раз не хочется, чтобы следующая задача запускалась только после завершения текущей. Хотелось бы некоей параллельности.
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39735521
Serп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
denis_viktorovich,

так следующая и запустится, это же другой джоб, не запустится эта еще раз, если соответствующий джоб еще работает.
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39735535
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serпdenis_viktorovich,

так следующая и запустится, это же другой джоб, не запустится эта еще раз, если соответствующий джоб еще работает.

Задания это некие заявки на обработку, они лежат в таблице и имеют статус не запущено/запущено/выполнено, их может быть сотня, а может не быть совсем. В этом плане брокер наверное имеет преимущество, т.к. там можно ограничить кол-во запусков.
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39735567
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovich,

сервис брокер или внешнее приложение-запускатель.
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39735590
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovichДоброго времени суток. Вопрос вот в чем, у меня есть некая таблица с заданиями, мне надо гдето раз в 10-15 минут запускать хранимку, которая находит невыполненное задание, ставит по нему признак и запускает отчет. Запускать поочередно - неудобно. Одно задание может на час затянуться а остальные по 5 минут.
Пробую вот что:
1. Service Broker - все отлично на тестовой, но база боевая OLTP и мне надо ждать наверное выходных, чтобы выполнить "SET ENABLE_BROKER with rollback IMMEDIATE; " и не огрести.

2. Нашел себе вариант - создаю джоб с временем запуска +15 минут и свойством "Удалить после окончания."

Вариант № 2 с многократным созданием и удалением джоба чреват какими то проблемами в будущем (переполнение какихто логов, счетчиков)?

P.S. Microsoft SQL Server 2008 R2 (SP3)

возможно подойдет такое решение.
Сделать джоб с шагом типа "Операционная система"
и там уже запукасть ХП

пример
Код: sql
1.
2.
3.
start sqlcmd -S(LOCAL) -E -dmaster -o"c:\1.in" -f1251 -Q"select getdate(); waitfor delay '00:01:00' " -h-1
start sqlcmd -S(LOCAL) -E -dmaster -o"c:\2.in" -f1251 -Q"select getdate(); waitfor delay '00:01:00' " -h-1
start sqlcmd -S(LOCAL) -E -dmaster -o"c:\3.in" -f1251 -Q"select getdate(); waitfor delay '00:01:00' " -h-1



и каждый раз в джобе менять описание шага
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39735946
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaK,

Да, на брокере было бы лучше всего, но пока пришлось сделать с костылями в виде само уничтожающегося джоба.

Свойства базы я в нерабочее время поменял, брокер заработал. Процедура запускается под выделенным для этого пользователем (особенность системы). Новая проблема в том в том, что процедура, которую я запускаю каждые 10 мин запускает также хранимки из Оракла (получает данные) через линкованый сервер, и в этот момент я стабильно получаю ошибку
"Access to the remote server is denied because the current security context is not trusted.", гугл подсказывает параметр базы Trustworthy,
но насколько я понял это некая дыра в безопасности и моветон.
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39735951
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39736024
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaKdenis_viktorovich,

https://blogs.msdn.microsoft.com/deepakbi/2010/03/02/job-fails-on-linked-server-access-to-the-remote-server-is-denied-because-the-current-security-context-is-not-trusted-sqlstate-42000-error-15274/

Хм, не совсем понял. В варианте с Service Broker внутри джоба я ведь только шлю сообщение очереди. Запускает процу служба сервис брокера.
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39736026
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovichTaPaKdenis_viktorovich,

https://blogs.msdn.microsoft.com/deepakbi/2010/03/02/job-fails-on-linked-server-access-to-the-remote-server-is-denied-because-the-current-security-context-is-not-trusted-sqlstate-42000-error-15274/

Хм, не совсем понял. В варианте с Service Broker внутри джоба я ведь только шлю сообщение очереди. Запускает процу служба сервис брокера.
авторранимки из Оракла (получает данные) через линкованый сервер, и в этот момент я стабильно получаю ошибку
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39736038
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39736243
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
invm,

Спасибо, там тоже про Trustworthy. После дальнейшего гугления на тему, я понял, что в основном это чревато тем, что имея dbo на базу, есть возможность выполнить код с правами SA. Собственно везде пишут, что лучше бы его не включать. Но как без него обойтись в данной ситуации - непонятно.
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39736265
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovichНо как без него обойтись в данной ситуации - непонятно.Подписать процедуру активации сертификатом.
...
Рейтинг: 0 / 0
вопрос про параллельный запуск процедур
    #39743059
Igor.Ko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Зачем городить этот огород. Используйте SSIS там Вам будет параллельность и контроль.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / вопрос про параллельный запуск процедур
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]