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

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


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

http://www.sql-ex.ru

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

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

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

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

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


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

§ Дополнил описание базы данных "Аэрофлот" указанием, что время отправления/прибытия рейса дается с точностью до минуты.

 

§ Силами нашего администратора запущен дополнительный ресурс Книги и статьи по SQL.
Содержание:
Электронные книги, переводы и статьи по SQL. Основные направления - использование языка SQL, оптимизация запросов, настройка производительности сервера.
Здесь же будет опубликован анализ характерных ошибок, допускаемых при решении задач на сайте. Тем самым мы хотим поставить в равные условия иностранцев, которые не могут воспользоваться рассылкой на русском языке. Перевода пока нет, но мы над этим работаем.
Предложения и замечания будут восприняты адекватно :-).

§ В сотне появились новые участники: Gosha_29 (задач 95, время 11.171) и Heromantor (101, 3.384).

§ Уже в двадцатке MadVet (136, 10.873). Это значит, что рейтинг задач мог измениться. Всего одна задача отделяет его от десятки.
Готов вернуться в десятку niko2 (136, 8.286)
Приблизились к десятке:
Snowbear (124, 2.849)
raul (124, 13.197)
Vezyr (108, 10.159)

§ Продолжили свое восхождение к вершине:
snikol (109, 41.707)
gps (97, 95.458)
Gosha (97, 8.029)

§ На этой неделе сертифицированы:
Blur (A06007933) [BK] (Россия, г.Богданович)
sarges (A06005453) [BK] (Украина, г.Киев)

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

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

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

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

Лучшие результаты (ТОР 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 17 Feb 2006
2 Войнов П.Е. (pаparome) 137 137 20 312 117 1.745 19 Dec 2005 17 Feb 2006
3 Зверев Д.Л. (dimzv) 137 96 20 312 819 3.135 31 Jan 2006 31 Jan 2006
4 Абашин П.И. (Dizil) 137 137 20 312 117 3.689 19 Dec 2005 17 Feb 2006
5 Голубин Р.С. (Roman S. Golubin) 137 137 20 312 117 6.572 13 Dec 2005 17 Feb 2006
6 Самохвалов В. (ValdemarES) 137 137 20 312 40 7.530 27 Dec 2005 17 Feb 2006
7 Тарасов Д.Б. (Gavrila) 137 137 20 312 109 10.968 13 Dec 2005 17 Feb 2006
8 Крижевич С.А. (yaff) 137 137 20 312 176 14.676 23 Dec 2005 14 Feb 2006
9 Иванов А.Н. (Goapsy) 137 137 20 312 60 15.958 09 Jan 2006 17 Feb 2006
10 Валуев Д.И. (Fiolent) 137 137 20 312 843 28.607 25 Dec 2005 17 Feb 2006
11 Страшников А.С. (EffEct) 137 137 20 312 226 58.048 27 Dec 2005 17 Feb 2006
12 Галиаскаров Э.Г. (Galogen) 137 137 20 312 392 72.253 19 Dec 2005 24 Jan 2006
13 Мельникова И.А. (Iris_m) 137 137 20 312 622 96.852 24 Jan 2006 10 Feb 2006
14 Духин А. (Shark) 136 137 20 310 148 2.746 06 Dec 2005 15 Dec 2005
15 Носков Н.В. (niko2) 136 72 20 310 224 8.286 15 Feb 2006 15 Feb 2006
16 Леденев С.А. (Shurgenz) 136 137 20 310 497 11.597 28 Dec 2005 14 Feb 2006
17 Держальцев В.А. (MadVet) 136 136 20 308 303 10.873 13 Feb 2006 16 Feb 2006
18 Konyshev (Phohack) 136 136 20 308 266 92.956 28 Dec 2005 29 Dec 2005
19 Гонтовой В.А. (noname) 134 137 20 307 105 9.793 29 Jun 2005 19 Dec 2005
20 Бураков С.Г. (burakov58) 134 137 20 307 164 12.079 12 Jul 2005 04 Dec 2005

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

No surname n_sel sel_all sel_scores dml_scores scores rating last_visit
1 Лобков П.П. (ice-krim) 56 56 101 32 133 311 17 Feb 2006
2 Tkachenko E.V. (Евгения) 53 53 93 19 112 471 17 Feb 2006
3 >Тардаев В.В. (stud) 55 55 98 3 101 662 17 Feb 2006
4 >Oden (Nlen) 55 55 98 0 98 691 17 Feb 2006
5 Памфилов Л.Б. (leonid_) 52 52 90 0 90 769 17 Feb 2006
6 Bukin (Vlad) 40 40 72 2 74 996 16 Feb 2006
7 >Lamaev V.M. (Heromantor) 23 101 48 23 71 81 17 Feb 2006
8 Кирзык А.Г. (cyber) 39 39 55 9 64 1171 17 Feb 2006
9 Диброва К.С. (Kirya) 41 41 62 0 62 1228 16 Feb 2006
10 >Балуева Е.А. (Katerissa) 14 51 38 16 54 547 17 Feb 2006
11 >Канторов М.Е. (Kantic) 19 42 37 15 52 804 17 Feb 2006
12 31 (Anna_M) 30 30 47 0 47 1629 17 Feb 2006
13 >Пономарев (PonomarevMM) 17 44 25 20 45 738 17 Feb 2006
14 Шабанов И.А. (IgorSh) 26 26 43 0 43 1728 16 Feb 2006
15 >Голин М.А. (double_zero) 32 32 42 0 42 1752 17 Feb 2006
16 Соловьёв М.С. (Соловьёв М. С.) 30 30 40 0 40 1823 13 Feb 2006
17 >Юрченко (Pavel_yu) 17 29 39 0 39 1480 17 Feb 2006
18 >philip P.K. (jonny) 16 34 26 9 35 1355 17 Feb 2006
19 >Федин Е.В. (Лек) 6 28 17 17 34 1141 17 Feb 2006
20 >Иванов (double_kolyan) 23 23 34 0 34 2083 17 Feb 2006
21 >Duvalin A. (Lex) 23 23 34 0 34 2107 17 Feb 2006
22 Kormiltsyn A. (alex_meidic) 25 25 33 1 34 2115 16 Feb 2006
23 >Гудкова О.О. (olgud) 22 22 34 0 34 2121 17 Feb 2006
24 >Donald D. (Donald) 4 62 4 28 32 236 17 Feb 2006
25 >Соколов С.В. (Madest) 10 58 26 6 32 361 17 Feb 2006
26 Маркин А.Ю. (Андрей Маркин) 22 22 31 0 31 2282 16 Feb 2006
27 >Петухов А.В. (Sharp) 12 28 30 0 30 1581 17 Feb 2006
28 Шестаков В.Ю. (witty) 26 26 30 0 30 2342 17 Feb 2006

Изучаем SQL

Контрольный список вопросов оценки производительности аппаратных средств SQL Server (продолжение, начало в вып. 72-74)

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

Соотношение аппаратных и программных средств RAID

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

Уровень фрагментации диска

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

Как часть аудита производительности, Вам надлежит выяснить, насколько фрагментированы ваша база данных SQL Server и журналы транзакций. Если у Вас стоит Windows 2000 или 2003, Вы можете использовать для анализа встроенную утилиту дефрагментации, которая покажет вам, насколько фрагментированы ваши файлы. Если Вы используете сервер Windows NT 4.0, то Вам следует использовать утилиту стороннего производителя, например, Diskeeper от Executive Software, чтобы выполнять анализ.

Если в результате анализа вы получаете рекомендацию выполнить дефрагментацию, следует это сделать. К сожалению, дефрагментация базы данных файлов журнала транзакций SQL Server - не всегда простая задача. Открытые файлы, такие как база данных и журнал транзакций, обнаруженные на работающем SQL Server, не всегда могут быть дефрагментированы. Например, встроенная утилита дефрагментации не может выполнить дефрагментацию файлов MDF LDF SQL Server, а вот Diskeeper 8.0 во многих случаях может, но не во всех. Это означает, что в этих некоторых случаях Вам, вероятно, придется перевести SQL Server на автономную работу, чтобы выполнить дефрагментацию MDF и LDF файлов. В зависимости от того, насколько фрагментированы файлы и каков их размер, вам может потребоваться на это несколько часов.

Но имеете ли Вы действительно много вариантов дефрагментации ваших файлов SQL Server? Если в настоящий момент производительность системы ввода-вывода вполне адекватна, то Вы не должны беспокоиться о дефрагментации. Но если производительность ввода-вывода является узким местом системы, то дефрагментация - один из недорогих способов увеличить производительность, хотя и трудоёмкий во многих случаях.

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

Местоположение операционной системы

Для лучшей производительности файлы операционной системы должны находиться на дисковом массиве, на котором не находятся файлы данных SQL Server (MDB или LDF). Кроме того, они должны быть расположены на дисковом массиве, который поддерживает один из RAID - 1, 5, или 10.

В большинстве случаев я (как и большинство других людей) устанавливаю операционную систему на диске C: сервера. Я обычно конфигурирую диск C: как зеркальный диск RAID 1 для отказоустойчивости, а также для улучшения общей производительности.

В большинстве случаев, пока Вы не размещаете операционную систему на одном массиве с файлами данных SQL Server, Вы имеете большую свободу в размещении файлов операционной системы на вашем сервере.

Местоположение исполняемых модулей SQL Server

Местоположение исполняемых модулей SQL Server (бинарных файлов), как и местоположение файлов операционной системы, не является критическим, если они не расположены на одном массиве с файлами данных SQL Server. Как и в случае с файлами операционной системы, я обычно размещаю исполняемые модули SQL Server на диске C:, который в большинстве случаев конфигурируется как зеркальный диск RAID 1.

Если Вы строите кластер на SQL Server 7.0, то исполняемые модули SQL Server не могут быть расположены на диске C:, вместо их следует поместить на общедоступный (shared) массиве. К сожалению, зачастую это тот же самый массив, где Вы храните файлы данных SQL Server, если Вы не имеете достаточно денег, которые можете потратить на приобретение отдельного массива, используемого исключительно для исполняемых модулей. Хотя размещение исполняемых модулей на одном общедоступном массиве вместе с файлами данных SQL Server несколько отрицательно сказывается на производительности, это не слишком плохой компромисс, учитывая отказоустойчивость, которую Вы получаете взамен. С другой стороны, это серьезное основание для перехода на кластеризацию SQL Server 2000. Если Вы строите кластер на базе SQL Server 2000, то его исполняемые модули должны быть расположены на локальных дисках, а не на общедоступном массиве, что не вызывает проблем с производительностью.

Местоположение файла подкачки

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

Обычно я размещаю файл подкачки в одном массиве с операционной системой и исполняемыми модулями SQL Server, который, как я указал ранее, является дисковым массивом, который поддерживает RAID 1, RAID 5 или RAID 10. Как правило, это диск C:. Такое размещение значительно упрощает администрирование.

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

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

Полезная информация

§ Многие поисковики выполняют поиск по "картинкам". Размещение фотографии на сайте гарантирует, что вас увидит весь мир, а не только посетители нашего сайта :-).

Контакты

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

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

В избранное