Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
Может кто то пользуется средствами анализа сервера на предмет таких проблем как, например с нехваткой памяти или другой мощности сервера? Встроенные средства такие, конечно показывают инфу, но в некоторых случаях мне сложно сказать, что здесь имеется узкое место ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 09:08 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
я хочу сказать, что нужен некое средство обнаружение проблем на сервере с базами данных например результат проверки .. зеленый все ок, красный есть проблемы такие ето такие то ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 09:10 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
SAS2014, Ну это наверно Idera, Red Gate, Sentry One и прочее... Я думаю у них что нибудь есть. Но я предпочитаю по дедовски, по хардкору, через запросы :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 09:16 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
SAS2014, PAL (Performance Analysis of Logs) (или на github ) Using PerfMon and PAL to Diagnose SQL Issues ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 09:55 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
SAS2014, PRTG ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 10:25 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
SAS2014я хочу сказать, что нужен некое средство обнаружение проблем на сервере с базами данных например результат проверки .. зеленый все ок, красный есть проблемы такие ето такие тоТакое средство есть. Это квалифицированный DBA. #Хэш= ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2018, 14:09 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
SAS2014, вы как-то рассуждаете на уровне кухарки, управляющей государством. Если бы проблемы решались нажатием кнопки - давно бы всем раздали такую кнопку, а не учились бы по 10-15 лет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2018, 20:25 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
SAS2014, Мне понравился SQL Sentry - решение из коробки, а так - perfmon.exe и джобы самописные с DMV всякими... трасса, extended events, audit много средств для отслеживания событий разных, но их настраивать надо. В конторах часто zabbix используют для мониторинга серверов, и на нем счетчкики и триггера настраивают исходя из своих знаний. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2018, 21:30 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
спс за инфу, жаль, что они платные ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2018, 08:59 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
SAS2014Может кто то пользуется средствами анализа сервера на предмет таких проблем как, например с нехваткой памяти или другой мощности сервера? Встроенные средства такие, конечно показывают инфу, но в некоторых случаях мне сложно сказать, что здесь имеется узкое место Вы для себя определили уже, что означает "нехватка памяти или другой мощности сервера"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2018, 10:27 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
Ролг Хупин, Ну это ж очевидно, когда работает все медленно :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2018, 10:28 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
aleksrovРолг Хупин, Ну это ж очевидно, когда работает все медленно :) да, еще типа "вчера всё работало нормально, а сегодня какая-то фигня там" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2018, 10:52 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
aleksrovРолг Хупин, Ну это ж очевидно, когда работает все медленно :)А должно работать быстро? #Хэш= ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2018, 11:02 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
Ролг ХупинSAS2014Может кто то пользуется средствами анализа сервера на предмет таких проблем как, например с нехваткой памяти или другой мощности сервера? Встроенные средства такие, конечно показывают инфу, но в некоторых случаях мне сложно сказать, что здесь имеется узкое место Вы для себя определили уже, что означает "нехватка памяти или другой мощности сервера"? это как один из примеров по нехватки памяти, просто щас серверу выделено макс 5 Гб, и у системе остается 2-3 Гб вот и думаю этого достаточно или это одна из причин торможения работы БД на сервере ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 01:14 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
система Win Serv 2012 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 01:15 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
SAS2014система Win Serv 2012 perfmon to sql server первая попавшаяся и полно другого в гугле. Классика посмотри диски: IOPS, очереди, время отклика диска память: процент попадания в кэш, время жизни страницы буффер кэша проц: нагрузка общая по ядрам если необходимо своп насколько задействуется всякие pagelatch есть расщепления страниц, ошибки, дидлоки, блокировки. Начни с простого, после можно копнуть уже глубже и принимать решения в случае проблем. Это не коробочное решение конечно, но и что бы коробочным пользоваться, нужно в счетчиках разобраться что бы понимать какие проблемы могут быть и как их диагностировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 09:31 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
SAS2014Ролг Хупинпропущено... Вы для себя определили уже, что означает "нехватка памяти или другой мощности сервера"? это как один из примеров по нехватки памяти, просто щас серверу выделено макс 5 Гб, и у системе остается 2-3 Гб вот и думаю этого достаточно или это одна из причин торможения работы БД на сервере Коллега, подумайте вот о чем. У Вас есть таблица небольшая, несколько миллионов строк, которая влезает в 10% оперативной памяти. И вторая аналогичная. Вам нужно вывести select top 1000 from table1 left join table2 on неоднозначное_условие. Оптимизатор MSSQL полез в статистику, а она устарела. И он промахнулся. Вместо того, чтобы простым table scan или index scan пробежать по двум таблицам и выдать ответ за несколько миллисекунд - он взял и решил, что из второй таблицы прилетит 2-3 строки, а поэтому построит цикл nested loops, прикрутив выборку из первой. Это была ошибка - под такое условие из второй таблицы прилетит 2-3 миллиона строк, каждую из которых нужно будет обработать на процессоре. Памяти свободной - ну просто навалом. Запрос быстро отработает и на 5400 rpm HDD диске в ноутбуке. А база "тормозит". Куда упирается? В тактовую частоту процессора (ну и в шину и в L3 кэш, но это мелочи). Таки Вы хоть обвешайте сервер самым крутым железом - ничего не поможет. Без - как уже тут правильно Вам подметили - главного инструмента. "Такое средство есть. Это квалифицированный DBA" (с) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 09:46 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
04cf9f9576a6f15aleksrovРолг Хупин, Ну это ж очевидно, когда работает все медленно :)А должно работать быстро? #Хэш= Ни в коем случае! База должна работать медленно. Это даст следующий эффект. 1. Пользователи будут ощущать важность DBA и разработчиков. 2. Разработчики и DBA выбьют бюджет на новое железо (раскручивая маховик потребления и в целом современной экономики). 3. Руководство не даст денег на лицензии Oracle/MSSQL/и так далее, инициировав программу перехода на "бесплатные" mysql/mongodb/postgresql, что даст новые рабочие места и уменьшит колониальную зависимость от буржуев с Запада. 4. Оптимизация запросов потребует найма новых разработчиков, существующие станут их начальниками (из-за расширения штата и потребности обучать новеньких), это приведет к повышению их социального статуса и размера зарплаты и премий. 5. Руководство ощутит, что оно принимает верные стратегические - кадровые и финансовые - решения, укрепляя IT инфраструктуру предприятия и вытягивая разработчиков со всего рынка, ослабляя сразу потенциальных конкурентов. 6. Пользователи, запросы которых на ускорение некоторых выборок данных или построения отчетов, ощутят, что их запросы удовлетворяются, что они важные винтики в машине предприятия, что вся мощь IT индустрии брошена на успешное удовлетворение их хотелок. Как видите - все будут довольны и счастливы. И не нужно ускорять базу сразу! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 09:55 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
Andy_OLAP, вы сделали мой день ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 10:13 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
Andy_OLAPSAS2014пропущено... это как один из примеров по нехватки памяти, просто щас серверу выделено макс 5 Гб, и у системе остается 2-3 Гб вот и думаю этого достаточно или это одна из причин торможения работы БД на сервере Коллега, подумайте вот о чем. У Вас есть таблица небольшая, несколько миллионов строк, которая влезает в 10% оперативной памяти. И вторая аналогичная. Вам нужно вывести select top 1000 from table1 left join table2 on неоднозначное_условие. Оптимизатор MSSQL полез в статистику, а она устарела. И он промахнулся. Вместо того, чтобы простым table scan или index scan пробежать по двум таблицам и выдать ответ за несколько миллисекунд - он взял и решил, что из второй таблицы прилетит 2-3 строки, а поэтому построит цикл nested loops, прикрутив выборку из первой. Это была ошибка - под такое условие из второй таблицы прилетит 2-3 миллиона строк, каждую из которых нужно будет обработать на процессоре. Памяти свободной - ну просто навалом. Запрос быстро отработает и на 5400 rpm HDD диске в ноутбуке. А база "тормозит". Куда упирается? В тактовую частоту процессора (ну и в шину и в L3 кэш, но это мелочи). Таки Вы хоть обвешайте сервер самым крутым железом - ничего не поможет. Без - как уже тут правильно Вам подметили - главного инструмента. "Такое средство есть. Это квалифицированный DBA" (с) Вы понятия не имеете как работает оптимизатор, видимо. Во первых у вас никогда не будет такого разброса в статистике и факт если она обновляется автоматом, напомню, когда таблица пустая статистика устаревает сразу же как вы добавили данные, после этого она устаривает после добавления 500 строк (если до этого было меньше 500) и потом 500+20%, я думаю вы сами можете посчитать что при таком раскладе такого разброса не будет. Более того при флаге 2371 и в 2016 по умолч. используется динамический порог обновления статистики это: SQRT(1000 * кол-во строк). Также при использовании Top может быть использован Row Goal и здесь также может быть не однозначно как поведет себя запрос, при неравномерном распределении данных. Также не забывайте об индексах. Я даже решил проверить как поведет себя оптимизатор при таком разбросе. Обновил статистику с немного неверными данными, т.е. сделал Update Statistics name with rowcount = 5 для Employer В таблице 65552 строки, это таблица Employer (я специально вставил много строк), обьеденим с таблицей Orders (830 строк, статтистика свежая) по EmployeID, итог: вверху скан Orders, внизу seek Employer через Nested Loop. OK. А что если заказов намного больше, делаем Update Statistics name with rowcount = 1 000 000 Тут у нас интереснее, он сделал скан Employer, потом сделал Seek к индексу по EmpID на Orders, 65552 раза, вернул 830 строк, потом сделал Key Lookup к Orders. Даже если убрать Top работает довольно быстро. Более забавно если мы добавим условие, к примеру Employes.ID > 8 (по факту есть только один такой empid, это 9, и у него 43 заказа). Даже так, при крайе неверном кол-во ожидаемых строк, SQL выбрал похожий план как и вообще без where, только теперь вверху вместо скана Employer идет Seek. Также Нндо учитывать что когда он считает ожидаемое кол-во строк он использует помимо статистики метаданные, когда считает селективность. К примеру возьмем план при where E.ID > 8, вверху у нас seek с ожидаемым количеством строк 4.99939, он взял это число сначала посчитав селективность, а потом умножив ее на кол-во строк из статистики. Селиктивность в данном случе у нас 0.999878 (65544/65552) округленное до нужной стпени, умноженное на 5. При этом если бы мы сделали условие Employes.ID > 8 and Employes.ID < 100 то ожидаемое кол-во строк было бы 1, так как после подсчтеа селективности и умножение ее на данные из статистики мы получим меньше 1 строки, а SQL должен вернуть минимум одну строку. Я к чему все это, вы прям так мастерски предсказали как себя запрос поведет. К тому же надо быть полным "спецом" чтобы н езаметить такие расхождения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 11:16 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
aleksrovВы понятия не имеете как работает оптимизатор, видимо. Это точно, Вы совершенно правы! Я даже никогда не использовал option (querytraceon 8649) и option (querytraceon 2312). Просто так написал какую-то ерунду, решил запугать SAS2014, но совершенно неудачно. Постараюсь так больше никогда не делать. Еще раз таки извините, я нечаянно, так получилось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 11:43 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
Andy_OLAP, Буду знать, что насильное использование паралельного плана означает "я знаю как работает SQL" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 11:55 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
Andy_OLAPaleksrovВы понятия не имеете как работает оптимизатор, видимо. Это точно, Вы совершенно правы! Я даже никогда не использовал option (querytraceon 8649) и option (querytraceon 2312). Просто так написал какую-то ерунду, решил запугать SAS2014, но совершенно неудачно. Постараюсь так больше никогда не делать. Еще раз таки извините, я нечаянно, так получилось. я по прежнему утверждаю, что это call центр индусов. авторБуду знать, что насильное использование паралельного плана означает "я знаю как работает SQL" :) триггер колл центра сработал на UPDATE STATISTICS ... WITH rowcount = 1кк как искуственную генерацию праллельного плана :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 12:29 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
aleksrovAndy_OLAP, Буду знать, что насильное использование паралельного плана означает "я знаю как работает SQL" :) Я Вам больше скажу - иной раз оптимизатору выкручиваете руки, заставляете использовать кошерный параллелизм, а в реальности он делает в одно ядро. Так что "option" это не всегда "насильное использование". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 12:31 |
|
||
|
Узнать проблемы с сервером SQL
|
|||
|---|---|---|---|
|
#18+
TaPaKя по прежнему утверждаю, что это call центр индусов. Я помню Ваши утверждения. Знаете, память с возрастом ухудшается, приходится записывать, даже поручил завести на Вас отдельную папку в Вашем личном деле и внести туда распечатанный скриншот с этой Вашей фразой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 12:32 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39631440&tid=1689886]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
63ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 399ms |

| 0 / 0 |
