Гость
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Параллельное выполнение процедуры / 10 сообщений из 10, страница 1 из 1
16.04.2018, 12:06
    #39630721
шК0ДЕР
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параллельное выполнение процедуры
Добрый день. Перебрался из oracle на ms sql.
Есть процедура, которую нужно заставить работать параллельно. В ней выполняются truncate, insert`ы и delet`ы.
Ничего мудреного нет. Все возможности для ее параллельного выполнения есть, так меня заверили.
Почитал про возможные способы реализации. Все как то заумно.. или понедельник влияет.
Не подскажите в каком направлении копать?

версия:
Adaptive Server Enterprise/12.5.4/EBF 21695 ESD#11.1/P/x86_64/Enterprise Linux
...
Рейтинг: 0 / 0
16.04.2018, 12:13
    #39630734
aleksrov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параллельное выполнение процедуры
шК0ДЕР,

А причем тут Sybase?

И даже если бы это был SQL я сильно сомневаюсь что вы можете именно одновременно делать truncate и что либо еще.
...
Рейтинг: 0 / 0
16.04.2018, 12:21
    #39630741
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параллельное выполнение процедуры
шК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. как вас "заверили"?
...
Рейтинг: 0 / 0
16.04.2018, 12:47
    #39630757
шК0ДЕР
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параллельное выполнение процедуры
Ролг Хупин1. зачем?
2. пусть сервер сам думает.
3. как вас "заверили"?
1)Заказчикпроцедура должна уметь работать в параллельном режиме. Сейчас – только однопоточный режим, остальные потоки валятся в таблицу ошибокесть проверка на наличие/отсутствие данных, которая, в определенной ситуации, генерирует сообщение об ошибке и завершает ее выполнение, записывая данные в лог
2) Сервер подумает. Мне все равно нужна инфа, на будущее
3) Так и заверили
...
Рейтинг: 0 / 0
16.04.2018, 12:57
    #39630762
invm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параллельное выполнение процедуры
шК0ДЕР,

1. У вас не MSSQL, а Sybase. Или вам это фиолетово?
2. Напрягитесь и представьте себе параллельный truncate. Может тогда вопрос сам собой отпадет.
...
Рейтинг: 0 / 0
16.04.2018, 13:01
    #39630766
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параллельное выполнение процедуры
шК0ДЕРРолг Хупин1. зачем?
2. пусть сервер сам думает.
3. как вас "заверили"?
1)Заказчикпроцедура должна уметь работать в параллельном режиме. Сейчас – только однопоточный режим, остальные потоки валятся в таблицу ошибокесть проверка на наличие/отсутствие данных, которая, в определенной ситуации, генерирует сообщение об ошибке и завершает ее выполнение, записывая данные в лог
2) Сервер подумает. Мне все равно нужна инфа, на будущее
3) Так и заверили

Откуда заказчик это знает?

" должна уметь работать в параллельном режиме. Сейчас – только однопоточный режим, остальные потоки валятся в таблицу ошибок "

Какие потоки СЕРВЕРА валятся в таблицу ошибок?

Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
16.04.2018, 13:35
    #39630790
шК0ДЕР
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параллельное выполнение процедуры
Ролг ХупинОткуда заказчик это знает?

" должна уметь работать в параллельном режиме. Сейчас – только однопоточный режим, остальные потоки валятся в таблицу ошибок "
Наверняка уже что-то работает в разных потоках.
Ролг ХупинКакие потоки СЕРВЕРА валятся в таблицу ошибок?
Которые после очередного truncate не возвращают нужное кол-во записей.

Неужели с распараллеливанием все так тяжко и у него 100500 способов реализации зависящих от кучи различных факторов? В интернетах всего пару способов увидел - 1) джобы, 2) создание дополнительных сессий. Только вот статьи были от 2000 гг. Надеюсь, есть что-то по свежее...

Допустим, уберу truncate, с допиливанием логики процки по необходимости, естественно. Куда копать дальше?
...
Рейтинг: 0 / 0
17.04.2018, 10:51
    #39631374
KreatorXXI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параллельное выполнение процедуры
шК0ДЕР,

А что за процедура? Хранимка?
...
Рейтинг: 0 / 0
18.04.2018, 11:17
    #39632273
шК0ДЕР
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параллельное выполнение процедуры
KreatorXXIА что за процедура? Хранимка?Да, хранимка. Проблему уже решил убрав truncate + некоторые правки.
Есть вторая хранимка, требующая подобного рефакторинга. В ней создается временная таблица
Код: sql
1.
2.
3.
create table #tbl_name 
([id]          numeric(15, 0) identity, 
  text_field   varchar(255))


И затем сразу
Код: sql
1.
 truncate table #tbl_name


Не пойму зачем подобное телодвижение, ведь таблица только создалась и пустая...
truncate в данном случае будет очищать таблицу, которая была создана в другой сессии?
Прочитал, что для таких таблиц sql сам для себя дополняет имена, потому они уникальны в бд.
...
Рейтинг: 0 / 0
20.04.2018, 16:09
    #39633835
KreatorXXI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параллельное выполнение процедуры
шК0ДЕР,

Ну, если хранимка, сделай три хранимки и запускай их с клиента в параллель. Другое дело - там вообще странный функционал, да? Может ничего и распараллеливать не нужно? Нужно разобраться что она делает, эта хранимка.
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Параллельное выполнение процедуры / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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