#0
by 1976vas
Участилась проблема с блокировками. База большая УПП 1.3, пользователей около 70. Главбух постоянно предъявляет претензии. Описал ей, что причина либо в кривом запросе, либо нагрузке на сеть, либо в мощности сервера, либо в настройках SQL. Ко всему этому не имею доступа, т.к. есть админы и сопровожденец конфы. В мою задачу входит только работа с пользователями и дописание всего внешнего. Вопрос такой, подскажите, пожалуйста, я ничего не упустил? Я так понимаю, что прежде чем задавать такие вопросы мне, мне нужно как минимум передать права на администрирование SQL-сервера, чтобы начать с трассировок. Я прав?
#0
by 1976vas
Участилась проблема с блокировками. База большая УПП 1.3, пользователей около 70. Главбух постоянно предъявляет претензии. Описал ей, что причина либо в кривом запросе, либо нагрузке на сеть, либо в мощности сервера, либо в настройках SQL. Ко всему этому не имею доступа, т.к. есть админы и сопровожденец конфы. В мою задачу входит только работа с пользователями и дописание всего внешнего. Вопрос такой, подскажите, пожалуйста, я ничего не упустил? Я так понимаю, что прежде чем задавать такие вопросы мне, мне нужно как минимум передать права на администрирование SQL-сервера, чтобы начать с трассировок. Я прав?
#3
by 1976vas
Спасибо большое, подумал еще, что может проблему создавать то, что сервер на виртуалке.
#4
by vde69
вполне может, тогда тебе нужны счетчики гипервизора... особенно очередь к дискам... закажи у админов... зы права не обязательно просить, по тому как вместе с правами ты получишь и зону ответсвенности, а сейчас ты смело все валишь на админов и пусть они разгребают...
#9
by 1976vas
Я не определял расчет себестоимости, есть более продвинутый человек, который занимался внедрением и занимается поддержкой. Я бухам и говорю - делайте в выходные ))
#10
by vde69
не правильно поставил себя в компании.... смело говори "тормозит не 1с а сервер и сеть, все вопросы к админам...", проси разделения зон ответствености... разделением должно стать четко описаные критерии того что тебе выделяют админы, например 1. на SQL сервере не менее 32 гиг физической (не выгружаемой гипервизором) памяти для SQL сервера 2. на SQL сервере очередь к дискам не более 0.1 сек и так далее... тогда лего определить чья эта проблемма...
#13
by Cube
В той базе, о которой вчера говорили (15 активных пользователей) после перехода на РАУЗ забыли, что бывают блокировки. Перешли 4 года назад. Новые сотрудники вообще блокировки в глаза не видели и когда у кого-нибудь раз в год выскакивает - звонят мне с испугом "Это что такое?" :)
#17
by vde69
нормально это когда упирается в запись данных и лога, нормальные величины для этих операций от 5 до 10 %, у тебя их и в помине не видно, значит никакие танцы с дисками тебе ничего не ускорят.... идещь на и читаешь, оптимизируй настройки сети и сервера пока запись данных и лога хотя бы до 5% не дойдут...
#18
by Злопчинский
главное вопрос: может ли кто-то кроме одинэсника (а у меня сомнения и в них) - проконтролировать ПРАВИЛЬНОСТь конечных цифр (именно правильность, а не правдоподобность)
#20
by floody
Где написано про дедлоки? Через некоторое время вдруг окажется, что база на автоблокировках.. Регламенты на субд выполняются? Я бы посмотрел сначала: 2)недостающие/неиспользуемые индексы 3)рассчитаны ли итоги вообще (бывает и такое) 4)режим разделения итогов 3)полный пересчет итогов
#22
by 1976vas
Спасибо, но это не показания сервера, это я у себя на машине сервер развернул и пробовал, прежде чем на сервере что-то запускать. Просто хочу ориентироваться немного в результатах тестирований.
#23
by 1976vas
1С:Управление строительной организацией, редакция 1.3 (1.3.61.3) "ПолучитьДеревоПартий обновлена?" - как узнать?
#24
by 1976vas
1) Выясняю, вернее пытаюсь )) 2) Пытаюсь выяснить. 3) Уверен, что рассчитаны. 4) Не в курсе. 5) Не имею права. Сначала хочу выяснить проблемы сети, сервера и SQL, потому, как думаю это проще пока, потом копать дальше.
#26
by 1976vas
Разделение идет, опытный программист сопровождает из франчи, а я на фикси - на подхвате.
#29
by vde69
нафига это нужно на локалке???? это нужно ТОЛЬКО на боевом сервере!!! при активно работающих пользователях!!!
#34
by 1976vas
Кстати, в воскресенье перенес tempdb на другой диск, отвел память на 9Гигов под SQL, параллелизм в 1 поставил(было 0), в базе авторасширение поставил 200 и 50 Мб. Вроде побыстрее стало, по отзывам.
#35
by vde69
в вопросах оптимизации НИКОГДА не ориентируйся на отзывы, только на конкретные цифры... это САМОЕ ГЛАВНОЕ В ОПТИМИЗАЦИИ!!!
#36
by 1976vas
Я понял, надо было что-то быстрее предпринимать. Сейчас по анализам запроса буду пока ориентироваться.
#38
by Ник второй
+ Отзыввы крайне важны, так как оптимизация делается не для мифических цифр, а для удовлетворения потребности Заказчика
#39
by vde69
это Вы не в курсе, что у людей "быстрее" зависит не от фактов а например от ПМ, или от того сколько времени до сдачи баланса и еще от миллиона причин. Любая оптимизация начинается с вопросов - что тормозит? - ОСВ за год - Сколько сейчас? - 10 мин - Сколько будет хорошо? - 30 сек при достижении результата в 30 сек оптимазацию следует прекратить не смотря на то, что жалобы останутся...
#40
by 1976vas
Давайте договоримся так, что все хорошо, если цифры статистики подтверждают мнение пользователей :)
#41
by vde69
нет ты не понял, пользователи будут орать при любых скоростях... (реже или чаще, но будут) почитай про SLA...
#42
by 1976vas
Сейчас они довольны, хотя я понимаю, что аппетиты растут и это не надолго. Спасибо, почитаю, прямыча читакой становлюсь :)
#46
by vde69
"Происходит, если фоновый поток, который используется для сеансов расширенных событий, ожидает обработки буферов событий." я-бы подумал, что регламент статистистики на сервере скуля давно отвалился, то есть банально план запроса строится слишком неоптимально... или распаралеливание криво работает... посмотри для начала 1. когда обновлялась статистика? 2. часом скуль не на виртуалке?
#48
by 1976vas
1. Регламент по статистике делается ежедневно сейчас (Админ говорил, надо проверить). 2. Сервер SQL (только он) на виртуалке.
#51
by vde69
>>>Сервер SQL (только он) на виртуалке. это очень серьезный момент, грамотно настроить можно, но я такого почти не встречал.... скуль собирает статистику и на основании этого строит план запросов и его распаралеливает, по идее все куски одного запроса при адекватной статистики не ждут друг друга а исполняются "к сроку". Если происходят внешние события (например гипервизор включает что-то и начинает один камень делить с другой виртуалкой) то весь запрос начинает ждать те кусочки запроса которые пришлись на этот камень.... там много заморочек и с памятью и с диском и с камнями...
#55
by vde69
отложеное проведение - путь к минусам... путь конечно возможный, но больно много на нем кочек...
#58
by vde69
по сабжу, да и картина в целом похожа... автору советую списатся с автором указаного топа о результатах перехода на железный сервер...
#60
by 1976vas
Спасибо, с самого начала по отзывам говорил админам, что виртуалка - зло. Трудно будет перенести на обычный сервер?
#61
by 1976vas
Скорость увеличу - взаимоблокировок поменьше будет, так думаю. виртуальный сколько стоит такой SSD, примерно? И насколько увеличит скорость, если все же tempdb на него положить?
#63
by vde69
при установке SSD резко увелится скорость фулскана, а поиска по индексу увеличится мало, по этому SSD рулит только для логов (при условии правильных индексов в 1с)
#64
by vde69
+ то есть SSD сделает кривые руки программиста 1с не такими видными народу... для нормальных баз SSD офигенного прироста не дает...
#65
by 1976vas
У нас УПП вся паханная перепаханная. Плюс строительный модуль от Раруса. SSD по 8 тысяч - это не то? Просто никогда не интересовался железом.
#66
by vde69
у меня были отрицательные опыты с SSD я конечно понимаю, что будущее за ними, но я не слежу за ними... придет эра массового внедрения SSD - въеду в тему :)
#67
by 1976vas
Там в 21 посте "на железной машине (а не на виртуалки) длину очереди к диску, если более 0.5с - то мало, если 5-10с - то афигительно мало" - как узнать длину очереди к диску? У меня память под SQL 9Гигов всего, а крутится Документооборот и УПП.
#69
by vde69
не путай, память на сервере скуль видит то, что ему отдано гипервизором, а гипервизор может имеет всего 1 гиг памяти а остально своп :) "железная машина" - это гипервизор, все замеры счетчиков винды нужно делать на нем а не на вируальной машине где стоит скуль
#73
by 1976vas
Регламентные задания настроены, но как оказалось не выполнялись, т.к. был отключен SQL Agent.
#74
by vde69
бинго!!! ну давай теперь после выполнения рег заданий повторяй тест.... уверен результат будет совсем иным... статистику обновляй не реже чем раз в два часа... только лучше подождать пару дней, что-бы планы запросов оптимизировались в несколько итераций, а потом уже тест повторяй... да и про виртуализацию то-же не забывай :)
#76
by 1976vas
Спасибо, буду пробовать. Какой интервал в замерах лучше ставить? И результаты за 8 минут, которые у меня, насколько показательны?
#77
by vde69
>>>>Разделение идет, опытный программист сопровождает из франчи, а я на фикси - на подхвате. теперь ты понимаешь какой это "опытный программист" ???
#78
by vde69
сейчас ничего не делай, дай время скулю несколько раз обновить свою статистику регламентыми заданиями, уверен после этого скорость увелится примерно в 2 раза... то есть мы нашли явную проблемму, нужно ее устранить и только потом смотреть дальше, это нужно, что-бы проблеммы не наслаивались друг на друга...
#79
by 1976vas
Раз в день обновление статистики и чистка кэша, раз в неделю дефрагментация индексов и раз в неделю реиндексация таблиц. Но я перенастрою, статистику и кэш на раз в два часа, дефрагментацию раз в сутки и реиндексацию раз в неделю. Не-не, он администрированием не занимается, ставил SQL наш генеральный директор и админ.
#81
by 1976vas
Понятно, спасибо, сегодня вечером настроим регламентные задания. Что на ночь перенести, какое задание?
#83
by vde69
обновление статистики поставьте раз в час или два, не бойтесь тормозов не будет. дефрагментацию индексов ставь раз день, что-бы ночью шло. реиндексацию можно так оставить... в понедельник запусти опять мой скрипт.... больше ничего не делай пока ибо надо посмотреть результат...
#84
by 1976vas
Ок. Регламент по статистике и кэшу на работу системы почти не влияют, я читал рекомендации делать их почаще.
#86
by 1976vas
Да, везде вроде рекомендуют, а был в 0. Еще вопрос перед реиндексацией таблиц желательно делать бэкап?
#88
by vde69
рекомендую ставить 1 для 7.7 (или для тех кто не умеет настраивать регламент скуля), для 8.х лучше ставить 0... реиндексация и бекап не как не связаны, даже если реиндексация завершится крахом и после краха сделаем бекап, он будет валидным... бекап связан со шринком, но ты шринк не делаешь в регламенте...
#89
by vde69
это значит, что скуль сам определяет степень палалелизма на основании статистики и плана запроса
#90
by vde69
еще совет - перегрузите сервер, для проверки что агент работает, а то опять отвалится поле апдейта очередного.... но это уже к админу :)
#92
by floody
скулю отдано 9 гигов? а объемы баз какие? если базы большие, то посмотрите счетчики SQL, может ему памяти мало
#96
by vde69
на все... даже на тестовые, хуже не будет :) про память - разумеется мало (и наверняка она в своп у гипервизора уходит), но это будет видно чуть позже, по моим прикидкам у автора в понедельник будет в 2...3 раза быстрее все работать... а это уже не мало ....
#97
by 1976vas
Хотелось бы )) Кстати по блокировкам, может кому понадобится нашел такой скрипт [1C] SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED DECLARE @dbid AS smallint; use [test]; SET @dbid=DB_ID; /*кто кого*/ SELECT DB_NAME(pr1.dbid) AS 'DB' ,pr1.spid AS 'ID жертвы' ,RTRIM(pr1.loginame) AS 'Login жертвы' ,pr2.spid AS 'ID виновника' ,RTRIM(pr2.loginame) AS 'Login виновника' ,pr1.program_name AS 'программа жертвы' ,pr2.program_name AS 'программа виновника' ,txt.[text] AS 'Запрос виновника' FROM MASTER.dbo.sysprocesses pr1(NOLOCK) JOIN MASTER.dbo.sysprocesses pr2(NOLOCK) ON (pr2.spid = pr1.blocked) OUTER APPLY sys.[dm_exec_sql_text](pr2.[sql_handle]) AS txt WHERE pr1.blocked <> 0 [1C] Теперь если появляются блокировки, смотрю кто блочит, звоню, спрашиваю, прошу приостановить работу по приоритету. Пока хоть так.
#98
by Rebelx
см. "Конфликт блокировок при выполнении транзакции" = Дедлок В данном случае повышение производительности не решит проблему, а только сделает вероятность ее возникновения меньше. Т.е. только отложит проблему на будщее
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Запарил Конфликт блокировок при выполнении транзакции
- Конфликт блокировок при выполнении транзакции
- Тормозит 1С: Конфликт блокировок при выполнении транзакции
- Конфликт блокировок при выполнении транзакции?
- Конфликт блокировок при выполнении транзакции
- Конфликт блокировок при выполнении транзакции
- РИБ. Конфликт блокировок. Не удалось заблокировать таблицу FILES.
- Ошибка при расчёте зарплаты: Конфликт блокировок при выполнении транзакции:
- Конфликт блокировок в файловой базе с одним пользователем, УТ 11
В этой группе 1С
- Возврат денег за покупку на карту в 1С:Бухгалтерии 8.3
- Код на УФ
- v8: Параметр запуска /TComp –None странно работает в толстом клиенте
- Удаление из регистра сведений БП 1,6
- Перенос справочников из 1с77 в 1с8
- 1C 8.2 Ragent падает
- 1C v8 базовая через терминальные подключния - правомочность
- Вопрос по регистрам накопления: Проверка заполнения реквизита = Выдавать ошибку
- Вопрос по СКД. Найти различия в данных.
- Запись бух. операции сильно тормозит (запись в регистр бухгалтерии)
- Перенос данных из УПП 1.3 в УП 2
- Создание немодального оповещения 1с83
- 1С 8.3. Проблема с общим номером по порядку в таблице СКД
- Не удалось произвести подключение к информационной базе: БП-1.6
- Автоматический обмен между Ут 10.3 и УТ 11
- Запретить пометку удаления в УНФ
- Конвертация данных. Не переносить определенные документы.
- Как проставить ИФО в БГУ 1.0
- Почему в Книге покупок 16-я графа (НДС) в валюте?
- Ошибка преобразования данных XDTO: