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

Откуда:
Сообщений: 19
Коллеги,

Имею приложение, которое забирает данные из таблиц MS SQL, преобразует их и вставляет в Berkley DB.
Данных много, один акт переноса занимает ~3 часа.
Само приложение черный ящик, по его куцым логам невозможно понять какая операция заняла сколько времени.
Хотелось бы понимать, на что тратится время.

БД на промышленном серваке, лично я к нему доступа не имею, но могу напрячь местных DBA, чтобы они выполнили какие-то действия на серваке. Например, интересует чистое время выполнения запросов во время акта переноса данных. Также интересно, не происходит ли такая ситуация, что данные готовы, а приложение их не забирает (курсор в ожидании?).
Хотелось бы дать им максимально конкретное задание, т.к. они не в курсе логики этого приложения, у них много серверов и много БД на них.

Помогите, плз., сформулировать задание для DBA.

Спасибо!
13 дек 17, 21:49    [21032139]     Ответить | Цитировать Сообщить модератору
 Re: Помогите сформулировать проблему для DBA  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1348
stMikl,

Для начала вам стоит у них узнать действительно ли проблема у вас с сиквелом а не в чем то другом.

Попросите их проследить за активностью которая происходит на сервере в момент когда вы выполняете вашу долгоиграющую операцию. Может получится так что сервер ничего и не делает а у вас какая то работа на самом клиенте кипит.

Если ДБА подтвердят что с вашего приложения приходит тяжелый запрос, они уже вам целенаправленно могут указать на какие то определенные косяки.

Если ничего не увидят или начнут ломать комедию попросите что бы трассировку сняли и прислали вам.
Обычно для понимания "где тормозит" хватает событий *:StmtCompleted с включенными столбцами Database Name, SPID, HostName, LoginName, ClientProcessID, CPU, Reads, Writes, Duration, RowCounts, ObjectName, LineNumber, TextData

и события Showplan Statistics Profile / Showplan XML Statistics Profile, Performance Statistics
13 дек 17, 23:00    [21032232]     Ответить | Цитировать Сообщить модератору
 Re: Помогите сформулировать проблему для DBA  [new]
stMikl
Member

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

Спасибо за советы!

Для трассировки они должны знать пользователя, которым коннектится приложение?
Что-то еще?
Суть в том, что задание должно быть максимально конкретно, т.к. те люди не заинтересованы мне помогать.
13 дек 17, 23:48    [21032301]     Ответить | Цитировать Сообщить модератору
 Re: Помогите сформулировать проблему для DBA  [new]
Relic Hunter
Member

Откуда: AB
Сообщений: 7318
stMikl
felix_ff,

Спасибо за советы!

Для трассировки они должны знать пользователя, которым коннектится приложение?
Что-то еще?
Суть в том, что задание должно быть максимально конкретно, т.к. те люди не заинтересованы мне помогать.
Тогда - никак.
14 дек 17, 00:23    [21032369]     Ответить | Цитировать Сообщить модератору
 Re: Помогите сформулировать проблему для DBA  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1348
stMikl,

если люди не заинтересованы вам помогать, то ожидайте услышать ответ что у них все хорошо, как в старом анекдоте
+

Забрали сисадмина в армию.
На стрельбах, админ отстрелялся и слышит результат:
- Ни одного попадания!!!
Удивился, почесал затылок осмотрел автомат (проверил магазин, заглянул в ствол…) и говорит:
- Ну я не знаю... от меня пули ушли. Проблемы на принимающей стороне.


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

лучше скажите что бы трассу снимали по фильтру hostname = <имя вашей машины> (с которой стартует приложение) + ClientProcessID = <PID процесса приложения на вашей машине>
14 дек 17, 00:34    [21032386]     Ответить | Цитировать Сообщить модератору
 Re: Помогите сформулировать проблему для DBA  [new]
aleks222
Guest
felix_ff

лучше скажите что бы трассу снимали по фильтру hostname = <имя вашей машины> (с которой стартует приложение)


Да ладно, я видал приложения, которые помнили ишо hostname машины... на которых их разрабатывали.
14 дек 17, 09:31    [21032634]     Ответить | Цитировать Сообщить модератору
 Re: Помогите сформулировать проблему для DBA  [new]
stMikl
Member

Откуда:
Сообщений: 19
Коллеги, всем спасибо!
14 дек 17, 10:07    [21032757]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить