Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Новости сайта "Упражнения по SQL" (http://www.sql-ex.ru) 70


Информационный Канал Subscribe.Ru

Новости сайта "Упражнения по SQL (http://www.sql-ex.ru)" Выпуск 70 (14 января 2006 г.)

http://www.sql-ex.ru

Новым посетителям сайта

Сайт посвящен изучению языка, с помощью которого осуществляется взаимодействие с реляционными (и не только) СУБД. Суть обучения состоит в выполнении заданий на написание запросов к учебным базам данных; при этом система контролирует правильность выполнения заданий. В настоящее время реализованы все операторы подъязыка манипуляции данными (DML), которые включают в себя оператор извлечения данных SELECT, а также операторы модификации данных - INSERT, DELETE и UPDATE.

Мы надеемся, что справочного материала сайта окажется достаточно для самостоятельного обучения. Кроме того, свои решения вы можете обсудить на форуме сайта. Опытных же специалистов приглашаем проверить (продемонстрировать) свое мастерство и принять участие в соревновании, обеспечиваемом рейтинговой системой учета времени выполнения заданий. Фактически, рейтинг ведется на втором этапе тестирования, который начинается сейчас после решения 58-ти задач первого этапа. При подсчете рейтинга каждого участника отбрасывается один самый худший показатель среди всех решенных им упражнений.

Демонстрация плана выполнения запроса и сравнительная оценка эффективности решений поможет вам освоить принципы оптимизации запросов.

Имеется возможность получить сертификат по SQL DML при выполнении определенного количества заданий.


Новости сайта

§ Исправил незначительную ошибку, замеченную Snowbear, которая возникала при расширении текстовой области запроса на странице perfcon.php.

§ Внесены изменения в отображение информации по общим топикам форума. Теперь здесь дается та же информация, что и по топикам задач, например, отмечается появление новых сообщений.

§ Сайт теперь поздравляет с днем рождения (сертифицированных специалистов). Если вы скрываете свой возраст, достаточно ввести день и месяц.

§ Новый человек в десятке - Goapsy (задач 137, время 15.958)

§ Приблизились к десятке:
VIG (135, 13.914)
raul (122, 12.774)
User_Name (121, 14.498)

§ Продолжили свое восхождение к вершине:
Sp999 (132, 35.798)
nibbles01 (122, 26.767)
Julia_M (120, 19.264)
ruchey (117, 35.067)
carbon (107, 30.968)
Igor Derbyshev (96, 13.528)
yarry (96, .651)
Lady (96, 12.072)

§ Число подписчиков - 2832

Число участников рейтинга - 4468

Число участников второго этапа - 468

Сертифицировано на сайте - 47

Лучшие результаты (ТОР 20)

No Person Number of
Sel_ex
Last_Sel Number of
DML_ex
Scores Days Days_2 LastSolved LastVisit
1 Кувалкин К.С. (Cyrilus) 138 138 20 316 387 5.234 16 Dec 2005 13 Jan 2006
2 Войнов П.Е. (pаparome) 137 137 20 312 117 1.745 19 Dec 2005 13 Jan 2006
3 Абашин П.И. (Dizil) 137 137 20 312 117 3.689 19 Dec 2005 11 Jan 2006
4 Голубин Р.С. (Roman S. Golubin) 137 137 20 312 117 6.572 13 Dec 2005 13 Jan 2006
5 Самохвалов В. (ValdemarES) 137 137 20 312 40 7.530 27 Dec 2005 13 Jan 2006
6 Тарасов Д.Б. (Gavrila) 137 137 20 312 109 10.968 13 Dec 2005 13 Jan 2006
7 Крижевич С.А. (yaff) 137 137 20 312 176 14.676 23 Dec 2005 11 Jan 2006
8 Иванов А.Н. (Goapsy) 137 137 20 312 60 15.958 09 Jan 2006 13 Jan 2006
9 Валуев Д.И. (Fiolent) 137 96 20 312 843 28.607 25 Dec 2005 13 Jan 2006
10 Страшников А.С. (EffEct) 137 96 20 312 226 58.048 27 Dec 2005 12 Jan 2006
11 Галиаскаров Э.Г. (Galogen) 137 137 20 312 392 72.253 19 Dec 2005 28 Dec 2005
12 Духин А. (Shark) 136 137 20 310 148 2.746 06 Dec 2005 15 Dec 2005
13 Леденев С.А. (Shurgenz) 136 72 20 310 497 11.597 28 Dec 2005 28 Dec 2005
14 Носков Н.В. (niko2) 135 137 20 308 163 8.002 16 Dec 2005 16 Dec 2005
15 Konyshev (Phohack) 136 136 20 308 266 92.956 28 Dec 2005 29 Dec 2005
16 Зверев Д.Л. (dimzv) 134 137 20 307 643 2.871 08 Aug 2005 10 Jan 2006
17 Гонтовой В.А. (noname) 134 137 20 307 105 9.793 29 Jun 2005 19 Dec 2005
18 Бураков С.Г. (burakov58) 134 137 20 307 164 12.079 12 Jul 2005 04 Dec 2005
19 Мельникова И.А. (Iris_m) 134 137 20 307 478 91.730 02 Sep 2005 10 Oct 2005
20 Gershovich V. (VIG) 135 72 20 306 1031 13.914 06 Jan 2006 13 Jan 2006

Лучшие результаты за неделю

No surname n_sel sel_all sel_scores dml_scores scores rating last_visit
1 Никанорова Л.А. (Lubochka) 56 56 101 17 118 396 13 Jan 2006
2 Mal G. (Gmal) 48 48 80 9 89 735 11 Jan 2006
3 >Бондаревский М.А. (JITter) 42 42 69 0 69 1023 13 Jan 2006
4 Соловьева О.А. (eclipse) 12 55 31 23 54 328 11 Jan 2006
5 Соколов (мутный) 25 50 46 4 50 597 13 Jan 2006
6 >Димитров В.М. (Vyacheslav) 30 30 49 0 49 1468 13 Jan 2006
7 Семионов Е. (Jin) 21 36 47 1 48 1088 12 Jan 2006
8 Леонтьев К.Ю. (klyr) 26 26 43 1 44 1601 11 Jan 2006
9 Kobelev I. (Kimmy) 25 37 42 0 42 1368 13 Jan 2006
10 >Клячина К.Н. (Ксения) 27 36 41 0 41 1451 13 Jan 2006
11 >Brown M.E. (lambchop) 24 24 37 0 37 1787 13 Jan 2006
12 >Дубровский В.В. (Iktorn) 24 24 37 0 37 1833 13 Jan 2006
13 >Алексеева Е.А. (Gella) 19 26 36 0 36 1633 13 Jan 2006
14 >Boltach (Bol) 23 24 35 0 35 1884 13 Jan 2006
15 >Melnyk Y. (YMel) 23 23 35 0 35 1913 13 Jan 2006
16 Зайнуллин Т.Ф. (Тимурка) 21 49 33 0 33 785 09 Jan 2006
17 Шкрыль А.А. (LB) 22 22 31 1 32 2078 12 Jan 2006
18 >Хайретдинов Р.В. (PEHAT) 13 33 31 0 31 1279 13 Jan 2006
19 Воробьев М.Н. (-[Max]-) 19 24 28 3 31 1907 13 Jan 2006
20 Sadabaeva N.A. (Nargiz) 26 26 31 0 31 2104 12 Jan 2006

Изучаем SQL

Использование монитора производительности для определения узких мест аппаратных средств, на которых запущен SQL Server

Brad M. McGehee (оригинал: Using Performance Monitor to Identify SQL Server Hardware Bottlenecks)
Перевод Моисеенко С.И.

Список контрольных вопросов аудита производительности

Название счетчика Среднее число Минимум Максимум
Память: Страницы/секунды    
Память: Доступное простанство (байты)      
Физический диск: Время работы диска %      
Физический диск: Средняя длина очереди диска      
Процессор: Процессорное время %      
Система: Длина очереди процессора      
Буфер SQL Server: Коэффициент удачного обращения в кэш буфера      
SQL Server: Пользовательские подключения      

Введите ваши результаты в таблицу, приведенную выше.

Использование монитора производительности (Performance Monutor) для идентификации узких места аппаратных средств SQL Server

Лучше всего начать аудит производительности SQL Server с монитора производительности (System Monitor). Мониторинг нескольких основных счетчиков за период 24 часов позволит вам получить довольно хорошее представление о любых главных аппаратных проблемах, которые сказываются на производительности SQL Server.

В идеале Вы должны использовать монитор производительности для создания файла регистрации (журнала) показаний ключевых счетчиков сроком на 24 часа. Вам предстоит выбрать "типичный" 24-часовой период для создания файла регистрации. Например, выберите типичный рабочий день, не конец недели или праздник.

Как только Вы зафиксировали данные монитора производительности за 24 часа в файле регистрации, отобразите рекомендованные счетчики в режиме Graph монитора производительности, и затем запишите среднее, минимальное и максимальное значения в вышеприведенную таблицу. Как только Вы сделали это, сравните ваши результаты с результатами приведенного ниже анализа. Это сравнение даст вам возможность определить любые потенциальные узкие места аппаратных средств, которые влияют на ваш SQL Server.

Как интерпретировать ключевые счетчики монитора производительности

Ниже обсуждаются некоторые основные счетчики монитора производительности, их рекомендованные значения и некоторые опции, которые должны помочь идентифицировать и разрешить аппаратные проблемы. Следует отметить, что я ограничил число рассматриваемых счетчиков монитора производительности. Сделано это потому, что целью данной статьи является обнаружение простых и очевидных проблем потери производительности. Обсуждение многих других счетчиков монитора производительности можно найти в другом месте на этом вебсайте.

Память: Страницы/секунды

Этот счетчик измеряет число страниц в секунду, которые сбрасываются из оперативной памяти на диск, или считываются в оперативную память с диска. Чем более интенсивно происходит обмен страницами, тем большую нагрузку на операциях ввода/вывода испытывает ваш сервер, что, в свою очередь, может отрицательно сказаться на производительности SQL Server. Ваша цель заключается в том, чтобы постараться свести обмен страницами к минимуму, не устраняя его.

В предположении, что SQL Server является единственным главным приложением, выполняющимся на вашем сервере, это число должно в идеале находиться в интервале между нулем и 20. Весьма вероятно, что Вы будете наблюдать выбросы, значительно превышающие 20, что вполне нормалью. Основным здесь является поддержание среднего значения обмена страницами в секунду менее 20.

Если ваш сервер показывает в среднем больше чем 20 страниц в секунду, одной из наиболее вероятных причин этого является нехватка необходимой оперативной памяти. Вообще говоря, чем больше оперативной памяти имеется, тем меньше должно выполняться операций по обмену страницами.

В большинстве случаев, на физическом сервере, специализированном под SQL Server, с адекватным количеством оперативной памяти, среднее значение обмена страницами будет меньше чем 20. Адекватное количество оперативной памяти для SQL Server можно определить по следующему критерию: сервер должен иметь коэффициент удачного обращения в кэш буфера (Buffer Hit Cache Ratio) 99 % и выше. Данный счетчик описан ниже в этой статье. Если Вы имеете SQL Server, у которого этот коэффициент имеет значение 99 % или выше в течение 24 часов, но Вы получаете среднее значение обмена страницами более 20 в течение того же самого периода времени, это может указывать на то, что у Вас выполняются и другие приложения на физическом сервере помимо SQL Server. Если дело обстоит именно так, Вы должны в идеальном случае удалить эти приложения, позволив SQL Server быть единственным главным приложением на физическом сервере.

Если ваш Сервер SQL не выполняет никакие другие приложения, и обмен страницами превышает 20 в среднем в течение 24 часов, это может означать, что Вы изменили параметры настройки памяти SQL Server. SQL Server должен быть конфигурирован так, чтобы была установлена опция "Dynamically configure SQL Server memory" (Динамически конфигурировать память SQL Server), а установка "Maximum Memory" должна находиться в наибольшем значении. Для оптимальной работы, SQL Server нужно позволить взять столько оперативной памяти, сколько ему требуется для собственных нужд, не испытывая необходимости конкурировать за оперативную память с другими приложениями.

Память: Доступное пространство

Другой способ выяснить, имеет ли ваш SQL Server достаточно физической оперативной памяти, состоит в том, чтобы проверить счетчик Memory Object: Available Bytes. Его значение должно быть более 5 МБ. В противном случае, ваш Сервер SQL нуждается в большем количестве физической оперативной памяти. На сервере, специализированном под SQL Server, последний пытается удерживать от 4-10MB свободной физической памяти. Оставшаяся физическая оперативная память используется операционной системой и SQL Server. Когда объем доступной памяти близко к 5 МБ или ниже, наиболее вероятно, что SQL Server испытывает перегрузку из-за нехватки памяти. Если это имеет место, Вы должны увеличить количество физической оперативной памяти в сервере, уменьшить нагрузку на сервер или изменить параметры настройки конфигурации памяти вашего SQL Server соответственно.

Физический диск: Время работы диска %

Этот счетчик показывает, насколько занят физический дисковый массив (не логический раздел или отдельный диск в массиве). Он обеспечивает хорошую относительную меру того, насколько заняты ваши дисковые массивы.

Как эмпирическое правило, счетчик времени диска должен показывать менее 55 %. Если показания счетчика превышают 55 % в течение непрерывных периодов (свыше 10 минут в течение ваших 24 часов мониторинга), то ваш SQL Server может испытывать проблемы с операциями ввода/вывода. Если Вы наблюдаете это поведение лишь изредка в течение ваших 24 часов мониторинга, я бы не волновался слишком сильно, но если бы это случалось часто (скажем, несколько раз час), то я начал бы искать способы увеличить производительность операций ввода/вывода на сервере или уменьшить загрузку сервера. Некоторые способы увеличивать дисковый ввод/вывод состоят в добавлении новых дисков в массив (если это возможно), замены дисков на более быстрые, добавлении кэш-памяти на плате контроллера (если это возможно), использования различных версий RAID или установки более быстрого контроллера.

Перед использованием этого счетчика под NT 4.0, нужно вручную включить его, введя в Command Prompt следующее: "diskperf-y". После этого нужно будет перезагрузить ваш сервер. Таким образом, требуется сразу включать дисковые счетчики под Windows NT 4.0. Если Вы работаете под Windows 2000, этот счетчик включен по умолчанию.

(Продолжение следует...)

Контакты

По всем вопросам, связанным с функционированием сайта, проблемами при решении упражнений, идеями вы можете обращаться к Сергею И.Моисеенко msi77@yandex.ru. Вы также можете предложить свои задачи для публикации на сайте.

Подписка Subscribe.Ru
Новости сайта "Упражнения по SQL"

Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.db.sqlex
Архив рассылки
Отписаться Вебом Почтой
Вспомнить пароль

В избранное