Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 [5] 6   вперед  Ctrl      все
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
Ondayl
Member

Откуда:
Сообщений: 203
gandjustas
Нужно отдельные insert на bulk load пачками по 5000-10000 заменить.

Заменить где ? На уровне сиквела можно это сделать ?
12 июл 14, 21:38    [16296553]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
invm
Member

Откуда: Москва
Сообщений: 9413
Ondayl
Заменить где ?
В приложении, которое эти инструкции генерирует.
Только если у БД полная модель восстановления, то это не поможет.
12 июл 14, 22:24    [16296664]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
Ondayl
Member

Откуда:
Сообщений: 203
invm, полная. Все равно не имею возможности такой, я ведь не разработчик.
12 июл 14, 22:30    [16296680]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
gandjustas
Member

Откуда:
Сообщений: 857
Блог
Ondayl
gandjustas
Нужно отдельные insert на bulk load пачками по 5000-10000 заменить.

Заменить где ? На уровне сиквела можно это сделать ?


Нет, только в приложении.
13 июл 14, 00:23    [16296890]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
gandjustas
Member

Откуда:
Сообщений: 857
Блог
invm
Ondayl
Заменить где ?
В приложении, которое эти инструкции генерирует.
Только если у БД полная модель восстановления, то это не поможет.


Примерно в 10 раз по скорости помогает. Bulk load коммитит пачками и лог соответственно пишет на каждый коммит, а не на каждую строку.
13 июл 14, 00:24    [16296896]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
gandjustas
Member

Откуда:
Сообщений: 857
Блог
Ondayl
Если да, то в статистике ожидания будет WRITELOG в топе.

Ну да, вы правы.


Увы, это можно исправить только правкой приложения.
13 июл 14, 02:49    [16297093]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
Ondayl
Member

Откуда:
Сообщений: 203
Вот я нашел процедуру которая работает медленнее остальных, затем я профайлером выбрал событие show plan xml statistics profile, отфильтровал по id эту функцию. В трассе получилось много строк (в секунду десятки раз) и и планы разные. Так должно быть ? Я все еще надеюсь, что может кто-то с опытом посмотрит мою трассировку, мне самому тяжко по первости.
13 июл 14, 21:57    [16298581]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
invm
Member

Откуда: Москва
Сообщений: 9413
gandjustas
Примерно в 10 раз по скорости помогает.
При полной модели восстановления, bulk insert - один из худших способов. Выигрывает только у построчной вставки с автокоммитом. И не в 10 раз, а примерно в 2. Где-то у меня завалялись тесты, если найду - выложу.
Кстати, совершенно не понятно с чего вы решили, что у ТС именно построчная вставка с автокоммитом?

gandjustas
Bulk load коммитит пачками и лог соответственно пишет на каждый коммит, а не на каждую строку.
Это не совсем так. Буфер журнала транзакций - 60Kb. Который сбрасывается на диск либо по заполнению, либо по таймауту, либо по коммиту.

Проблема ТС - отсутствие кеширования при записи.
13 июл 14, 23:08    [16298794]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
gandjustas
Member

Откуда:
Сообщений: 857
Блог
invm
gandjustas
Примерно в 10 раз по скорости помогает.
При полной модели восстановления, bulk insert - один из худших способов. Выигрывает только у построчной вставки с автокоммитом. И не в 10 раз, а примерно в 2. Где-то у меня завалялись тесты, если найду - выложу.
Кстати, совершенно не понятно с чего вы решили, что у ТС именно построчная вставка с автокоммитом?

Потому что последние 10 раз когда я видел WRITELOG в топе ожиданий была именно эта проблема - построчная вставка с автокоммитом. Во всякого рода веб-приложениях сделать такой сценарий в разы проще, чем любой другой.


invm
gandjustas
Bulk load коммитит пачками и лог соответственно пишет на каждый коммит, а не на каждую строку.
Это не совсем так. Буфер журнала транзакций - 60Kb. Который сбрасывается на диск либо по заполнению, либо по таймауту, либо по коммиту.

Проблема ТС - отсутствие кеширования при записи.

Кеширования чего? и где? и как?

Вы думаете кеширофание это такая хрень, которую можно просто включить и нагрузка резко упадет?
13 июл 14, 23:20    [16298813]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
gandjustas
Member

Откуда:
Сообщений: 857
Блог
Ondayl
Вот я нашел процедуру которая работает медленнее остальных, затем я профайлером выбрал событие show plan xml statistics profile, отфильтровал по id эту функцию. В трассе получилось много строк (в секунду десятки раз) и и планы разные. Так должно быть ? Я все еще надеюсь, что может кто-то с опытом посмотрит мою трассировку, мне самому тяжко по первости.


Если происходит рекомпиляция, то да, должно быть. Выложите текст процедуры чтобы стало понятно.
13 июл 14, 23:22    [16298817]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
Ondayl
Member

Откуда:
Сообщений: 203
gandjustas
Выложите текст процедуры чтобы стало понятно.

Она какая-то длинная, поместил во вложение.

К сообщению приложен файл (112.sql - 48Kb) cкачать
14 июл 14, 11:02    [16300023]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
gandjustas
Member

Откуда:
Сообщений: 857
Блог
Ondayl
gandjustas
Выложите текст процедуры чтобы стало понятно.

Она какая-то длинная, поместил во вложение.

Даже боюсь спрашивать что процедура делает, но однозначно курсоры надо выпилить и заменить на dml операторы.
14 июл 14, 11:21    [16300147]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
Ondayl
Member

Откуда:
Сообщений: 203
gandjustas
Даже боюсь спрашивать что процедура делает, но однозначно курсоры надо выпилить и заменить на dml операторы.

Приложение для мониторинга транспорта. Конкретно что это процедура делает, я тоже не знаю.

gandjustas
но однозначно курсоры надо выпилить и заменить на dml операторы

Это долго/трудно ?
14 июл 14, 11:45    [16300289]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
gandjustas
Member

Откуда:
Сообщений: 857
Блог
Ondayl
gandjustas
но однозначно курсоры надо выпилить и заменить на dml операторы

Это долго/трудно ?

Ну если знать что процедура делает, то полдня. А если надо будет реверсить, то от недели.

А почему нельзя разработчиков напрячь поправить довольно очевидные проблемы?
14 июл 14, 13:12    [16300985]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
invm
Member

Откуда: Москва
Сообщений: 9413
gandjustas
Потому что последние 10 раз когда я видел WRITELOG в топе ожиданий была именно эта проблема - построчная вставка с автокоммитом.
Ну из этого не следует, что у ТС именно так и происходит.
gandjustas
Кеширования чего? и где? и как?
Тему читайте полностью. Это уже обсуждалось.
gandjustas
Вы думаете кеширофание это такая хрень, которую можно просто включить и нагрузка резко упадет?
Я думаю, что вы путаете нагрузку и производительность.
14 июл 14, 13:14    [16300992]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
gandjustas
Member

Откуда:
Сообщений: 857
Блог
invm
gandjustas
Потому что последние 10 раз когда я видел WRITELOG в топе ожиданий была именно эта проблема - построчная вставка с автокоммитом.
Ну из этого не следует, что у ТС именно так и происходит.

1) ТС сам сказал что сервисы заливают данные в базу. К несчастью сделать на стороне приложения одиночные инсерты с автокоммитом проще всего.
2) Статистика ожиданий показывает в топе WRITELOG, который говорит о большом количестве записей лога на диск, а также LOGBUFFER, который говорит нам что много транзакций одновременно пишут лог. В сумме это подтверждает гипотезу об одиночных инсертах.


invm
gandjustas
Кеширования чего? и где? и как?
Тему читайте полностью. Это уже обсуждалось.

Если вы про кеш в контроллере, то это вовсем не root cause. Я понимаю что симптомы лечить гораздо проще, но исходну проблему - гораздо эффективнее.


invm
gandjustas
Вы думаете кеширофание это такая хрень, которую можно просто включить и нагрузка резко упадет?
Я думаю, что вы путаете нагрузку и производительность.

Там где есть bottleneck нагрузка является обратной величиной к производительности.
14 июл 14, 13:46    [16301165]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
Ondayl
Member

Откуда:
Сообщений: 203
gandjustas
А почему нельзя разработчиков напрячь поправить довольно очевидные проблемы?

Потому что приложение уже не поддерживается, а разработчик занимается уже другим продуктом, им даже с финансовой точки зрения не выгодно патчить свой заброшенный продукт. У нас он работает, деньги приносит, но неудобства конечно есть, я поэтому сюда и обратился. Сложность еще в том, что если я отдам на "аутсорсинг" кому то, то документации у меня нет, и никто ее не предоставит.
14 июл 14, 16:16    [16302175]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
invm
Member

Откуда: Москва
Сообщений: 9413
gandjustas
1) ТС сам сказал что сервисы заливают данные в базу. К несчастью сделать на стороне приложения одиночные инсерты с автокоммитом проще всего.
2) Статистика ожиданий показывает в топе WRITELOG, который говорит о большом количестве записей лога на диск, а также LOGBUFFER, который говорит нам что много транзакций одновременно пишут лог. В сумме это подтверждает гипотезу об одиночных инсертах.
Вот именно, пока что только гипотеза, пусть и весьма правдоподобная.
gandjustas
Если вы про кеш в контроллере, то это вовсем не root cause. Я понимаю что симптомы лечить гораздо проще, но исходну проблему - гораздо эффективнее.
Чтобы найти исходную проблему и решить ее, нужны определенные знания и умения. У ТС, увы, пока что этих знаний и умений нет.
Зато можно поставить "костыль", в виде BBU + Write-Back Cache на контроллере дисков, который даст хоть какой-то эффект.
14 июл 14, 17:14    [16302541]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
Ondayl
Member

Откуда:
Сообщений: 203
Костыль поставлю. Какую еще я должен дать информацию, чтобы знающим было легче поставить диагноз? Как уже заметили, опыта у меня пока нет, поэтому воспользуюсь частичкой вашего.
15 июл 14, 17:56    [16308361]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
ScareCrow
Member

Откуда: Белый город
Сообщений: 16951
Ondayl
Костыль поставлю. Какую еще я должен дать информацию, чтобы знающим было легче поставить диагноз? Как уже заметили, опыта у меня пока нет, поэтому воспользуюсь частичкой вашего.


два плана - быстрый и медленный
15 июл 14, 21:59    [16309217]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
Ondayl
Member

Откуда:
Сообщений: 203
ScareCrow
Ondayl
Костыль поставлю. Какую еще я должен дать информацию, чтобы знающим было легче поставить диагноз? Как уже заметили, опыта у меня пока нет, поэтому воспользуюсь частичкой вашего.


два плана - быстрый и медленный


А если быстрого плана вообще нет ?
17 июл 14, 14:58    [16318963]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
Ondayl
Member

Откуда:
Сообщений: 203
Итак опять к нашим баранам. Вопрос про то, что если вообще отсутствует план еще актуален.

Где я могу найти человека которой удаленкой одним глазком посмотрит, тут на форуме могу ?
27 июл 14, 18:09    [16363212]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
gandjustas
Member

Откуда:
Сообщений: 857
Блог
Ondayl
Итак опять к нашим баранам. Вопрос про то, что если вообще отсутствует план еще актуален.

Где я могу найти человека которой удаленкой одним глазком посмотрит, тут на форуме могу ?


Цена вопроса?

При таком качестве кода, как в процедуре, опубликованной ранее, вряд ли получится чето сделать.
27 июл 14, 23:35    [16364088]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
Ondayl
Member

Откуда:
Сообщений: 203
gandjustas
Цена вопроса?


Вы меня спрашиваете ? Понятия не имею, сколько за такое берут, я ж с таким никогда ни к кому не обращался, а вне форума мне некого попросить. Совсем некого.

При таком качестве кода, как в процедуре, опубликованной ранее, вряд ли получится чето сделать.


А какие тогда варианты ? Совсем совсем ничего не поделать ?
28 июл 14, 08:21    [16364340]     Ответить | Цитировать Сообщить модератору
 Re: Рестарт служб sql влияет на производительность бизнес приложения.  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2396
Ondayl
А какие тогда варианты ? Совсем совсем ничего не поделать ?

трясти начальство, чтобы выделило деньги, для наема специалиста
28 июл 14, 11:05    [16364937]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 [5] 6   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить