SQL Killer – эротические фантазии Lazy Writer’a на тему MS SQL Server.

Вместо предисловия

По роду своей деятельности мне частенько приходится иметь дело с SQL сервером. Если быть более корректным в формулировках – с Microsoft SQL Server различных версий. В первый раз я увидел его в далёком 1995 году в версии 6.0, в дальнейшем приходилось иметь дело с версией 6.5, 7.0, 2000, 2005. Есть предчувствие, что с версией 2008 тоже придётся столкнуться.

Сайт SQL Killer – это моя записная книжка, в которой я храню различную информацию, тем или иным образом связанную с MS SQL. К старости голова становится совсем дырявой и без таких напоминалок обойтись ой как непросто. В добавок, до недавнего времени мне частенько приходилось объяснять различные нюансы внутреннего устройства MS SQL новичкам, теперь я делаю это гораздо реже, но некий багаж знаний остался – может кому-нибудь пригодится.

Официальные отмазки

Читая материалы данного сайта необходимо иметь ввиду, что всё, что вы здесь прочтёте, является МОЕЙ ЛИЧНОЙ точкой зрения на SQL Server. Я, как любой человек, могу ошибаться в своих суждениях. Информация была собрана из различных источников, за качество которых невозможно поручится. В конце концов я мог просто неправильно перевести первоисточник. Отношение специалистов к вопросу могло измениться с течением времени, да и ещё много чего. Поэтому читайте, но относитесь ко всему со здоровой долей скептицизма – если после моих советов вы угробите свой SQL Server и станете реальным мачо SQL Killer – я тут не при чём. Так что с работы будут увольнять не меня. Уже два раза предупредил. Думаю, для разумного человека этого достаточно.

Что есть на сайте и чего нету

Вы можете задаться вопросом, а почему вам стоит читать данный сайт, в чём его преимущество перед другими сайтами или книгами об MS SQL? По большому счёту – не стоит вовсе. Разве что я вас лично об этом попрошу :). Последние 2 года моя работа была связана с тем, что на работе мне приходилось говорить правильным литературным языком. Это меня порядком утомило, поэтому на сайте всё будет безграмотно, не литературно, зачастую просто на слэнге.

Я не буду повторять прописные истины, которые известны всем, ну а уж если буду – то предельно кратко и доходчиво во-первых, а во-вторых для этого должны быть веские причины. Словом – если вы в десятый раз прочли BOL и так ничего и не поняли – возможно моё объяснение покажется вам немного более понятным.

Какой требуется уровень подготовки для чтения материалов данного сайта? Мне трудно судить. Я слишком давно с SQL Server, мне всё кажется элементарно понятным. По идее должно быть понятно всем. Имеющим мозг.

Почему я в своё время выбрал в качестве специализации MS SQL? Он был гораздо проще Oracle, логичнее Interbase, к тому же мне довелось работать с папой SQL ServerRDBMS от Sybase, так что скорее это не я выбрал MS SQL, а так сложилась жизнь. Однако, несмотря на последнее замечание я всегда считал и продолжаю считать SQL Server наименее глючным продуктом от Microsoft. Если смириться с тем, что это продукт производства Microsoft, который априори не может быть свободен от глюков и фич, то MS SQL – просто идеальный программный продукт.

Так ли сложен SQL Server

Меня часто спрашивают, почему так мало специалистов в области SQL Server с уровнем компетенции выше среднего? С чем связана сложность работы с SQL Server и дефицит кадров? Всё достаточно просто – при всей своей простоте и логичности MS SQL достаточно громоздкий продукт. Для того, чтобы чувствовать себя относительно уверено необходимо иметь достаточно много разнообразных знаний. SQL сервером необходимо рулить – то есть требуются навыки администратора. В нём есть встроенный язык T-SQL, на котором можно программировать взаимодействие между клиентом и сервером. То есть в плюс к навыками админа требуются навыки программиста. Спланировать программно-аппаратный комплекс для эксплуатации SQL Server только в первого взгляда кажется очень просто. В реальности требуется учесть массу мелочей – особенно если система имеет размеры в сотни гигабайт и транзакционную активность в десятки транзакций в минуту. Когда к этому требуется добавить безостановочную работу системы, то мало иметь навыки по проектированию систем, необходимо разбираться в аппаратных платформах, системах хранения данных, кластерных технологиях и ещё множестве несущественных, на первый взгляд, мелочей. Самое же сложное при этом - оставаться в рамках бюджета.

Итак – проектирование систем, администрирование и программирование на T-SQL это базовые навыки, которые должны присутствовать обязательно. При этом необязательно быть гуру в данных областях – но на твёрдую четвёрку знать необходимо. Если потребуется – за пару тройку месяцев можно легко устранить имеющиеся пробелы в конкретной области. Однако помимо этого могут требоваться знания в области обслуживания OLAP систем и хранилищ данных, от вас могут ожидать умение реализовывать ETL функционал или программировать Report Services.

То есть, как становится очевидно – сложность Microsoft SQL Server в том, что одному человеку уже не охватить все аспекты его применения. В итоге имеем, что продукт не сложный, а очень объёмный.

Так что бояться его не стоит, главное начать и планомерно изучать компонент за компонентом – и лет через 5-6 вы станете классным специалистом в компетенции MS SQL Server.

Если после такого вступления желание держаться как можно дальше от MS SQL не посетило вас – приятного чтения, возможно, эти заметки будут стоить дороже, чем бумага, на которых они написаны.

Успехов,

Ваш Lazy Writer –

пожизненный раб Microsoft,

MCT, MCDBA, MCSE, MCITP:Database Administrator, MCTS:SQL Server 2005