Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
и прямая дорога на гуиды? если хочется ускорить заливку за счет паралельных планов?
никто не тестил "с пристрастием"?
16 май 12, 16:14    [12564168]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Crimean
"сиквенсы" как и identity не допускают паралельной обработки на вставке?
Серьёзно?
А где пачитать? (BOL, блоги, форумы)

Меня например немного удивило, что Identity в одной операции вставки идут не подрят, а "с пропусками". Потом то понятно, что заранее неизвестно число строк в запросе.
Поэтому уже как-то нелогично выше указанное ограничение ТС.

А вообще какое физическое ограничение модели (Serializable) тут играет роль?
Почему нельзя сначала подготовить все данные (все строки, или блок (страницу)), а потом "раздать" им сиквенсы, сразу пачкой(ами)?
17 май 12, 09:46    [12567372]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
Mnior
Серьёзно?
А где пачитать?


достаточно просто попробовать. убираем identity - идет распаралеливание. возвращаем - в 1 поток и привет
оно, конечно, логично и правильно, но вопрос в том как эффективнее обойти, может кто уже решал такое
переписать / сменить субд / платену / галактику / вероисповедание - не вариант, это просто работа
зы
гуиды, безусловно, вариант, но данных как-то многовато, 4 >> 16 = +12 байт - диски просесть могут, мне и так пара - тройка айдишек нужна для работы.. вопрос в том, что их таки надо идентифицировать - приколы прикладухи
17 май 12, 11:25    [12568188]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Ну, если нет требования трензакционной целостности, то параллелить можно и рукам: джобы, сервисброкеры и прочая через одно место чуть-чуть неудобная мутотень.
17 май 12, 12:05    [12568637]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
Гавриленко Сергей Алексеевич
Ну, если нет требования трензакционной целостности, то параллелить можно и рукам: джобы, сервисброкеры и прочая через одно место чуть-чуть неудобная мутотень.


ээ.. вопрос как бы был в том, что конструкция вида:

insert into t1 ... select ... from t2 where


будет или нет распаралелен в зависимости от наличия identity поля в t1. но в t1 нужно поле, которое будет идентифицировать записи для дальнейшей работы. ну и, собственно, t1 / #t1 - без разницы, все упирается в identity
все это к сожалению, в реалтайме ну или если так будет проще - в контексте выполнения другой задачи и особо оттуда вырвано на брокер быть не может, как бы мне не хотелось
а если записей к обработке - десятки лямов, то отсутствие распаралеливания "стоит" уже десятки минут
зы
пока без ссд и без рамдрайва, но не уверен, что это радикально решит проблему без распаралеливания
зы2
настройка распаралеливания - вообще отдельная тема для обсуждения
17 май 12, 12:11    [12568712]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
ОФФ: может все ж 610 флагом воспользоваться - http://msmvps.com/blogs/gladchenko/archive/2010/03/09/1761298.aspx ?
17 май 12, 12:52    [12569168]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
tpg
ОФФ: может все ж 610 флагом воспользоваться - http://msmvps.com/blogs/gladchenko/archive/2010/03/09/1761298.aspx ?


ну как бы уровень логирования операций пока не рассматривается.. оно, возможно, станет быстрее, но не в разы как при распаралеливании. а вот "полирнуть" - уже можно и этим трасфлагом, тут да, СПАСИБО
17 май 12, 15:24    [12570883]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
aleonov
Member

Откуда:
Сообщений: 96
Crimean
Mnior
Серьёзно?
А где пачитать?


достаточно просто попробовать. убираем identity - идет распаралеливание. возвращаем - в 1 поток и привет
оно, конечно, логично и правильно, но вопрос в том как эффективнее обойти, может кто уже решал такое
переписать / сменить субд / платену / галактику / вероисповедание - не вариант, это просто работа
зы
гуиды, безусловно, вариант, но данных как-то многовато, 4 >> 16 = +12 байт - диски просесть могут, мне и так пара - тройка айдишек нужна для работы.. вопрос в том, что их таки надо идентифицировать - приколы прикладухи



У меня была другая проблема, нужно было избавиться от распараллеливания поскольку данные должны были быть в заданном порядке и решение было аналогичным - добавлением свойства identity для поля, хотя более правильным было бы добавление хинта максдоп в запросе. Совсем недавно для себя открыл, что свойство identity поля не обеспечивает однопоточную обработку данных. Вообще параллельность хитрая штука. Почитайте вот здесь тык
17 май 12, 17:51    [12572345]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
aleonov
Вообще параллельность хитрая штука. Почитайте вот здесь


спасибо!
17 май 12, 17:59    [12572412]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Гавриленко Сергей Алексеевич
Ну, если нет требования трензакционной целостности, то параллелить можно и рукам: джобы, сервисброкеры и прочая через одно место чуть-чуть неудобная мутотень.
Можно обманом. Как варант.
Через SET IDENTITY_INSERT. Если заранее известно количество строк. Может ли повлиять на скорость - не знаю.
18 май 12, 11:44    [12575649]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Тут пишут что можно добиться при наличии секционирования. Parallel insert operations in a table
SQLUSA
All these 10 sprocs pounding on the same destination staging table? If so, that is not really parallel. It is more like 10 customers fighting for one cash register in a supermarket.

For true parallelism the sprocs should be inserting into a partitioned table for example so the sprocs don't trip over each other. Supermarket analogy: 10 cash registers - 10 customers.

Interesting link: We Loaded 1TB in 30 Minutes with SSIS, and So Can You
21 май 12, 16:21    [12589923]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
Mnior
Тут пишут что можно добиться при наличии секционирования


вариант. только вот к # его не особо прикрутить. хотя в теории можно и к #
21 май 12, 19:33    [12590975]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Crimean
#
Интересный алфавит.
Это так постепенно происходит китайская экспансия?
22 май 12, 10:36    [12592488]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
Mnior,

это временные таблицы так в MS SQL принято называть почему-то
22 май 12, 11:53    [12593251]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Тормоз. Не смог предположить.

Хм. А зачем на них нужён Identity ? Нельзя разве заменить ?
22 май 12, 19:58    [12597012]     Ответить | Цитировать Сообщить модератору
 Re: я так понимаю, "сиквенсы" как и identity не допускают паралельной обработки на вставке?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
Mnior
Тормоз. Не смог предположить.

Хм. А зачем на них нужён Identity ? Нельзя разве заменить ?


если чо - "мопед не мой". надо как-то "идентифицировать построчно" собранный набор данных. а заливка немелкая
23 май 12, 11:17    [12599287]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить