|
Параллельное выполнение процедуры
|
|||
---|---|---|---|
#18+
Добрый день. Перебрался из oracle на ms sql. Есть процедура, которую нужно заставить работать параллельно. В ней выполняются truncate, insert`ы и delet`ы. Ничего мудреного нет. Все возможности для ее параллельного выполнения есть, так меня заверили. Почитал про возможные способы реализации. Все как то заумно.. или понедельник влияет. Не подскажите в каком направлении копать? версия: Adaptive Server Enterprise/12.5.4/EBF 21695 ESD#11.1/P/x86_64/Enterprise Linux ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 12:06 |
|
Параллельное выполнение процедуры
|
|||
---|---|---|---|
#18+
шК0ДЕР, А причем тут Sybase? И даже если бы это был SQL я сильно сомневаюсь что вы можете именно одновременно делать truncate и что либо еще. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 12:13 |
|
Параллельное выполнение процедуры
|
|||
---|---|---|---|
#18+
шК0ДЕРДобрый день. Перебрался из oracle на ms sql. Есть процедура, которую нужно заставить работать параллельно. В ней выполняются truncate, insert`ы и delet`ы. Ничего мудреного нет. Все возможности для ее параллельного выполнения есть, так меня заверили. Почитал про возможные способы реализации. Все как то заумно.. или понедельник влияет. Не подскажите в каком направлении копать? версия: Adaptive Server Enterprise/12.5.4/EBF 21695 ESD#11.1/P/x86_64/Enterprise Linux 1. зачем? 2. пусть сервер сам думает. 3. как вас "заверили"? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 12:21 |
|
Параллельное выполнение процедуры
|
|||
---|---|---|---|
#18+
Ролг Хупин1. зачем? 2. пусть сервер сам думает. 3. как вас "заверили"? 1)Заказчикпроцедура должна уметь работать в параллельном режиме. Сейчас – только однопоточный режим, остальные потоки валятся в таблицу ошибокесть проверка на наличие/отсутствие данных, которая, в определенной ситуации, генерирует сообщение об ошибке и завершает ее выполнение, записывая данные в лог 2) Сервер подумает. Мне все равно нужна инфа, на будущее 3) Так и заверили ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 12:47 |
|
Параллельное выполнение процедуры
|
|||
---|---|---|---|
#18+
шК0ДЕР, 1. У вас не MSSQL, а Sybase. Или вам это фиолетово? 2. Напрягитесь и представьте себе параллельный truncate. Может тогда вопрос сам собой отпадет. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 12:57 |
|
Параллельное выполнение процедуры
|
|||
---|---|---|---|
#18+
шК0ДЕРРолг Хупин1. зачем? 2. пусть сервер сам думает. 3. как вас "заверили"? 1)Заказчикпроцедура должна уметь работать в параллельном режиме. Сейчас – только однопоточный режим, остальные потоки валятся в таблицу ошибокесть проверка на наличие/отсутствие данных, которая, в определенной ситуации, генерирует сообщение об ошибке и завершает ее выполнение, записывая данные в лог 2) Сервер подумает. Мне все равно нужна инфа, на будущее 3) Так и заверили Откуда заказчик это знает? " должна уметь работать в параллельном режиме. Сейчас – только однопоточный режим, остальные потоки валятся в таблицу ошибок " Какие потоки СЕРВЕРА валятся в таблицу ошибок? Модератор: Тема перенесена из форума "Microsoft SQL Server". ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 13:01 |
|
Параллельное выполнение процедуры
|
|||
---|---|---|---|
#18+
Ролг ХупинОткуда заказчик это знает? " должна уметь работать в параллельном режиме. Сейчас – только однопоточный режим, остальные потоки валятся в таблицу ошибок " Наверняка уже что-то работает в разных потоках. Ролг ХупинКакие потоки СЕРВЕРА валятся в таблицу ошибок? Которые после очередного truncate не возвращают нужное кол-во записей. Неужели с распараллеливанием все так тяжко и у него 100500 способов реализации зависящих от кучи различных факторов? В интернетах всего пару способов увидел - 1) джобы, 2) создание дополнительных сессий. Только вот статьи были от 2000 гг. Надеюсь, есть что-то по свежее... Допустим, уберу truncate, с допиливанием логики процки по необходимости, естественно. Куда копать дальше? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 13:35 |
|
Параллельное выполнение процедуры
|
|||
---|---|---|---|
#18+
шК0ДЕР, А что за процедура? Хранимка? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 10:51 |
|
Параллельное выполнение процедуры
|
|||
---|---|---|---|
#18+
KreatorXXIА что за процедура? Хранимка?Да, хранимка. Проблему уже решил убрав truncate + некоторые правки. Есть вторая хранимка, требующая подобного рефакторинга. В ней создается временная таблица Код: sql 1. 2. 3.
И затем сразу Код: sql 1.
Не пойму зачем подобное телодвижение, ведь таблица только создалась и пустая... truncate в данном случае будет очищать таблицу, которая была создана в другой сессии? Прочитал, что для таких таблиц sql сам для себя дополняет имена, потому они уникальны в бд. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.04.2018, 11:17 |
|
Параллельное выполнение процедуры
|
|||
---|---|---|---|
#18+
шК0ДЕР, Ну, если хранимка, сделай три хранимки и запускай их с клиента в параллель. Другое дело - там вообще странный функционал, да? Может ничего и распараллеливать не нужно? Нужно разобраться что она делает, эта хранимка. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2018, 16:09 |
|
|
start [/forum/topic.php?fid=55&msg=39630757&tid=2009621]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 268ms |
total: | 389ms |
0 / 0 |