(Возврат на основную страницу)

 

Содержание номера за Январь 2007 год

 

Администраторы баз данных: многозадачность для продвижения вперед

Кари Маклин (Cari Mclean)

Информация, анализ и количественное выражение данных сегодня критически важны для существования организаций, поэтому неудивительно, что спрос на администраторов баз данных (DBA) постоянно растет. Согласно последним сведениям Статистического управления Министерства труда США, количество DBA увеличилось более чем на 36%. Ожидается, что в течение следующих шести лет эта профессия будет развиваться столь же стремительно. Кроме того, продолжающееся эволюционирование технологий будет поддерживать устойчивый спрос на DBA, а работодатели станут требовать от них более высокого уровня навыков и квалификации.

«Роль DBA — одна из наиболее быстро развивающихся в сфере информационных технологий, и, учитывая рост, а также объем и сложность необходимых знаний, это действительно «горячий» рынок, — говорит Сью Майерс (Sue Myers), директор программы совершенствования навыков управления информацией в IBM. — С этим связан неослабевающий интерес к доступным на рынке продуктам для сертификации и подтверждения навыков, ведь люди продолжают обсуждать все, что связано с данной сферой деятельности».

За последние несколько лет роль администратора баз данных существенно изменилась. Сегодня она имеет стратегическое значение для успешного функционирования бизнеса, и часто DBA работают напрямую с руководителями организаций, чтобы операции с данными не тормозили движение компании вперед. «Раньше DBA не сотрудничал с клиентом, а, понимая схему базы данных, лишь выполнял указания разработчика приложений, который общался с конечными пользователями, — говорит Майерс. — Но сегодня данные — это ключевой момент. У нас так много данных, информации и указаний, что тот, кто знает, как с ними обращаться, может с легкостью извлечь из них существенную выгоду».

DBA сегодня

Администратор баз данных Microsoft Салим Хакани (Saleem Hakani) — один из многих DBA, которые успешно вписались в новые требования развивающейся ИТ­индустрии. Хакани, эмигрант из Индии, начал свою карьеру с администрирования сетей, но вскоре сменил область деятельности, когда рынок баз данных стремительно пошел в гору почти 10 лет назад. «В то время Sybase занимала в Индии ведущие позиции, и я работал администратором баз данных Sybase на системе 4.2, — говорит он. — А потом вышла СУБД Microsoft SQL Server, и я заметил, что она охватила многие системы на существовавшем тогда рынке. Появился спрос на профессиональных администраторов SQL, так что я переключился с Sybase на SQL Server и работал с ней начиная с версии 4.2».

С 1997 г. карьера Хакани устойчиво прогрессировала. Он считает причинами такого роста свой увлекающийся и активный склад ума, а также несколько имеющихся у него сертификаций, в том числе Microsoft Certified Systems Administrator (MCSA) и Mic­ro­soft Certified Database Administrator (MCDBA). «Быть DBA — значит, работать 24 часа в сутки 7 дней в неделю. Вы должны быть всегда доступны, чтобы во­время предвидеть последствия проблем разработки, кроме того, вы ответственны за внедрение новых версий, — говорит он. — Даже по пятницам, субботам или в выходные вы должны быть на связи, чтобы обеспечить непрерывное функционирование систем и нормальную работу пользователей».

Как и Хакани, Карстен Педерсен (Carsten Pedersen), менеджер по сертификации в MySQL AB, предан своему делу и постоянно работает над несколькими задачами, чтобы справляться со всеми своими профессиональными обязанностями. Он следит за сертификацией отдельных сотрудников в рамках программы сертификации по MySQL, а также управляет потоками информации об экзаменах и сертификации и син­хронизирует их. Его работа включает в себя множество задач от отслеживания новых версий, обновлений и проходного балла различных экзаменов до управления персональными данными, такими как демо­графическая информация и результаты тестов. «В мою деятельность входит массовая загрузка данных из внешних источников в базы данных и получение нескольких типов экспортов для посылки обновлений в различные части наших распределенных или онлайн­систем, — говорит Педерсен. — Часто приходится тратить время на отслеживание запросов, которые выполняются недостаточно быстро или каким­то образом блокируют другие обновления базы данных. А убедиться, что резервное копирование выполнено должным образом, — это малая, но очень важная часть моих ежедневных обязанностей».

Требования к техническим навыкам и личным качествам

Главной чертой всех успешных DBA является многозадачность в области как технических, так и социальных навыков. Хотя набор необходимых знаний и умений может отличаться для разных организаций и серверов баз данных, основные навыки являются общими для всех. Администратор баз данных любого уровня занимается организацией, отслеживанием и хранением бизнес­информации, а также координированием систем защиты.

Администратор начального уровня должен уметь создавать таблицы, сохранять и извлекать из них данные, а также иметь хотя бы общее представление о добавлении, обновлении и удалении информации из таблиц. «Со временем он учится пользоваться агрегатными функциями и однажды обязательно столкнется с ситуацией, когда необходимо знать, как применить операцию объединения, — говорит Педерсен. — Возможно, начинающий DBA и помнит о резервном копировании, но выполняет его нерегулярно и почти всегда производит большинство операций вручную».

Размер и масштаб базы данных до некоторой степени определяют степень подготовки DBA. Администратор среднего уровня способен выполнять задачи, связанные с проектированием и реализацией, функционированием и восстановлением, безопасностью и аудитом производительности баз данных, а также с установкой и миграцией сервера баз данных. Достигший среднего уровня подготовки DBA обычно имеет опыт работы не менее трех лет. Он уже может лучше контролировать применение различных типов данных в целях стабильного использования дисковой и оперативной памяти. Кроме того, Педерсен считает, что на этом этапе карьеры DBA число пользователей достигает той отметки, когда их обновления и запросы начинают мешать друг другу, время реакции сервера начинает падать, так что приходится задуматься о сокращении времени обслуживания. «Обычно именно на этом этапе DBA приходится быстро осваивать базовые техники оптимизации. По мере того, как повышается важность приложения для бизнеса, DBA переходит на более автоматизированные методы создания резервных копий, чтобы освободить свое время для других задач», — говорит он.

По мнению Педерсена, для DBA среднего уровня критически важно понимать необходимость готовности к любой ситуации. «Прежде всего, следует знать, как предотвратить катастрофу и провести восстановление после нее. DBA — единственный человек, который может гарантировать, что доступная сегодня информация будет доступна и завтра, даже если сгорит все здание или служащий по ошибке удалит все данные», — утверждает он.

У DBA, достигшего продвинутого уровня, за плечами от трех до пяти лет солидного опыта и обширные знания о СУБД, с которой он работает. В разных компаниях должность такого администратора может называться старший администратор баз данных, архитектор, менеджер баз данных, разработчик и т. п. Но независимо от этого такой сотрудник обычно контролирует инсталляции баз данных для множе­ства приложений, которые поддерживают его коллеги. «В этой роли вы занимаетесь планированием развертывания новых баз данных и таблиц, знаете в деталях управление пользовательскими привилегиями, а также имеете под рукой план предотвращения и восстановления после сбоев», — говорит Педерсен.

Хотя важна техническая квалификация DBA, его личные качества имеют не меньшее значение, особенно в сегодняшнем бизнес­сообществе, жадном до информации. «В мире баз данных мы движемся в направлении большей интеграции среды. Совершенно ясно, что нам нужны уверенные знания в области используемого продукта и осведомленность о других элементах окружения, но, помимо этого, DBA должны понимать особенности бизнес­среды, в которой они работают, — говорит Майерс. — Также им нужно иметь представление об особенностях приложений и жизненном цикле информации, поскольку эти факторы влияют на принимаемые ими решения. Поэтому деловая хватка и понимание вашей области индустрии — ключевые навыки».

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

Навыки личного общения и взаимодействия с помощью программных средств также считаются чрезвычайно важными. «Достижение взаимопонимания при общении похоже на улицу с двусторонним движением. Здесь все дело в обмене опытом, — полагает Педерсен. — Это тяжкий труд, потому что большин­ство пользователей начинает беспокоиться, лишь увидев что­то странное на экране, но не считает нужным говорить о таких абстрактных вещах. Неудивительно, что масса усилий тратится впустую».

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

Роль сертификации

Сертификация — полезное средство для развития карьеры DBA. На самом деле, требования в большинстве сертификаций в области баз данных как раз соответ­ствуют требованиям к техническим навыкам и личным качествам, необходимым администратору БД. Для DBA будет разумным шагом получить сертификацию в области основного сервера баз данных, с которым он имеет дело. У IBM, Oracle и Microsoft есть подробные программы сертификации, которые помогают DBA проверить свои навыки и продвинуться по карьерной лестнице. MySQL, Sybase, Teradata и SAP предлагают программы сертификации в области баз данных, отлично зарекомендовавшие себя в ИТ­индустрии.

«Сегодня сертификации для DBA — необходимый фундамент, доказательство пригодности. Мы проанализировали, насколько работодатели ценят наличие сертификации, и выяснили, что, если единственной разницей между двумя кандидатами на должность является наличие у кандидата А сертификации при ее отсутствии у кандидата Б, работодатель отдаст предпочтение кандидату A», — говорит Сьюзен Дикман (Susan Dykman), менеджер программы повышения навыков управления информацией в IBM.

С точки зрения Хакани, сертификации сыграли важную роль в развитии его карьеры. «Реальный опыт работы значит очень много, а сертификация определенно добавляет ценности вашему опыту, — говорит он. — Но начинается все с обучения и трюков, которые вы освоили, когда зарабатывали свой первый опыт на этой должности. На данный момент сертификация требуется в 80 процентах случаев, и я думаю, что в ближайшем будущем она станет обязательным требованием для претендента на должность DBA, по­скольку она доказывает, что вы обладаете необходимыми навыками».

Перспективы на будущее

Хакани говорит, что он тоже собирается воспользоваться сертификацией для достижения своих карьерных целей. «Через пять лет я надеюсь подняться на высшую ступень карьерной лестницы в области инжиниринга баз данных. Кроме того, лет через семь я хотел бы стать архитектором ПО для систем баз данных», — говорит он. Другой хороший способ оставаться на переднем крае развития технологий — следовать требованиям рынка баз данных, особенно учитывая последнюю информацию от Статистического управления Министерства труда США, которая предсказывает быстрый рост в области администрирования баз данных в течение следующих шести лет.

«Даже если вы достигли уровня продвинутого администратора данной СУБД, вам нужно совершен­ствовать знания и навыки. Продукты постоянно обновляются, так что по мере развития продукта вам нужно повышать профессионализм. Учебные курсы и семинары от производителя СУБД весьма полезны, даже если вы уже продвинутый пользователь, — говорит Педерсен. — Мир баз данных постоянно пополняется новыми представителями по мере того, как новые СУБД выходят на рынок. Не исключено, что ваша компания сольется с другой организацией или поглотит ее, что часто приводит к появлению весьма разнородных центров обработки данных с большим количеством разнообразных СУБД. Таким образом, с позиции построения карьеры я считаю разумным изучить, по крайней мере, одну коммерческую систему баз данных и одну из распространенных систем с открытыми исходными текстами».

В условиях сегодняшнего рынка очень важно быть достаточно гибким и задумываться о перспективах, чтобы оставаться на переднем крае развития технологий. «Мы стоим на пороге существенных изменений в области сбора и применения информации, — говорит Майерс. — Так что у DBA есть возможность занять в компании высокую позицию и задавать стратегическое направление для движения данных как в области приложений, так и в бизнес­среде в целом».

Триггеры

Робин Дьюсон (Robin Dewson)

Несмотря на то что вы стали достаточно хорошим профессионалом в работе с SQL Server 2005, вам обязательно нужно узнать о еще одном его аспекте. И этот последний шаг — триггеры, а данная статья — недостающий кирпичик в фундаменте ваших знаний и умений.

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

В этой статье мы собираемся:

•    описать, что такое триггер;

•    подробно осветить потенциальные проблемы, связанные с триггерами;

•    продемонстрировать синтаксис CREATE TRIGGER;

•    выяснить, когда следует использовать ограничение, а когда — триггер;

•    показать системные таблицы и функции, касающиеся триггеров;

•    продемонстрировать создание триггера через шаблон и непосредственно через команды языка T­SQL;

•    обсудить графические типы данных и проблемы, связанные с изменениями в их полях и срабатыванием триггера.

 

Перемещение имен пользователей и паролей между экземплярами SQL Server

 

После перемещения баз данных на новый сервер у пользователей могут возникнуть сложности со входом на этот сервер. Появляется следующее сообщение об ошибке: Msg 18456, Level 16, State 1 Login failed for user '%ls'. Имена пользователей и пароли необходимо переместить на новый сервер. В этой статье описана процедура такого перемещения.

Перемещение имен пользователей и паролей между серверами, на которых запущен SQL Server 7.0

Компонент Object Transfer из состава служб Data Transformation Services (DTS) SQL Server 7.0 предназначен для перемещения между двумя серверами имен учетных записей пользователей, но он не обеспечивает перемещение паролей для зарегистрированных имен пользователей SQL Server. Чтобы переместить имена пользователей и пароли с сервера под управлением SQL Server 7.0 на такой же сервер, выполните действия, описанные в разделе «Полное решение для перемещения имен пользователей и паролей между различными версиями SQL Server».

Перемещение имен пользователей и паролей из SQL Server 7.0 в SQL Server 2000 или между серверами, на которых запущен SQL Server 2000

Для перемещения паролей и имен пользователей с сервера, на котором запущен SQL Server 7.0, на сервер с SQL Server 2000 или между двумя серверами, на которых запущен SQL Server 2000, служит новая задача Transfer Logins Task из пакета DTS в SQL Server 2000. Выполните следующие действия:

1.  Подключитесь к серверу назначения SQL Server 2000, в окне диспетчера SQL Server Enterprise Mana­ger найдите папку Data Transformation Services, откройте ее, щелкните правой кнопкой мыши компонент Local Packages и выберите пункт New Pack­age.

2.  Когда откроется конструктор DTS, из меню Task выберите команду Transfer Logins Task. Введите на вкладках Source, Destination и Logins необходимые данные.

Важно! На сервере назначения не может быть запущена 64­разрядная версия SQL Server 2000, так как компоненты DTS для такой версии отсутствуют. При импорте имен пользователей с экземпляра SQL Server, который расположен на отдельном компьютере, для успешного выполнения задачи необходимо, чтобы принимающий экземпляр SQL Server был запущен с помощью учетной записи домена.

Примечание С помощью метода DTS можно переместить пароли, но не исходные ID безопасности. Если имя пользователя было создано без исходного ID безопасности, то при перемещении баз данных на новый сервер пользователь будет изолирован от имени. Чтобы переместить исходный ID безопасности и избежать появления изолированных пользователей, выполните действия, описанные в разделе «Полное решение для перемещения имен пользователей и паролей между различными версиями SQL Server».

Перемещение имен пользователей и паролей между экземплярами SQL Server 2005

Дополнительные сведения о перемещении имен пользователей и паролей между экземплярами SQL Server 2005 см. в статье Базы знаний Microsoft 918992 «Перемещение имен пользователей и паролей между экземплярами SQL Server 2005» по адресу http://support.microsoft.com/kb/918992/ (эта ссылка может указывать на содержимое полностью или частично на английском языке)

(Возврат на основную страницу)

Hosted by uCoz