Цель занятия: усвоить знания о порядке такой организации работы пользователей с базой данных, чтобы база данных всегда была работоспособна.
План
Функции администратора БД.
Методы защиты БД.
Резервирование и восстановление БД.
Оптимизация работы БД,
Правовая охрана баз данных
Использование автоматизированных информационных систем порождает общие информационные ресурсы в виде базы или совокупности баз данных, состояние и функционирование которых может критически влиять на жизнедеятельность предприятия, организации. В результате, как и для любого критического ресурса, требуются отдельное специфическое управление и контроль состояния, получившие в процессе внедрения АИС в практику информационного обеспечения деятельности предприятий и организаций специальный термин - «администрирование и защита данных (баз данных)».
В номенклатуре специалистов, обеспечивающих проектирование, создание, эксплуатацию и использование АИС, соответственно, выделилась отдельная категория, называемая «администраторами систем (баз данных)», играющих ключевую роль в процессах информационного обеспечения деятельности предприятий и организаций.
Взгляды на функции и содержание задач, решаемых в процессе администрирования баз данных, формировались вместе со становлением индустрии АИС, менялись вместе с изменениями и усложнениями программно-технических аспектов реализации АИС. Но постепенно сформировался некоторый их базовый перечень, и администрирование баз данных вошло неотъемлемым ключевым компонентом в теорию и практику автоматизированных информационных систем.
Термин «администрирование » определяет комплекс процессов при создании, эксплуатации и использовании АИС, связанных с обеспечением надежности и эффективности функционирования АИС, безопасности данных и организацией коллективной работы пользователей различных категорий.
Этот комплекс процессов можно разделить по решаемым задачам на следующие группы:
обеспечение и поддержание настройки структурного, интерфейсного и технологического компонентов АИС на структуру и процессы предметной области системы;
обеспечение надежности и сохранности данных;
организация и обеспечение коллективной работы пользователей с общими данными.
Первое направление обусловливает участие администратора системы в этапах проектирования и ввода АИС в эксплуатацию. Администратор при этом выступает экспертом в команде разработчиков по выбору СУБД и ее особенностям в плане реализации тех или иных компонент концептуальной схемы создаваемого банка данных, участвует в процессах создания типовых запросов, экранных форм для ввода и вывода данных, шаблонов отчетов. На этапе проектирования и, в особенности, в процессе дальнейшей эксплуатации при наполнении системы данными администратор системы производит анализ адекватности и эффективности спроектированной внутренней схемы базы данных и при необходимости может осуществлять ее корректировку. Для обеспечения таких функций некоторые СУБД содержат специальный программный инструментарий в виде анализаторов быстродействия и оптимальности баз данных.
В эту же группу функций входит создание и поддержание словарно-классификационной базы (словари, справочники, ключевые слова, тезаурусы), которая должна адекватно отражать особенности предметной области информационной системы.
Еще одной важной функцией, особенно на этапе ввода информационной системы в эксплуатацию, является первоначаль ное наполнение системы данными . Во многих случаях для этого могут быть использованы данные из других информационных систем, находящихся, возможно, в других физических форматах и с другой логической организацией. Импорт данных из внешних источников, как правило, требует высокой квалификации по возможностям используемой в АИС СУБД, детального представления логической и физической организации данных в АИС и выполняется вследствие этого администратором системы. В фактографических АИС на основе реляционных СУБД подобные задачи решаются на основе запросов на создание таблиц, источник данных для которых находится во внешних базах или в файлах других форматов (электронные таблицы, текстовые файлы). Соответственно, особенности функционирования АИС могут требовать решения и обратных задач, то есть задач экспорта данных во внешние системы и другие форматы. Такие задачи в большинстве случаев также решаются администраторами АИС.
Обеспечение надежности и сохранности данных является одной из главных обязанностей администратора АИС и включает, в свою очередь, решение ряда следующих технологических и профилактических задач:
планирование, конфигурирование и поддержание системы использования устройств внешней памяти, на которых размещаются файлы данных;
архивирование и резервирование данных;
восстановление данных после сбоев и повреждений;
Проверка и поддержание целостности данных.
Большой объем файлов баз данных, как уже отмечалось, обусловливает их размещение на устройствах дисковой (внешней) памяти. Поэтому отдельной задачей при проектировании АИС является определение схемы размещения файлов базы данных системы на устройствах внешней памяти, контроль за ее состоянием в процессе эксплуатации АИС.
В перечень функций администратора по обеспечению восстановления данных входит также профилактика дисковых носителей внешней памяти , обеспечиваемая специальными программными инструментальными утилитами операционной системы - проверка состояния дисков, дефрагментация и т. д. Данные обязанности накладывают дополнительные требования к профессиональной подготовке администраторов как особого направления подготовки системных программистов.
Проверка и поддержание целостности данных является также неотъемлемой функцией администраторов и заключается в обеспечении настройки и функционирования защитных механизмов СУБД поддерживающих ограничения целостности данных и связей в конкретной базе данных. Как правило, в большинстве СУБД имеются встроенные механизмы автоматического поддержания и контроля целостности данных. Вместе с тем, в ряде случаев, логика предметной области не дает возможности устанавливать такие режимы обеспечения целостности связей, как, например, каскадное обновление и удаление связанных записей. При этом в процессе работы пользователей с базой данных может образовываться множество коллизий в виде «оборванных» связей, что снижает эффективность функционирования базы данных. В таких ситуациях одной из функций администратора базы данных являются периодический контроль целостности связей и устранение подобных коллизий. В некоторых СУБД для решения этих задач предусмотрены специальные режимы и механизмы «ревизии» и восстановления целостности базы данных. В других СУБД данные задачи решаются через технику запросов или через разработку, в том числе и самими администраторами АИС специальных программных утилит.
Сходные задачи ревизии данных решаются администратором также в тех случаях, когда устанавливаются временные регламенты хранения данных и устаревшие данные должны своевременно обновляться или удаляться из системы.
Большой комплекс функций администратора АИС связан с организацией и обеспечением коллективной работы пользова телей с общими данными. Еще на этапе проектирования АИС с непосредственным участием будущего администратора системы разрабатывается организационная схема функционирования и использования АИС. Исходя из особенностей технологических процессов в предметной области и круга решаемых задач, определяются функциональные группы работников, отвечающих за ввод, обработку и использование общих данных системы. На этой основе строится перечень и схема пользователей системы, определяются их конкретные функции, полномочия, разрабатываются необходимые технологические и интерфейсные элементы (входные и выходные экранные формы, запросы, шаблоны отчетов и т. д.), прорабатываются и устанавливаются внутренние параметры и характеристики коллективной обработки данных (размещение данных, параметры блокировок, обмена и т. д.). Администратор АИС, по сути, является как раз организатором и руководителем этих технологических процессов организации работы эксплуатационного персонала и абонентов-пользователей системы.
Отдельным, но тесно переплетенным с остальными функциями, направлением этого комплекса обязанностей администратора системы является создание и поддержание системы разграничения доступа к данным и защиты данных от несан кционированного доступа . На основе системы и схемы функций, задач и полномочий пользователей и обслуживающего персонала администратором строится и поддерживается схема категорирования объектов базы данных по критерию доступа различных пользователей и внешних процессов, осуществляется текущее управление этой схемой и аудит процессов обработки данных с точки зрения безопасности и разграничения доступа к данным.
Развитые СУБД в составе своих функций и возможностей, как правило, имеют специальный инструментарий, обеспечи вающий основной набор функций и задач администратора - уже упоминавшийся анализатор быстродействия и оптимальности, утилиты архивирования, резервирования и ревизии базы данных, подсистему разграничения доступа и защиты данных.
В настольных однопользовательских системах, строящихся на основе СУБД с развитым интерфейсным набором инструментов по созданию и управлению базами данных, все или большая часть функций администратора может выполняться самими пользователями, которые в необходимых случаях могут лишь изредка прибегать к помощи и консультациям соответствующих специалистов. Вместе с тем рассмотренный перечень функций и решаемых задач, так или иначе, реализуется и в однопользовательских системах.
Следует также отметить, что организационно администраторы АИС являются отдельными штатными категориями работников информационных служб, подчиняясь непосредственно руководителям таких служб, или во многих случаях, собственно, и выполняя функции руководителя службы информационного обеспечения предприятия, организации, отдельного подразделения.
С базой данных, как правило, взаимодействуют несколько пользователей. Эти пользователи в организации могут выполнять совершенно различные функции, иметь различные представления об используемых данных, но пользоваться ими одновременно. Поэтому при эксплуатации БД крайне необходим учет различных требований и наличие алгоритма разрешения конфликтов.
Иными словами, нужно ввести долгосрочную функцию администрирования, направленную на координацию и выполнение всех этапов проектирования, реализации и ведения интегрированной базы данных. В соответствии с этой функцией на определенных лиц возлагается ответственность за сохранность такого важного ресурса, как данные.
В этом параграфе мы познакомимся с задачами и функциями администрирования БД, которое необходимо обеспечить на самых ранних стадиях разработки.
Характерное для многопользовательской среды использование хранящихся в компьютере данных заключается в "захватывании" файла данных. Каждый пользователь блокирует свои данные, не допуская остальных к их использованию. Это вынуждает других пользователей накапливать те же самые данные. С появлением баз данных необходимость в индивидуальном хранении и использовании информации отпала. Но появилась потребность в управлении коллективным использованием данных.
Администратором базы данных (АБД) называется лицо, ответственное за выполнение функции администрирования базы данных.
АБД - не "обладатель" базы данных, а ее "хранитель". С усложнением предметной области неизбежно усложняется процесс формирования информации и принятия решений. В результате расширяется спектр функций администрирования. Так как в случае использования базы данных прикладной программист "устраняется" от непосредственного управления данными, он утрачивает с ними контакт, а следовательно, и чувство ответственности за них. Это требует разработки процедур обеспечения непротиворечивости данных, которые должны быть скоординированы с функцией администрирования базы данных.
Администрирование базы данных предполагает обслуживание пользователей базы данных. Можно провести аналогию между АБД и ревизором предприятия. Ревизор защищает ресурсы предприятия, которые называются деньгами, а АБД - ресурсы, которые называются данными. Во многих организациях по странной традиции АБД рассматривают только как квалифицированного технического специалиста, часто совмещающего функции программиста. Это не соответствует целям администрирования. Уровень АБД в иерархии организации должен быть достаточно высоким, чтобы он мог определять структуру данных и право доступа к ним и нести за это ответственность. АБД обязан хорошо представлять себе, как работает предприятие и как оно использует данные. Хотя от АБД и требуется техническая компетентность, не менее важным является понимание им предметной области, а также умение общаться с людьми и подчинять альтернативы стандартным процедурам. В противном случае АБД не сможет эффективно выполнять свои функции.
Весьма заманчиво наделить АБД широкими полномочиями, однако его положение на предприятии может быть различным. Оно зависит прежде всего от степени значимости базы данных для жизнедеятельности данного предприятия. Вторым фактором является уровень сложности обработки данных и организации коммерческой деятельности. Как мы уже отмечали, АБД чаще всего назначается из числа прикладных программистов отдела обработки данных, что не всегда оправдано.
АБД должен координировать действия по сбору сведений, проектированию и эксплуатации базы данных, а также по обеспечению защиты данных. АБД обязан учитывать как перспективные, так и текущие информационные требования предметной области. Это одна из его главных задач. Следовательно, при проектировании базы данных необходимо добиваться ее максимальной гибкости или максимальной независимости данных.
Переход при обработке информации на технологию баз данных и расширение существующей базы данных связаны со значительными финансовыми затратами, что предопределяет необходимость тщательного планирования и управления этим процессом. Кроме того, количество данных, помещаемых в базу, растет день ото дня, и параллельно с этим усложняются обрабатывающие эти данные прикладные программы. Все это требует наличия централизованного управления на каждом этапе жизненного цикла системы с базой данных.
Правильная реализация функций администрирования БД существенно улучшает контроль и управление ресурсами данных предметной области. С этой точки зрения функции АБД являются скорее управляющими, чем техническими. Принципы работы АБД и его функции определяются подходом к данным как к ресурсам организации. Поэтому решение проблем, связанных с администрированием БД, часто начинается с установления общих принципов эксплуатации СУБД, хотя между СУБД и администрированием БД имеется различие. В большинстве случаев СУБД покупается в виде программного пакета, а администрирование БД является прерогативой предприятия. АБД обеспечивает обобщенное представление о предметной области в виде концептуальной модели, которая представляет модель данных предприятия. Одной из целей создания базы данных является обеспечение информацией пользователей, работающих в различных функциональных областях предприятия. Однако это часто означает, что ни один из этих пользователей не испытывает чувства ответственности и об общих интересах заботится в
последнюю очередь. Неизбежным результатом такого отношения является превращение АБД в координатора. Во многих случаях, организуя базу данных, АБД идет по пути решения технических проблем, то есть прежде всего вопросов, связанных с использованием СУБД.
Первая важная задача АБД состоит в устранении противоречий между различными направлениями деятельности организации при создании концептуальной, а затем и логической модели базы данных предметной области. Выступая в роли посредника между отделами, он должен добиваться не только того, чтобы различные специалисты пришли к соглашению относительно объектов предметной области, но и того, чтобы это соглашение было "правильным". Кроме определения данных и прав доступа к ним от АБД может потребоваться разработка процедур и руководств по ведению данных. Для выполнения функций АБД необходимо хорошо представлять себе состояние дел предприятия и перспективы его развития, а также знать позицию руководства. На начальной стадии разработки базы данных АБД следует сконцентрировать внимание на следующих проблемах:
Определение элементов данных и объектов предметной области;
Присвоение различных имен, которые будут использоваться для обращения к элементам одного и того же типа;
Установление взаимосвязей между элементами данных; выпуск текстового описания элементов данных;
Выделение отделов или пользователей, ответственных за обеспечение точности данных (например, контролирующих обновление данных, их непротиворечивость);
Определение путей применения элементов данных в целях управления и планирования, то есть распределении функций между персоналом.
Сбор всей этой информации из различных источников и необходимость ликвидации возникающих между отделами трений требуют, чтобы АБД обладал еще и дипломатическими способностями.
Как уже отмечалось, понятие "единоличного владения" данными неприменимо к базе данных. Однако оно существует, и это иногда существенно усложняет работу АБД. АБД приходится убеждать некоторые отделы, чтобы они "передали" свою собственность в общее пользование, либо контролировать доступ к легко искажаемой информации.
Идея "разделения" может не только вызвать противодействие со стороны некоторых отделов, но и настроить их враждебно против всего проекта разработки базы данных в целом. АБД должен одних убедить, других уговорить, третьих ободрить, а кого-то, если необходимо, и принудить. Это означает, что АБД должен уметь пользоваться своей властью и влиянием, обладать определенным стажем работы и хорошо разбираться в обстановке на данном предприятии. Очевидно, функции АБД не может исполнять человек, восстановивший за время работы против себя многих сотрудников.
Таким образом, к вопросу выбора АБД администрация предприятия должна подходить чрезвычайно серьезно. При выдвижении кандидатуры на пост АБД следует руководствоваться теми же критериями, что и при назначении на посты других управляющих, поскольку рассмотрению долговременных потребностей предприятия АБД обязан уделять не меньшее (если не большее) внимание, чем текущим проблемам. Выполнение этой обязанности осложняется еще и тем, что база данных предусматривает объединение данных без учета функциональных границ.
Реализация руководящих материалов может быть успешной только в том случае, когда все сотрудники, имеющие отношение к базе данных, ознакомлены с ними и несут ответственность за выполнение стандартов, устанавливаемых АБД. Прикладные программисты, сотрудники служб эксплуатации и сопровождения системы должны понимать процедуры, требуемые для решения стоящих перед ними задач. Это означает, что АБД необходимо установить эффективную взаимосвязь со всеми группами сотрудников, которым приходится обращаться к базе данных.
Возвращаясь к рассмотренной в конце предыдущего параграфа программе Auto_Store, заметим, что она позволяет: добавлять, удалять пользователей, назначать существующим пользователям имена, пароли, уровни доступа, назначать привилегии доступа относительно каждого уровня доступа. На рис. 2.24 и 2.25 изображены формы, соответствующие описанным функциям.
7 лекция. Администрирование БД
Администратор базы данных - это должностное лицо, которое отвечает за обслуживание СУБД.
АБД имеет много различных обязанностей, но главное для него - обеспечить постоянную работу сервера и предоставить пользователям доступ к нужной информации в любое время. Кроме того, АБД должен делать все от него зависящее, чтобы обеспечить защиту данных и свести к минимуму вероятность их потери.
Кто может стать АБД
Администратором базы данных может стать человек, который занимается разработкой базы данных и управлением ею. Это может быть программист, который принял на себя ответственность за обслуживание SQL Server на время разработки проекта и настолько увлекся этим занятием, что изменил профиль своей работы. Это может быть и системный администратор, которому вменили в обязанности также поддержку SQL Server. Это может быть даже переквалифицировавшийся специалист из другой области, например бухгалтер. Если вы тоже хотите стать АБД, вам необходимо следующее:
· хорошее знание операционных систем Microsoft Windows;
· знание языка структурированных запросов (SQL);
· умение разрабатывать базы данных;
· общее понятие о сетевых архитектурах (например, клиент/сервер, Internet/intranet, Enterprise);
· знание Microsoft SQL Server.
Совет специалиста микрософт:
Если вы являетесь членом команды техобслуживания, которой требуется администратор Microsoft SQL Server, вот вам мой совет: вызовитесь на эту должность. Во-первых, это прекрасная работа. Во-вторых, хорошие АБД нужны всегда и везде. И в-третьих, обычно им платят больше, чем разработчикам.
Обязанности АБД
1.Установка и модернизация SQL Server
Администратор баз данных отвечает за установку и модернизацию существующей версии SQL Server. Если модернизируется SQL Server, то АБД отвечает за то, чтобы в случае неудачи можно было вернуться к прежней версии SQL Server и использовать ее, пока все проблемы не будут решены. АБД отвечает также за применение пакетов обновления SQL Server. Пакет обновления (service pack) - это не модернизация, а только установка текущей версии программного обеспечения, в которой исправлены разнообразные ошибки, найденные после выпуска продукта.
2.Наблюдение за состоянием сервера базы данных и его соответствующая настройка
Наблюдение за состоянием сервера базы данных необходимо для того, чтобы убедиться в следующем:
Сервер работает с оптимальной производительностью;
В журнале ошибок или журнале событий не зафиксированы ошибки в работе СУБД;
Обслуживание баз данных проводится повседневно, а всей системы в целом - периодически (последнее входит в обязанности системного администратора).
3.Правильное использование памяти
SQL Server 2000 позволяет автоматически увеличивать размеры баз данных и журналов транзакций, но вы можете установить для них фиксированные размеры. В любом случае правильное использование памяти означает, что вы должны знать, сколько памяти требуется, и по мере необходимости добавлять новые дисковые накопители (жесткие диски).
Резервное копирование и восстановление данных
Резервное копирование и восстановление данных - самые важные задачи АБД. Сюда входит следующее:
Разработка стандартов и графика резервного копирования;
Разработка процедур восстановления для каждой базы данных;
Проверка соответствия графика резервного копирования требованиям к восстановлению данных.
Управление пользователями базы данных и обеспечение безопасности
В SQL Server 2000 АБД тесно сотрудничает с администратором Windows NT/2000 в области присвоения пользователям прав доступа к базе данных. Когда дело не касается сферы влияния Windows NT/2000, АБД разрешает пользователям такой доступ сам. Он отвечает также за назначение пользователю той или иной базы данных и определение его прав доступа. В зависимости от этих прав, пользователь может (или не может) обращаться к различным объектам базы данных, например к таблицам, представлениям и хранимым процедурам.
Сотрудничество с разработчиками
Для АБД очень важно тесно сотрудничать с командой разработчиков в области общего проектирования базы данных. Сюда относится создание нормализованных баз данных, настройка, назначение правильных индексов, а также разработка триггеров и хранимых процедур. В среде SQL Server 2000 хороший АБД сможет подсказать разработчикам, как использовать преимущества мастера настройки индексов SQL Server (SQL Server Index Tuning Wizard) и профилировщика SQL Server (SQL Server Profiler).
Определение соглашений и стандартов
Администратор баз данных должен установить для SQL Server и баз данных соглашения по наименованию и стандарты, а также следить за тем, чтобы все пользователи их придерживались.
Перенос данных
Администратор баз данных отвечает за импорт и экспорт данных в SQL Server и из него. В настоящее время наметилась тенденция к уменьшению размеров систем клиент/сервер и их сочетанию с мэйнфреймами и Web-технологиями для создания систем управления предприятием (типа Enterprise). В таких условиях импорт данных из мэйнфрейма в SQL Server стал обычным делом; еще больше эта практика распространилась в связи с появлением служб преобразования данных (Data Transformation Services - DTS) SQL Server 2000. Хорошие администраторы, знающие DTS, в ближайшее время будут в большой цене, так как сейчас фирмы стремятся преобразовать устаревшие системы в системы типа Enterprise.
Репликация данных
В версии SQL Server 2000 появились новые возможности репликации, например репликация путем слияния (двусторонняя изолированная репликация). Управление репликацией и настройка ее топологий станет очень важной задачей АБД, так как репликация - это потрясающая возможность, которая будет играть важную роль в работе многих организаций.
Хранилище данных
В SQL Server 2000 добавились новые возможности складирования данных, для использования которых АБД придется изучить дополнительный продукт (Microsoft OLAP Server) и его архитектуру. С появлением этой возможности перед АБД встают новые интересные задачи!
Составление графика обработки событий
Администратор базы данных отвечает за составление графика обработки различных событий с помощью стандартных средств Windows NT/2000 и SQL Server. Это поможет успешно справляться с различными задачами, такими как создание резервных копий и процессов репликации.
Обеспечение круглосуточного доступа к данным
Сервер базы данных должен работать круглосуточно, обеспечивая доступ к базам данных. Будьте готовы через некоторое время выполнить необходимые операции по поддержке работоспособности СУБД и ее модернизации. Постарайтесь также выдержать этот ужасный сигнал пейджера. Если сервер базы данных "сляжет", вам придется "поднять" его и заставить работать. В конце концов, это ваша работа.
Как АБД взаимодействует с другими членами команды
АБД должен взаимодействовать с системным и сетевым администраторами, разработчиками и пользователями. Вообще говоря, эти взаимоотношения трудно определить однозначно, так как в каждой организации есть люди, занимающие сразу несколько должностей.
Системный и сетевой администраторы
Взаимодействие АБД с сетевым администратором касается, прежде всего, типов используемых сетевых протоколов и сетевого адреса или номера порта, который можно выбрать для сервера. Если пользователи жалуются на медленное выполнение запросов, в то время как SQL Server выполняет запросы очень быстро, то АБД вместе с сетевым администратором должны попытаться найти причину этих проблем, связанную с сетью.
Как правило, АБД более тесно взаимодействует с системным администратором, чем с сетевым. Системный администратор отвечает за настройку сервера Windows NT /2000, на котором работает SQL Server. В его обязанности входит также добавление накопителей на жестких дисках и выделение памяти, необходимой для размещения баз данных. Если вы собираетесь использовать интегрированную с SQL Server систему доступа пользователей, то должны вместе с системным администратором корректно определить учетные записи для пользователей и групп пользователей в Windows NT/2000. Различные типы процедур резервного копирования и восстановления данных для Windows NT/2000 Server и SQL Server должны быть проработаны обеими сторонами, так как системному администратору может понадобиться восстановить системный диск, на котором содержится база данных или ее резервная копия.
Разработчики
Различия между организациями больше всего отражаются на взаимодействии АБД с разработчиками. В одних организациях такое взаимодействие очень тесное, а в других - практически отсутствует; во втором случае АБД только безмолвно принимает все, что сделали разработчики, не делая никаких замечаний и не давая рекомендаций. Конечно, для получения оптимального результата АБД должен как можно более тес,но сотрудничать с разработчиками. В конце концов, именно он будет обслуживать базу данных и в большинстве случаев у него больше опыта разработки и настройки реляционных баз данных. Поэтому АБД должен принимать активное участие в разработке, давать советы, помогать и быть в курсе всех событий. Его помощь должна выражаться в правильном выборе индексов, оптимизации запросов и хранимых процедур, а также в предоставлении разработчикам необходимой информации.
Пользователи
В большинстве организаций взаимодействие АБД с пользователями ограничивается поддержкой их учетных записей, определением прав доступа и восстановлением баз данных.
SQL Server - это обладающая высокой производительностью СУБД, которая глубоко интегрирована с операционными системами Windows NT/2000 и Windows 9х/Ме, благодаря чему SQL Server может пользоваться всеми преимуществами функций, обеспечиваемыми этими операционными системами. SQL Server - мощная СУБД, в полной мере отвечающая потребностям современных сложных систем типа клиент/сервер.
Архитектура
Благодаря глубокой интеграции SQL Server с операционной системой, под управлением которой она работает, в вашем распоряжении имеются следующие важные возможности:
Симметричная мультипроцессорная обработка (Symmetric multiprocessing - SMP);
Переносимость – работа на многих ОС;
Сетевая независимость;
Надежность.
Симметричная мультипроцессорная обработка (SMP)
Использование SMP позволяет SQL Server повысить производительность с помощью дополнительных процессоров. SQL Server 2000 Enterprise Edition под управлением Windows 2000 Datacenter поддерживает до 32 процессоров и до 64 Гбайт оперативной памяти. SQL Server может автоматически запустить запрос для параллельного выполнения на двух или более процессорах. Все это происходит без вмешательства со стороны пользователя; администраторы также освобождаются от проблем с управлением несколькими процессорами.
В версии SQL Server для Windows 9x поддержка SMP не реализована.
Сетевая независимость
Операционные системы Windows NT/2000 и Windows 9x/Me поддерживают несколько различных типов сетевых протоколов. Этот уровень поддержки простирается вплоть до подключения клиентской части SQL Server. Таким образом, вы можете выбрать сетевой протокол, который будет наиболее полно отвечать вашим потребностям. В настоящее время поддерживаются следующие сетевые протоколы: TCP/IP, IPX/SPX, Named Pipes, AppleTalk и Banyan Vines.
Надежность
Windows NT/2000 и SQL Server обеспечивают надежную защиту данных от непредвиденного сбоя или отказа системы, динамическое управление памятью, предварительное составление графика выполнения задач и удаленное управление. Эти возможности позволяют поддерживать SQL Server в рабочем состоянии 24 часа в сутки и 7 дней в неделю.
Разработка стратегии и плана инсталляции
Разработка плана инсталляции начинается с анализа требований, вытекающих из характера деятельности предприятия, и пожеланий пользователей. Вы должны рассмотреть широкий круг вопросов, начиная с выбора и приобретения аппаратного обеспечения и заканчивая принятием решений по установке конкретных параметров SQL Server. Начните с рассмотрения системных требования и пожеланий пользователей. На основании этого изучите возможные конфигурации аппаратного обеспечения и параметры SQL Server. Затем составьте список параметров, чтобы пользоваться им во время инсталляции, и, наконец, установите SQL Server.
Этап 1. Определение системных требований и пожеланий пользователей
Как определить системные требования и узнать пожелания пользователей? Очень просто: задавайте вопросы и анализируйте ответы. Начните с пожеланий пользователей и требований, вытекающих из характера деятельности предприятия, и вы сможете решить, какое аппаратное обеспечение вам необходимо. Итак, для начала найдите ответы на следующие вопросы:
Каково назначение системы?
Какие требования предъявляются к СУБД?
Каковы пожелания пользователей и какие требования вытекают из характера деятельности предприятия?
Сколько это будет стоить?
Каково назначение системы
Первый вопрос, который вы должны себе задать: для чего предназначена система и сколько пользователей будут одновременно ее применять (например, система создается для одного отдела, состоящего из 10 пользователей, или для большого предприятия, на котором работают тысячи пользователей). Чем больше пользователей поддерживает система, тем выше требования к быстродействию, оперативной памяти и объему жестких дисков сервера. Компьютер предназначен исключительно для запуска SQL Server или он будет выполнять еще какие-либо функции (например, печать файлов)? Заменяет ли новая система старую в результате модернизации или изменения размера базы данных? Если это действительно замена старой системы, то у вас будет довольно много необходимой информации (например, текущая нагрузка системы и ее недостатки). Система является действующей или тестовой, находящейся на стадии разработки? Для действующего сервера необходимы более мощная защита от сбоев и более объемные жесткие диски, чем для сервера тестовой системы.
Каковы требования базы данных
Какие требования предъявляет к серверу база данных? Что SQL Server будет поддерживать в первую очередь: системы-принятия решения или системы выполнения транзакций? Насколько велика будет предполагаемая нагрузка при выполнении транзакций? Если система предназначена для выполнения транзакции, попробуйте определить предполагаемое количество транзакций в день и способ их обработки. Например, сервер может восемь часов простаивать, а затем в течение нескольких часов обрабатывать все транзакции либо равномерно обрабатывать транзакции целый день. Каков ожидаемый размер базы данных? Возможно, вы перемещаете базы данных из старой системы на SQL Server в результате модернизации или изменения их размера. Если это так, вы можете получить информацию о текущем и ожидаемом размерах базы данных и о текущей нагрузке транзакций на систему.
Каковы требования и нужды пользователей
Всегда очень важно понять, чего требуют и чего ожидают пользователи SQL Server. На какое время ответа со стороны системы рассчитывают пользователи? Сколько пользователей будет подключено к SQL Server одновременно? Какие требования к резервному копированию и объему памяти вытекают из характера деятельности предприятия? Какие требования к резервному копированию и объему памяти предъявляют пользователи? Когда вы узнаете нужды пользователей, постарайтесь определить, сможете ли вы создать систему, отвечающую этим нуждам. Возможно, вам придется опустить их с небес на землю, чтобы они осознали реальные возможности системы.
Сколько это будет стоить
Наверное, этот вопрос нужно ставить первым! В реальной жизни разница между той системой, которую вы хотите, и той, которую получаете, обусловлена только количеством средств, имеющихся в вашем распоряжении. Но можно утешиться тем, то цены на компьютеры постоянно снижаются и стоимость нужного вам сервера становится все более приемлемой.
Этап 2. Выбор платформы
Получив ответы на вопросы первого этапа, вы будете готовы к выбору платформы аппаратного обеспечения для SQL Server. Чтобы выбрать платформу, необходимо определиться по следующим четырем пунктам:
Аппаратное обеспечение (включая количество процессоров и необходимые периферийные устройства);
Объем оперативной памяти;
Емкость накопителей на жестких дисках;
Тип файловой системы.
Аппаратное обеспечение
При выборе платформы аппаратного обеспечения вы должны проверить, есть ли в списке совместимости аппаратного обеспечения для Windows NT/2000 марка и модель компьютера, который вы хотите использовать в качестве сервера. Приобретая компьютер, обязательно сообщите фирме-продавцу, что вы собираетесь использовать его в качестве сервера базы данных.
СОВЕТ Микрософт
Вы убережете себя от многих проблем, если будете использовать только те компьютеры, которые сертифицированы корпорацией Microsoft для работы с операционной системой Windows NT/2000.
Нужен ли мне компьютер с несколькими процессорами?
Система Windows NT способна поддерживать до четырех процессоров, a Windows 2000 - восемь. SQL Server может воспользоваться преимуществами такой многопроцессорной поддержки без каких-либо специальных дополнительных модулей или изменений конфигурации.
Оперативная память
Для SQL Server необходимо как минимум 32 Мбайт оперативной памяти для версий Personal и Desktop, и 64 Мбайт - для всех остальных версий В новой версии SQL Server вам больше не нужно вручную распределять оперативную память и указывать способ ее использования. SQL Server 2000 динамически регулирует используемый объем памяти в зависимости от текущих требований и состояния операционной системы компьютера, на котором он работает.
Независимо от начального объема памяти, спустя некоторое время вы сможете более точно определить, сколько памяти необходимо SQL Server для работы.
Накопители на жестких дисках
Вы должны принять еще одно важное решение: выбрать тип накопителей на жестких дисках и контроллеров к ним. Правильный выбор жестких дисков окажет существенное влияние на общую производительность SQL Server и на отказоустойчивость системы в целом.
Уделите особое внимание выбору типа накопителей на жестких дисках. Выполнение операций ввода-вывода - одно из узких мест всех СУБД
Такое же значение, как скорость жестких дисков, имеет и отказоустойчивость современных дисковых накопителей. Следует максимально защитить базу данных, обеспечив при этом оптимальную производительность. Один из возможных вариантов - использовать RAID-массивы (Redundant Array of Inexpensive Disks - избыточный массив недорогих дисков). В конфигурации RAID используется несколько дисков, составляющих одно логическое разделяемое устройство. Таким образом, логически RAID-массив представляет собой одно устройство, а физически это несколько жестких дисков, работающих под управлением соответствующего программного и аппаратного обеспечения. В RAID-конфигурациях файлы можно распределять по нескольким физическим устройствам, что позволяет достичь высокой производительности. Другим преимуществом RAID-массивов является их отказоустойчивость и способность к восстановлению данных. RAID-массив 5то уровня позволяет в случае отказа одного диска полностью восстановить содержащиеся на нем данные. При добавлении нового диска RAID-массив автоматически восстановит данные, которые были на потерянном устройстве, и поместит их на новый диск. RAID-массив 5-го уровня обеспечивает высокую степень защиты и оптимальную производительность базы данных. RAID-массивы можно создавать на основе аппаратного или программного обеспечения для системы Windows NT/2000. Как правило, RAID-массивы на основе аппаратного обеспечения более быстродействующие, чем массивы, построенные на основе программного обеспечения.
Файловая система
Какую файловую систему следует использовать, работая с Windows NT/2000,- NTFS (New Technology File System - система новой файловой технологии) или FAT (File Allocation Table- таблица размещения файлов)? Что касается производительности, то это не имеет никакого значения, поскольку разница в производительности для двух этих файловых систем совершенно незначительна. В целом NTFS быстрее выполняет операции чтения, a FAT - операции записи. Однако, применяя NTFS, вы можете воспользоваться преимуществами системы безопасности Windows NT/2000.
СОВЕТ
Для Windows NT/2000 я обычно рекомендую применять NTFS, чтобы воспользоваться преимуществами системы безопасности NT и ее средствами аудита.
Выбор платформы
Правильно выбранная платформа для SQL Server - это сервер, имеющий максимально возможную конфигурацию из тех, которые вы можете себе позволить, и обеспечивающий нормальную работу SQL Server! Хорошая конфигурация для SQL Server: компьютер с одним или несколькими процессорами, имеющий минимум 256 Мбайт оперативной памяти. Используйте для размещения баз данных RAID-массив 5-го уровня. Поместите журналы транзакций на RAID-массив 1-го уровня (с зеркальными дисками) с разделением данных, а операционную систему и SQL Server - на обычное дисковое устройство или RAID-массив 1-го уровня.
Этап 3. Важные вопросы, требующие ответа
Вам нужно твердо знать ответы на ряд вопросов.
Куда поместить файлы баз данных?
Как назвать экземпляр сервера?
Каков порядок сортировки и кодировки символов?
Какой сетевой протокол использовать?
Под какой учетной записью Windows NT/2000 нужно запускать службы SQL Server и SQL Server Agent?
Расположение файлов баз данных
Во время инсталляции вам нужно будет ответить, где следует установить системные базы данных SQL Server (т.е. указать устройство и путь). К системным базам данных от носятся следующие:
Master - база данных конфигурации SQL Server;
Mode1 - база, которая служит в качестве шаблона для создания других баз данных;
Tempdb - область временного хранения данных (временная база данных);
Msdb - база данных для хранения графика работ и база данных SQL Serve: Agent;
Northwind и Pubs - примеры баз данных.
Стандартное место расположения файлов данных- подкаталог Data корневого ка талога SQL Server. При инсталляции вы можете выбрать другое место расположена файлов или оставить стандартную установку. Выберите устройство, на котором достаточно места для дальнейшего расширения файлов баз данных.
Базы данных master msdb и model обычно увеличиваются не очень быстро (к ним добавляется всего не сколько мегабайтов в неделю). Но база данных tempdb- это совсем другое дело. SQL Server 2000 при необходимости автоматически увеличивает базу данных tempdb, если превышается ее предельный размер, заданный во время инсталляции. А когда SQL Server останавливают или перезапускают, tempdb автоматически возвращается к первоначальному размеру. Поэтому имеет смысл выбрать для базы данных tempdb устройство или RAID-массив, где достаточно места для ее расширения; это устройство должно также обеспечивать высокую производительность.
Имя экземпляра
SQL Server 2000 позволяет установить несколько экземпляров ядра базы данных SQL Server. Если устанавливается один экземпляр SQL Server, то по умолчанию его именем является имя компьютера. Если устанавливается много экземпляров, то каждому из них необходимо присвоить уникальное имя. Имена экземпляров не чувствительны к регистру, их длина не может превышать 16 символов. Первым символом имени должна быть буква, символ подчеркивания, символ номера или амперсант.
Параметры сортировки и кодировки символов
SQL Server 2000 не требует отдельного задания способов сортировки и набора символов для обычных данных и для символов Unicode. Выбор типа сортировки (идентифицируемый именем) задает правила упорядочения и сравнения как для обычных данных, так и для символов Unicode. Например, можно задать сравнение, нечувствительное к регистру символов, или сравнение двоичных эквивалентов символов. В параметры сортировки входят наборы символов, используемых данными. Символы Unicode имеют вдвое больший размер, чем символы ANSI. В ANSI используется 256 символов, а в Unicode - 65 356 символов. При установке SQL Server используются параметры сортировки и кодировки установленной операционной системы Windows и по умолчанию сервер самостоятельно настраивает все эти параметры. Рекомендуется придерживаться этой установки по умолчанию.
ВНИМАНИЕ!
Для изменения параметров сортировки и кодировки после инсталляции SQL Server ; нужно внести изменения в базу данных master и пользовательские базы данных.
Сетевые протоколы
Поскольку SQL Server может одновременно поддерживать несколько различных сетевых протоколов, то клиенты, использующие TCP/IP, могут подключаться к SQL Server одновременно с клиентами, использующими IPX/SPX. Во время инсталляции SQL Server устанавливаются различные сетевые библиотеки, предназначенные для обмена сетевыми сообщениями с другими серверами и клиентскими рабочими станциями. При инсталляции SQL Server 2000 по умолчанию устанавливается поддержка нескольких сетевых протоколов.
Существует 2 режима безопастности:
Режим аутентификации Windows NT . Использует преимущества системы безопасности Windows NT/2000, в которой задействуется механизм создания учетных записей на сервере NT. Данный режим требует установки доверительного соединения с сервером (trusted connection) и может быть реализован через протокол Named Pipes (именованный канал) или мультипротокол.
Смешанный режим. Позволяет пользователям подключиться к SQL Server с помощью режимов аутентификации Windows NT и SQL Server. В последнем случае пользователь, подключающийся к SQL Server, сообщает имя и пароль, который проверяется SQL Server по системной таблице. Пользователи, применяющие доверительные соединения, могут подключиться к SQL Server с помощью режима аутентификации Windows NT.
Протокол Named Pipes
Это стандартный протокол, устанавливаемый SQL Server. Он обеспечивает обмен сообщениями между процессами, происходящими на локальном сервере или на серверах в сети, и используется в сетях Windows NT.
Мультипротокол
Мультипротокол использует для передачи сообщений механизм вызова удаленной процедуры (Remote Procedure Call - RPC) Windows NT и не требует никакой дополнительной настройки. В настоящее время мультипротокол поддерживает протоколы NWLink IPX/SPX, TCP/IP и Named Pipes. Он позволяет пользователям протоколов IPX/SPX и TCP/IP применять преимущества аутентификации пользователей Windows NT.
Протокол NWLink IPX/SPX
Это известный сетевой протокол для сетей Novell. Если во время инсталляции SQL Server вы выберете именно его, то вас попросят указать имя сервисной службы Novell Bindery, чтобы зарегистрировать SQL Server.
протокол TCP/IP
Это популярный протокол, использующийся в Internet. Если вы выберете TCP/IP, то вас попросят указать номер порта TCP/IP для SQL Server, который будет использоваться для соединений с клиентами. Стандартный номер порта для SQL Server - 1433.
И еще несколько других.
А дминистрирование базы данных – это функция управления базой данных (БД). Лицо ответственное за администрирование БД называется “Администратор базы данных” (АБД) или “Database Administrator” (DBA).
Функция “администрирования данных” стала активно рассматриваться и определяться как вполне самостоятельная с конца 60-х годов. Практическое значение это имело для предприятий, использующих вычислительную технику в системах информационного обеспечения для своей ежедневной деятельности. Специализация этой функции с течением времени совершенствовалась, но качественные изменения в этой области стали происходить с началом использования так называемых интегрированных баз данных. Одна такая база данных могла использоваться для решения многих задач.
Таким образом, сформировалось определение БД как общего информационного ресурса предприятия, которое должно находиться всегда в работоспособном состоянии. И как для каждого общего ресурса значительной важности, БД стала требовать отдельного управления. Во многих случаях это было необходимо для обеспечения её повседневной эксплуатации, её развития в соответствии с растущими потребностями предприятия. К тому же БД и технология её разработки постоянно совершенствовались и уже требовались специальные знания высокого уровня для довольно сложного объекта, которым стала база данных. Отсюда функция управления базой данных и получила название “Администрирование базы данных”, а лицо ею управляющее стали называть “Администратор баз данных”.
Администратор базы данных (АБД) или Database Administrator (DBA) – это лицо, отвечающее за выработку требований к базе данных, её проектирование, реализацию, эффективное использование и сопровождение, включая управление учётными записями пользователей БД и защиту от несанкционированного доступа. Не менее важной функцией администратора БД является поддержка целостности базы данных.
АБД имеет код специальности по общероссийскому классификатору профессий рабочих, должностей служащих и тарифных разрядов (ОКПДТР) - 40064 и код 2139 по Общероссийскому классификатору занятий (ОКЗ). Код 2139 ОКЗ расшифровывается следующим образом: 2 - СПЕЦИАЛИСТЫ ВЫСШЕГО УРОВНЯ КВАЛИФИКАЦИИ, 21 - Специалисты в области естественных* и инженерных наук, 213 - Специалисты по компьютерам, 2139 - Специалисты по компьютерам, не вошедшие в другие группы.
Классические подходы к наполнению содержанием понятия "АБД" стали формироваться после издания рабочего отчета группы по базам данных Американского Национального Института Стандартов ANSI/X3/SPARC в 1975 года. В этом отчете была описана трехуровневая архитектура СУБД, в которой выделялся уровень внешних схем данных, уровень концептуальной схемы данных и уровень схемы физического хранения данных. В соответствии с этой архитектурой определялись три роли АБД: администратор концептуальной схемы, администратор внешних схем и администратор хранения данных. Эти роли в случае очень маленькой системы мог играть один человек, в большой системе для выполнения каждой роли могла назначаться группа людей. Каждой роли соответствовал набор функций, а все эти функции вместе составляли функции АБД.
В 1980 - 1981 г. в американской литературе стало принятым включать в функции АБД:
В нашей стране в это же время первое определение АБД в ГОСТ-ах задало слишком узкий состав функций АБД:
Предполагалось, что функции АБД будут ориентированы только на эксплуатацию БД, а её разработка будет вестись силами специализированной организации.
К середине 90-х годов сложились еще не завершенные, но уже достаточно устойчивые и полные методологии разработки систем с базами данных. Основная работа по планированию информационных потребностей предприятия, проектированию концептуальной и логической схемы БД, внешних схем, используемых в отдельных процессах обработки информации, ложится теперь на группу проектирования Автоматизированной Системы (АС). Становиться и более определённым объем функций АБД. Это обеспечение надежной и эффективной работы пользователей и программ с БД, поддержка разработчиков в их доступе к БД и средствам разработки.
Задачи АБД могут незначительно отличаться в зависимости от вида применяемой СУБД, но в основные задачи входит:
Среди АБД нет строгого документального разграничения по типам. Но можно выделить несколько общих видов АБД, в зависимости от возложенных на них обязанностей:
Как таковой официальной версии должностной инструкции администратора базы данных не существует. Имеется несколько документов, различающихся в основном оформлением и содержанием некоторых пунктов. Естественно, ни о какой подробной расшифровке задач администратора базы данных в этих документах речи не идёт. Должностная инструкция - это, прежде всего документ, регламентирующий производственные полномочия и обязанности работника. И хотя в некоторых организациях изменяют текст должностной инструкции в соответствии с условиями специфики работы, не стоит ожидать в ней прямых указаний на то, что надо делать администратору. В большинстве случаев такие детальные директивы работы регламентируются другими документами (например, инструкция по резервному копированию, инструкция по обеспечению информационной безопасности при работе с базами данных).
Ниже приведены несколько типовых вариантов должностных инструкций найденных в интернете:
Оплата труда администраторов баз данных может варьироваться от $1500 до $3000. Наибольшим спросом пользуются администраторы MS SQL или Oracle. Исследовательский центр портала Superjob.ru провёл в 2008 году обзор зарплат по позиции «Администратор баз данных Oracle» в 9 городах России. По этим данным средняя зарплата московских специалистов составляет 70000 руб. в месяц, в Санкт-Петербурге 55000 руб., в Ростове-на-Дону и Самаре 34000 руб. По диапазонам зарплат администраторы Oracle делятся на три уровня. От того в какой уровень попадёт администратор влияет знание серверного оборудования, кластерных технологий, операционных систем, стаж работы, высшее образование, владение английским языком, наличие квалификационных сертификатов и свидетельств об окончании курсов Oracle.