Понятие и функции администрирования баз данных. Администратор баз данных. Непосредственное управление данными во внешней памяти

Цели администрирования и его актуальность для современных баз данных.

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

Необходимость персонала, обеспечивающего администрирование данными в системе БД в процессе функционирования, является следствием централизованного характера управления данными в таких системах, постоянно требующего поиска компромисса между противоречивыми требованиями к системе в социальной пользовательской среде. Хотя такая необходимость и признавалась на ранних стадиях развития технологии баз данных, четкое понимание и структуризация функций персонала, занятого администрированием, сложилось только вместе с признанием многоуровневой архитектуры СУБД (ANSI/X3/SPARC в 1975г.).

Должностная инструкция.

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

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

Администратор БД должен уметь определять узкие места системы, ограничивающие ее производительность, настраивать SQL и программное обеспечение СУБД и обладать знаниями, необходимыми для решения вопросов оптимизации быстродействия БД.

Администратор баз данных: классические подходы .

Предполагается, что персонал администрирования данными в системе баз данных функционально состоит из нескольких лиц. В простейших случаях, что более характерно при работе с базами данных на PC - ориентированных ЭВМ, одно лицо может совмещать функции и пользователя, и персонала администрирования данными.

Первая группа называется администратором предметной области (администратор концептуальной схемы) . Она несет ответственность за представление базы данных на концептуальном уровне архитектуры СУБД, общее для всех приложений рассматриваемой базы данных, за адекватное отображение в концептуальной схеме базы данных тех изменений, которые происходят в предметной области. Администратор предметной области должен обеспечить с этой целью реструктуризацию базы данных - изменение концептуальной схемы базы данных.

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

Третья группа - администратор приложений (администратор внешних схем) - обеспечивает поддержку базы данных для различных групп пользователей механизма внешнего уровня архитектуры СУБД. Она несет ответственность за всю совокупность внешних схем базы данных.

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

Может быть дана другая классификация групп администрирования - источник – журнал Oracle Professional, October 2001; см. Приложение 1.

Процедура администрирования .

Администрирование баз данных предполагает обслуживание пользователей базы данных. Можно провести аналогию между администратором баз данных и ревизором предприятия. Ревизор защищает ресурсы предприятия, которые называются деньгами, а администратор - ресурсы, которые называются данными. Нельзя рассматривать администратора баз данных только как квалифицированного технического специалиста, так как это не соответствует целям администрирования. Уровень администратора баз данных в иерархии организации достаточно высок:, чтобы определять структуру данных и право доступа к ним. Администратор должен знать как работает предприятие и как используются соответствующие данные; важным является не только техническая компетентность, но и понимание предметной области, а также умение общаться с людьми.

Администратор базы данных (АБД) должен координировать действия по сбору сведений, проектированию и эксплуатации базы данных, а также по обеспечению защиты данных. Он обязан учитывать текущие и перспективные информационные требования предметной области, что является одной из главных задач.

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

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

Таким образом, можно сделать определенные обобщения.

Администратор базы данных - это:

· управляющий данными, а не хозяин;

· системный программист определенного профиля, а также эксперт высшего уровня, обеспечивающий службу эксплуатации решениями по процедурам и регламентам работы;

· лицо, принимающее окончательное решение в своей области, и человек, обладающий способностями к общению, совместному планированию и компромиссам.

Надежность и достоверность - это ключевые понятия в деятельности администратора базы данных. Он должен уметь вести тщательное документирование всех действий по управлению базой данных .

Набор функций администратора баз данных.

1. Консультирование аналитиков и программистов по особенностям используемой вервии СУБД и инструментов разработки, участие - совместно с аналитиками по проектированию базы данных - в логическом проектировании в том случае, если когда полезно учитывать специфические для СУБД или режима обработки данных рекомендации по проектированию базы данных.

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

3. Ведение словаря-справочника.

4. Сбор и анализ статистики функционирования базы данных, ее настройка для эффективной обработки данных и обслуживания пользователей.

5. Управление представлением БД в среде хранения.

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

6. Реорганизация (реструктуризация) БД

· Логическая реструктуризация - модификация концептуальной схемы с последующим приведением БД в соответствие с вновь сформированной схемой.

7. Контроль целостности и восстановление базы данных.

· Поддержка логической целостности (непротиворечивости) БД обеспечивается через объявление ограничений целостности модели в схеме БД, проверку при каждом обновлении данных или связей между ними. Для многих СУБД ограничения целостности поддерживаются только на уровне ввода данных в базу данных и ассоциируются с использованием экранных форм.

· Проблема физической целостности БД возникает в связи с ее возможным разрушением в результате сбоев и отказов оборудования вычислительной системы. Развитые СУБД располагают средствами восстановления разрушенной БД, основанными на использовании ее контрольной копии и журнализации изменений.

8. Подключение новых разработчиков и пользователей, приписывание им паролей, привилегий доступа к конкретным данным.

9. Контроль роста СУБД; определение целесообразности модернизации оборудования.

10. Конвертирование данных и прикладных программ.

Инструментальные средства для АБД

Для поддержания функций администрирования данными СУБД предусматривает специальный инструментарий, организованный, как правило, в виде различного рода служебных программ - утилит. Потребности администратора зависят от его обязанностей и квалификации.

1. Профилактический монитор:

· избавляет администратора от экстренных мер;

· разгружает администратора по вечерам и выходным;

· ускоряет приобретение опыта.

1. Средства диагностики:

· превращают младшего АБД в старшего, позволяя последнему сконцентрироваться на других задачах.

2. Средства анализа:

· помогают при планировании роста БД и будущих затрат.

3. Средства технического обслуживания:

· помогают при резервном копировании и восстановлении данных, сокращая время операции и уменьшая число ошибок;

· помогают при реорганизациях, экономя время, уменьшая количество ошибок и длительность профилактических окон;

· способствуют высокой доступности данных, создавая “незаметные ” с точки зрения системы профилактические окна и помогая при резервировании / восстановлении системы.

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

Приложение 1

Классификация АБД

Существует несколько видов администраторов БД, а их обязанности вполне могут отличаться от компании к компании. Вот характеристики некоторых типов АБД и занимаемых ими положений:

1. Оперативные (operational) АБД:

· манипулируют дисковым пространством

· наблюдают за текущей производительностью системы

· реагируют на возникающие неисправности БД

· обновляют системное ПО и ПО базы данных

· контролируют структурные изменения БД

· запускают процедуры резервного копирования данных

· выполняют восстановление данных

· создают и управляют тестовыми конфигурациями БД

2. Тактические (tactical) АБД:

· реализуют схемы размещения информации

· утверждают процедуры резервного копирования и восстановления данных

· разрабатывают и внедряют структурные элементы БД: таблицы, столбцы, размеры объектов, индексацию и т. п.; сценарии(scripts) изменения схемы БД; конфигурационные параметры БД

· утверждают план действий в случае аварийной ситуации

3. Стратегические (strategic) АБД:

· выбирают поставщика БД

· устанавливают корпоративные стандарты данных

· внедряют методы обмена данных в рамках предприятия

· определяют корпоративную стратегию резервирования и восстановления данных

· устанавливают корпоративный подход к ликвидации последствий аварии и обеспечению доступности данных

4. Старшие (senior) АБД:

· досконально знают свой персонал

· пользуются высоким спросом

· могут написать скрипт, который освободит их из запертого сундука, брошенного в океан, и чрезвычайно гордятся своими произведениями

· тратят уйму времени на подготовку младших АБД

· очень ценятся руководством и получают бешеные деньги

5. Младшие (junior) АБД :

· мечтают стать старшим АБД

· не слишком сильны в написании скриптов

· имеют большую склонность к использованию средств управления БД

· тоже неплохо получают

6. Прикладные (application) АБД :

· в курсе информационных нужд компании

· помогают в разработке прикладных задач

· отвечают за разработку схемы и ее изменения

· вместе с системным АБД обеспечивают должный уровень резервирования/ восстановления данных

· занимаются построением тестовых БД

7. Системные (system) АБД:

· отвечают за все необходимое для резервирования и восстановления данных

· контролируют производительность системы в целом

· осуществляют поиск и устранение неисправностей

· в курсе нынешних и будущих потребностей БД в плане емкости

· в курсе текущего состояния и нужд БД

8. Наемные (contract) АБД :

· приглашаются под конкретную задачу или в качестве консультантов

· передают персоналу необходимые знания

· фиксируют свои действия!

· должны прекрасно разбираться в соответствующей области

· хороши в качестве временного персонала, для оценки проекта или системы

9. Администраторы-руководители:

· проводят еженедельные совещания

· определяют перечень первоочередных задач

· устанавливают и оглашают официальный курс и стратегию

· утверждают и корректируют должностные инструкции и список обязанностей

· следят за наличием соответствующей документации

Приложение 2

Администрирование СУБД для бизнес-руководителей

На сайте IBM alphaWorks, посредством которого корпорация знакомит желающих со своими программными технологиями, находящимися в стадии разработки, размещена в свободном доступе ознакомительная версия системы Policy-based Data Management Tool. По словам представителя IBM India Research Lab, инструментарий даст возможность "бизнес-руководителям, ответственным за внутреннюю политику на предприятии, самостоятельно вносить необходимые изменения в соответствующие базы данных". В частности, система позволяет создавать и модифицировать бизнес-правила, регулирующие сохранение бухгалтерских и иных записей компании. Политики и бизнес-объекты (типа "крупный клиент", "данные по кредитным картам " и т. п.) создаются при помощи упрощенного графического интерфейса. Поддерживаются возможности архивации, удаления данных, рассылки уведомлений. Примером правила, которое можно создать при помощи системы, может послужить, например, автоматическое уведомление управляющего подразделением в случае ухода дорогостоящего клиента. Распознаются конфликтующие правила. Инструментарий рассчитан на DB2, но сможет работать также с Oracle и SQL Server после "несложной модификации".

Введение………………………………………… ……………………………. 3
1 Администратор базы данных – основные понятия……………………… 5
    1.1 История, понятие, основные типы администратора базы данных…… 5
    1.2 Задачи администратора базы данных…………………………………... 7
1.3 Обязанности администратора современных систем управления
базами данных……………………………………………………………… … 8
    2 Администрирование базы данных……………………………………….. 12
2.1 Управление данными в базах данных…………………………………... 12
2.1.1 Непосредственное управление данными во внешней памяти……….. 12
2.1.2 Управление буферами оперативной памяти………………………….. 12
2.1.3 Управление транзакциями………………… …………………………... 13
2.1.4 Журнализация……………………………………………… …………... 14
2.1.5 Поддержка языков БД ………………………… ………………………. 17
2.2 Управление безопасностью в СУБД…………………………………….. 18
Заключение…………………………………… ………………………………. 28
Глоссарий……………………………………… ……………………………… 30
Список использованных источников …………………………………….…. 32
Приложения…………………………………… ……………………………… 33

Введение

Современные базы данных – это сложные многофункциональные программные системы, работающие в открытой распределенной среде. Они уже сегодня доступны для использования в деловой сфере и выступают не просто в качестве технических и научных решений, но как завершенные продукты, предоставляющие разработчикам мощные средства управления данными и богатый инструментарий для создания прикладных программ и систем.
Администрирование базами данных предусматривает выполнение функций, направленных на обеспечение надежного и эффективного функционирования системы баз данных, адекватности содержания базы данных информационным потребностям пользователей, отображения в базе данных актуального состояния предметной области.
Необходимость персонала, обеспечивающего администрирование данными в системе БД в процессе функционирования, является следствием централизованного характера управления данными в таких системах, постоянно требующего поиска компромисса между противоречивыми требованиями к системе в социальной пользовательской среде. Хотя такая необходимость и признавалась на ранних стадиях развития технологии баз данных, четкое понимание и структуризация функций персонала, занятого администрированием, сложилось только вместе с признанием многоуровневой архитектуры СУБД.
Проблема исследования «Администрирование базы данных» заключается в возможности дать исчерпывающие ответы на поставленные вопросы: что представляет собой администрирование базы данных, в чем заключаются его основные функции и задачи, его значение для стабильной и эффективной работы базы данных.
Актуальность исследования «Администрирование базы данных» несомненна. Проблеме администрирования баз данных внимание уделяется сравнительно недавно – с появлением и развитием современных баз данных. Однако в связи с тем, что совершенствование баз данных и систем управления данных – явление постоянное и непрерывное, проблема остается достаточно актуальной, следовательно, требует дополнительных исследований в данной области компьютерных технологий.
Цель исследования заключается в изучении администрирования базы данных.
Задачи исследования формируются исходя из его цели и заключаются в следующем:
1. Рассмотреть понятие, классификацию и функции администратора базы данных.
2. Рассмотреть обязанности, связи и средства администратора современных систем управления базами данных.
3. Изучить основные направления и принципы администрирования базы данных.
Данное исследование проведено с использованием теоретических положений, раскрывающих основные характеристики и элементы исследуемого явления.
Практическая значимость исследования заключается в его возможном использовании при изучении информационных технологий в высших учебных заведениях.

Основная часть

1 Администратор базы данных – основные понятия

      История, понятие, основные типы администратора базы данных
Классические подходы к наполнению содержанием понятия "АБД" стали формироваться после издания рабочего отчета группы по базам данных Американского Национального Института Стандартов ANSI/X3/SPARC в 1975 года. В этом отчете была описана трехуровневая архитектура СУБД, в которой выделялся уровень внешних схем данных, уровень концептуальной схемы данных и уровень схемы физического хранения данных. В соответствии с этой архитектурой определялись три роли АБД: администратор концептуальной схемы, администратор внешних схем и администратор хранения данных. Эти роли в случае очень маленькой системы мог играть один человек, в большой системе для выполнения каждой роли могла назначаться группа людей. Каждой роли соответствовал набор функций, а все эти функции вместе составляли функции АБД.
В 1980 - 1981 г. в американской литературе стало принятым включать в функции АБД:
    организационное и техническое планирование БД,
    проектирование БД,
    обеспечение поддержки разработок прикладных программ,
    управление эксплуатацией БД.
В нашей стране в это же время первое определение АБД в ГОСТ-ах задало слишком узкий состав функций АБД:
    подготовка вычислительного комплекса к установке СУБД, участие в установке и приемке СУБД и самой БД с комплексом прикладных программ,
    управление эксплуатацией БД,
    подготовка словарей и другой НСИ - нормативно-справочной информации - к моменту начала испытания БД.
Предполагалось, что функции АБД будут ориентированы только на эксплуатацию БД, а её разработка будет вестись силами специализированной организации.
К середине 90-х годов сложились еще не завершенные, но уже достаточно устойчивые и полные методологии разработки систем с базами данных. Основная работа по планированию информационных потребностей предприятия, проектированию концептуальной и логической схемы БД, внешних схем, используемых в отдельных процессах обработки информации, ложится теперь на группу проектирования Автоматизированной Системы (АС). Становиться и более определённым объем функций АБД. Это обеспечение надежной и эффективной работы пользователей и программ с БД, поддержка разработчиков в их доступе к БД и средствам разработки.
Администратор базы данных (АБД) или Database Administrator (DBA) – это лицо, отвечающее за выработку требований к базе данных, её проектирование, реализацию, эффективное использование и сопровождение, включая управление учётными записями пользователей БД и защиту от несанкционированного доступа. Не менее важной функцией администратора БД является поддержка целостности базы данных.
В зависимости от сложности и объема банка данных, от особенностей используемой системы управления базы данных (СУБД), общую схему которой можно увидеть на рисунке (см. Приложение Б) служба администрации базы данных может различаться как по составу и квалификации специалистов, так и по количеству работающих в этой службе.
Администратор базы данных выполняют работы по созданию и обеспечению функционирования БД на протяжении всех этапов жизненного цикла системы. В составе группы администраторов банка данных можно выделить различные подгруппы в зависимости от выполняемых ими функций. Численность группы администрации, выполняемые ими функции, будут в значительной степени зависеть от масштаба банка данных, специфики хранимой в нем информации, типа банка данных, особенностей используемых программных средств и некоторых других факторов.
В составе администрации базы данных должны быть системные аналитики, проектировщики структур данных и внешнего по отношению к банку данных информационного обеспечения, проектировщики технологических процессов обработки данных, системные и прикладные программисты, операторы, специалисты по техническому обслуживанию. Если речь идет о коммерческом банке данных, то важную роль здесь будут играть специалисты по маркетингу.
Среди АБД нет строгого документального разграничения по типам. Но можно выделить несколько общих видов АБД, в зависимости от возложенных на них обязанностей:
    Системный администратор.
    Архитектор БД.
    Аналитик БД.
    Разработчик моделей данных.
    Администратор приложении.
    Проблемно-ориентированный администратор БД.
    Аналитик производительности.
    Администратор хранилища данных.
      Задачи администратора базы данных
Задачи администратора базы данных (АБД) могут незначительно отличаться в зависимости от вида применяемой системы управления базы данных (СУБД), но в основные задачи входит:
    Проектирование базы данных.
    Оптимизация производительности базы данных.
    Обеспечение и контроль доступа к базе данных.
    Обеспечение безопасности в базе данных.
    Резервирование и восстановление базы данных.
    Обеспечение целостности баз данных.
    Обеспечение перехода на новую версию СУБД.
      Обязанности администратора современных систем управления базами данных
Поскольку система баз данных может быть весьма большой и может иметь много пользователей, должно существовать лицо или группа лиц, управляющих этой системой. Такое лицо называется администратором базы данных (АБД).
В любой базе данных должен быть хотя бы один человек, выполняющий административные обязанности; если база данных большая, эти обязанности могут быть распределены между несколькими администраторами.
В обязанности администратора могут входить:
- инсталляция и обновление версий сервера и прикладных инструментов;
- распределение дисковой памяти и планирование будущих требований системы к памяти;
- создание первичных структур памяти в базе данных (табличных пространств) по мере проектирования приложений разработчиками приложений;
- создание первичных объектов (таблиц, представлений, индексов) по мере проектирования приложений разработчиками;
- модификация структуры базы данных в соответствии с потребностями приложений;
- зачисление пользователей и поддержание защиты системы;
- соблюдение лицензионного соглашения;
- управление и отслеживание доступа пользователей к базе данных;
- отслеживание и оптимизация производительности базы данных;
- планирование резервного копирования и восстановления;
- поддержание архивных данных на устройствах хранения информации;
- осуществление резервного копирования и восстановления;
- обращение в корпорацию за техническим сопровождением.
В некоторых случаях база данных должна также иметь одного или нескольких сотрудников службы безопасности. Сотрудник службы безопасности главным образом отвечает за регистрацию новых пользователей, управление и отслеживание доступа пользователей к базе данных, и защиту базы данных.
Разработчики приложений.
В обязанности разработчика приложений входит:
      проектирование и разработка приложений базы данных;
    проектирование структуры базы данных в соответствии с требованиями приложений;
    оценка требований памяти для приложения;
    формулирование модификаций структуры базы данных для приложения;
    передача вышеупомянутой информации администратору базы данных;
    настройка приложения в процессе его разработки;
    установка мер по защите приложения в процессе его разработки.
В процессе своей деятельности администратор базы данных взаимодействует с другими категориями пользователей банка данных, а также и с «внешними» специалистами, не являющимися пользователями базы данных.
Прежде всего, если банк данных создается для информационного обслуживания какого-либо предприятия или организации, то необходимы контакты с администрацией этой организации. Как указывалось выше, внедрение БД приводит к большим изменениям не только системы обработки данных, но и всей системы управления организацией. Естественно, что такие большие проекты не могут быть выполнены без активного участия и поддержки руководителей организации. Руководство организации должно быть ознакомлено с возможностями, предоставляемыми базой данных, проинформировано об их преимуществах и недостатках, а также проблемах, вызываемых созданием и функционированием базы данных.
Так как базы данных является динамическим информационным отображением предметной области, то желательно, чтобы администратор базы данных в свою очередь был своевременно информирован о перспективах развития объекта, для которого создается информационная система.
Руководством организации и администратором базы данных должны быть согласованы цели, основные направления и сроки создания БД и его развития, очередность подключения пользователей.
Очень тесная связь у АБД на всех этапах жизненного цикла базы данных наблюдается с конечными пользователями. Это взаимодействие начинается на начальных стадиях проектирования системы, когда изучаются потребности пользователей, уточняются особенности предметной области, и постоянно поддерживается как на протяжении процесса проектирования, так и функционирования системы.
Следует отметить, что в последнее время наблюдается активное перераспределение функций между конечными пользователями и администраторами банка данных. Это, прежде всего, связано с развитием языковых и программных средств, ориентированных на конечных пользователей. Сюда относятся простые и одновременно мощные языки запросов, а также средства автоматизации проектирования.
Если банк данных функционирует в составе какой-либо включающей его автоматизированной информационной системы (например, в АСУ), то АБД должен работать в контакте со специалистами по обработке данных в этой системе.
Администраторы базы данных взаимодействуют и с внешними по отношению к нему группами специалистов и, прежде всего, поставщиками СУБД и ППП (пакеты прикладных программ), администраторами других баз данных.
Базы данных часто создаются специализированными проектными коллективами на основе договора на разработку информационной системы в целом или базой данных как самостоятельного объекта проектирования. В этом случае служба администрации базы данных должна создаваться как в организации-разработчике, так и в организации-заказчике.
На эффективность работы базы данных оказывают влияние множество внешних и внутренних факторов. Возрастание сложности и масштабов базы данных, высокая «цена» неправильных или запоздалых решений по администрированию БД, высокие требования к квалификации специалистов делают актуальной задачу использования развитых средствах автоматизированного (или даже автоматического) администрирования базы данных.
Средства администрирования включены в состав всех СУБД. Особенно развиты эти средства в корпоративных СУБД. Кроме того, появился целый класс специализированного программного обеспечения: средства DBA (DataBase Administration – администрирование базы данных).
Типичные функции средств DBA представлены в Приложении см. приложение А.

2 Администрирование базы данных

2.1 Управление данными в базах данных
2.1.1 Непосредственное управление данными во внешней памяти
Эта функция включает обеспечение необходимых структур внешней памяти как для хранения данных, непосредственно входящих в БД, так и для служебных целей, например, для убыстрения доступа к данным в некоторых случаях (обычно для этого используются индексы). В некоторых реализациях СУБД активно используются возможности существующих файловых систем, в других работа производится вплоть до уровня устройств внешней памяти. Но подчеркнем, что в развитых СУБД пользователи в любом случае не обязаны знать, использует ли СУБД файловую систему, и если использует, то как организованы файлы. В частности, СУБД поддерживает собственную систему именования объектов БД.
    2.1.2 Управление буферами оперативной памяти
СУБД обычно работают с БД значительного размера; по крайней мере этот размер обычно существенно больше доступного объема оперативной памяти. Понятно, что если при обращении к любому элементу данных будет производиться обмен с внешней памятью, то вся система будет работать со скоростью устройства внешней памяти. Практически единственным способом реального увеличения этой скорости является буферизация данных в оперативной памяти. При этом, даже если операционная система производит общесистемную буферизацию (как в случае ОС UNIX), этого недостаточно для целей СУБД, которая располагает гораздо большей информацией о полезности буферизации той или иной части БД. Поэтому в развитых СУБД поддерживается собственный набор буферов оперативной памяти с собственной дисциплиной замены буферов.
Заметим, что существует отдельное направление СУБД, которое ориентировано на постоянное присутствие в оперативной памяти всей БД. Это направление основывается на предположении, что в будущем объем оперативной памяти компьютеров будет настолько велик, что позволит не беспокоиться о буферизации. Пока эти работы находятся в стадии исследований.
2.1.3 Управление транзакциями
Транзакция - это последовательность операций над БД, рассматриваемых СУБД как единое целое. Либо транзакция успешно выполняется, и СУБД фиксирует (COMMIT) изменения БД, произведенные этой транзакцией, во внешней памяти, либо ни одно из этих изменений никак не отражается на состоянии БД. Понятие транзакции необходимо для поддержания логической целостности БД. Если вспомнить наш пример информационной системы с файлами СОТРУДНИКИ и ОТДЕЛЫ, то единственным способом не нарушить целостность БД при выполнении операции приема на работу нового сотрудника является объединение элементарных операций над файлами СОТРУДНИКИ и ОТДЕЛЫ в одну транзакцию. Таким образом, поддержание механизма транзакций является обязательным условием даже однопользовательских СУБД (если, конечно, такая система заслуживает названия СУБД). Но понятие транзакции гораздо более важно в многопользовательских СУБД.
То свойство, что каждая транзакция начинается при целостном состоянии БД и оставляет это состояние целостным после своего завершения, делает очень удобным использование понятия транзакции как единицы активности пользователя по отношению к БД. При соответствующем управлении параллельно выполняющимися транзакциями со стороны СУБД каждый из пользователей может в принципе ощущать себя единственным пользователем СУБД (на самом деле, это несколько идеализированное представление, поскольку в некоторых случаях пользователи многопользовательских СУБД могут ощутить присутствие своих коллег).
С управлением транзакциями в многопользовательской СУБД связаны важные понятия сериализации транзакций и сериального плана выполнения смеси транзакций. Под сериализацией параллельно выполняющихся транзакций понимается такой порядок планирования их работы, при котором суммарный эффект смеси транзакций эквивалентен эффекту их некоторого последовательного выполнения. Сериальный план выполнения смеси транзакций - это такой план, который приводит к сериализации транзакций. Понятно, что если удается добиться действительно сериального выполнения смеси транзакций, то для каждого пользователя, по инициативе которого образована транзакция, присутствие других транзакций будет незаметно (если не считать некоторого замедления работы по сравнению с однопользовательским режимом).
Существует несколько базовых алгоритмов сериализации транзакций. В централизованных СУБД наиболее распространены алгоритмы, основанные на синхронизационных захватах объектов БД. При использовании любого алгоритма сериализации возможны ситуации конфликтов между двумя или более транзакциями по доступу к объектам БД. В этом случае для поддержания сериализации необходимо выполнить откат (ликвидировать все изменения, произведенные в БД) одной или более транзакций. Это один из случаев, когда пользователь многопользовательской СУБД может реально (и достаточно неприятно) ощутить присутствие в системе транзакций других пользователей.
2.1.4 Журнализация
Одним из основных требований к СУБД является надежность хранения данных во внешней памяти. Под надежностью хранения понимается то, что СУБД должна быть в состоянии восстановить последнее согласованное состояние БД после любого аппаратного или программного сбоя. Обычно рассматриваются два возможных вида аппаратных сбоев: так называемые мягкие сбои, которые можно трактовать как внезапную остановку работы компьютера (например, аварийное выключение питания), и жесткие сбои, характеризуемые потерей информации на носителях внешней памяти. Примерами программных сбоев могут быть: аварийное завершение работы СУБД (по причине ошибки в программе или в результате некоторого аппаратного сбоя) или аварийное завершение пользовательской программы, в результате чего некоторая транзакция остается незавершенной. Первую ситуацию можно рассматривать как особый вид мягкого аппаратного сбоя; при возникновении последней требуется ликвидировать последствия только одной транзакции.
Понятно, что в любом случае для восстановления БД нужно располагать некоторой дополнительной информацией. Другими словами, поддержание надежности хранения данных в БД требует избыточности хранения данных, причем та часть данных, которая используется для восстановления, должна храниться особо надежно. Наиболее распространенным методом поддержания такой избыточной информации является ведение журнала изменений БД.
Журнал - это особая часть БД, недоступная пользователям СУБД и поддерживаемая с особой тщательностью (иногда поддерживаются две копии журнала, располагаемые на разных физических дисках), в которую поступают записи обо всех изменениях основной части БД. В разных СУБД изменения БД журнализуются на разных уровнях: иногда запись в журнале соответствует некоторой логической операции изменения БД (например, операции удаления строки из таблицы реляционной БД), иногда - минимальной внутренней операции модификации страницы внешней памяти; в некоторых системах одновременно используются оба подхода.
Во всех случаях придерживаются стратегии "упреждающей" записи в журнал (так называемого протокола Write Ahead Log - WAL). Грубо говоря, эта стратегия заключается в том, что запись об изменении любого объекта БД должна попасть во внешнюю память журнала раньше, чем измененный объект попадет во внешнюю память основной части БД. Известно, что если в СУБД корректно соблюдается протокол WAL, то с помощью журнала можно решить все проблемы восстановления БД после любого сбоя.
Самая простая ситуация восстановления - индивидуальный откат транзакции. Строго говоря, для этого не требуется общесистемный журнал изменений БД. Достаточно для каждой транзакции поддерживать локальный журнал операций модификации БД, выполненных в этой транзакции, и производить откат транзакции путем выполнения обратных операций, следуя от конца локального журнала. В некоторых СУБД так и делают, но в большинстве систем локальные журналы не поддерживают, а индивидуальный откат транзакции выполняют по общесистемному журналу, для чего все записи от одной транзакции связывают обратным списком (от конца к началу).
При мягком сбое во внешней памяти основной части БД могут находиться объекты, модифицированные транзакциями, не закончившимися к моменту сбоя, и могут отсутствовать объекты, модифицированные транзакциями, которые к моменту сбоя успешно завершились (по причине использования буферов оперативной памяти, содержимое которых при мягком сбое пропадает). При соблюдении протокола WAL во внешней памяти журнала должны гарантированно находиться записи, относящиеся к операциям модификации обоих видов объектов. Целью процесса восстановления после мягкого сбоя является состояние внешней памяти основной части БД, которое возникло бы при фиксации во внешней памяти изменений всех завершившихся транзакций и которое не содержало бы никаких следов незаконченных транзакций. Для того, чтобы этого добиться, сначала производят откат незавершенных транзакций (undo), а потом повторно воспроизводят (redo) те операции завершенных транзакций, результаты которых не отображены во внешней памяти. Этот процесс содержит много тонкостей, связанных с общей организацией управления буферами и журналом. Более подробно мы рассмотрим это в соответствующей лекции.
Для восстановления БД после жесткого сбоя используют журнал и архивную копию БД. Грубо говоря, архивная копия - это полная копия БД к моменту начала заполнения журнала (имеется много вариантов более гибкой трактовки смысла архивной копии). Конечно, для нормального восстановления БД после жесткого сбоя необходимо, чтобы журнал не пропал. Как уже отмечалось, к сохранности журнала во внешней памяти в СУБД предъявляются особо повышенные требования. Тогда восстановление БД состоит в том, что исходя из архивной копии по журналу воспроизводится работа всех транзакций, которые закончились к моменту сбоя. В принципе, можно даже воспроизвести работу незавершенных транзакций и продолжить их работу после завершения восстановления. Однако в реальных системах это обычно не делается, поскольку процесс восстановления после жесткого сбоя является достаточно длительным.
2.1.5. Поддержка языков БД
Для работы с базами данных используются специальные языки, в целом называемые языками баз данных. В ранних СУБД поддерживалось несколько специализированных по своим функциям языков. Чаще всего выделялись два языка - язык определения схемы БД (SDL - Schema Definition Language) и язык манипулирования данными (DML - Data Manipulation Language). SDL служил главным образом для определения логической структуры БД, т.е. той структуры БД, какой она представляется пользователям. DML содержал набор операторов манипулирования данными, т.е. операторов, позволяющих заносить данные в БД, удалять, модифицировать или выбирать существующие данные. Мы рассмотрим более подробно языки ранних СУБД в следующей лекции.
и т.д.................

» Администрирование

Администрирование базы данных – это функция управления базой данных (БД). Лицо ответственное за администрирование БД называется “Администратор базы данных” (АБД) или “Database Administrator” (DBA).

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

Таким образом, сформировалось определение БД как общего информационного ресурса предприятия, которое должно находиться всегда в работоспособном состоянии. И как для каждого общего ресурса значительной важности, БД стала требовать отдельного управления. Во многих случаях это было необходимо для обеспечения её повседневной эксплуатации, её развития в соответствии с растущими потребностями предприятия. К тому же БД и технология её разработки постоянно совершенствовались и уже требовались специальные знания высокого уровня для довольно сложного объекта, которым стала база данных. Отсюда функция управления базой данных и получила название “Администрирование базы данных”, а лицо ею управляющее стали называть “Администратор баз данных”.

Администратор базы данных (DBA)

Администратор базы данных (АБД) или Database Administrator (DBA) – это лицо, отвечающее за выработку требований к базе данных, её проектирование, реализацию, эффективное использование и сопровождение, включая управление учётными записями пользователей БД и защиту от несанкционированного доступа. Не менее важной функцией администратора БД является поддержка целостности базы данных.

АБД имеет код специальности по общероссийскому профессий рабочих, должностей служащих и тарифных разрядов (ОКПДТР) - 40064 и код 2139 по Общероссийскому классификатору занятий (ОКЗ). Код 2139 ОКЗ расшифровывается следующим образом: 2 - СПЕЦИАЛИСТЫ ВЫСШЕГО УРОВНЯ КВАЛИФИКАЦИИ, 21 - Специалисты в области естественных* и инженерных наук, 213 - Специалисты по компьютерам, 2139 - Специалисты по компьютерам, не вошедшие в другие группы.

История

Классические подходы к наполнению содержанием понятия "АБД" стали формироваться после издания рабочего отчета группы по базам данных Американского Национального Института Стандартов ANSI/X3/SPARC в 1975 года. В этом отчете была описана трехуровневая архитектура СУБД, в которой выделялся уровень внешних схем данных, уровень концептуальной схемы данных и уровень схемы физического хранения данных. В соответствии с этой архитектурой определялись три роли АБД: администратор концептуальной схемы, администратор внешних схем и администратор хранения данных. Эти роли в случае очень маленькой системы мог играть один человек, в большой системе для выполнения каждой роли могла назначаться группа людей. Каждой роли соответствовал набор функций, а все эти функции вместе составляли функции АБД.

В 1980 - 1981 г. в американской литературе стало принятым включать в функции АБД:

  • организационное и техническое планирование БД,
  • проектирование БД,
  • обеспечение поддержки разработок прикладных программ,
  • управление эксплуатацией БД.

В нашей стране в это же время первое определение АБД в ГОСТ-ах задало слишком узкий состав функций АБД:

  • подготовка вычислительного комплекса к установке СУБД, участие в установке и приемке СУБД и самой БД с комплексом прикладных программ,
  • управление эксплуатацией БД,
  • подготовка словарей и другой НСИ - нормативно-справочной информации - к моменту начала испытания БД.

Предполагалось, что функции АБД будут ориентированы только на эксплуатацию БД, а её разработка будет вестись силами специализированной организации.

К середине 90-х годов сложились еще не завершенные, но уже достаточно устойчивые и полные методологии разработки систем с базами данных. Основная работа по планированию информационных потребностей предприятия, проектированию концептуальной и логической схемы БД, внешних схем, используемых в отдельных процессах обработки информации, ложится теперь на группу проектирования Автоматизированной Системы (АС). Становиться и более определённым объем функций АБД. Это обеспечение надежной и эффективной работы пользователей и программ с БД, поддержка разработчиков в их доступе к БД и средствам разработки.

Основные задачи администратора базы данных

Задачи АБД могут незначительно отличаться в зависимости от вида применяемой СУБД, но в основные задачи входит:

  • Проектирование базы данных.
  • Оптимизация производительности базы данных.
  • Обеспечение и контроль доступа к базе данных.
  • Обеспечение безопасности в базе данных.
  • Резервирование и восстановление базы данных.
  • Обеспечение целостности баз данных.
  • Обеспечение перехода на новую версию СУБД.

Основные типы администраторов БД

Среди АБД нет строгого документального разграничения по типам. Но можно выделить несколько общих видов АБД, в зависимости от возложенных на них обязанностей:

  • Системный администратор.
  • Архитектор БД.
  • Аналитик БД.
  • Разработчик моделей данных.
  • Администратор приложении.
  • Проблемно-ориентированный администратор БД.
  • Аналитик производительности.
  • Администратор хранилища данных.

База данных

База данных - совокупность связанных данных, организованных по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования, независимая от прикладных программ. База данных является информационной моделью предметной области. Обращение к базам данных осуществляется с помощью системы управления базами данных (СУБД).

Базой данных часто ошибочно называют систему управления базами данных. Необходимо различать хранимые данные (собственно БД) и программное обеспечение, предназначенное для организации и ведения базы данных (СУБД).

Система управления базами данных

Система управления базами данных (СУБД) - специализированная программа (чаще комплекс программ), предназначенная для организации и ведения базы данных. Используется для упорядоченного хранения и обработки больших объемов информации. В процессе упорядочения информации СУБД генерирует базу данных, а в процессе обработки сортирует информацию и осуществляют ее поиск.

На данный момент времени существуют следующие СУБД:

    Объектно-реляционная система управления базами данных, разработанная корпорацией Oracle.

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

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

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

Положения

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

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

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

Знания

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

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

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

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

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

Функции

В обязанности администратора входит выполнение им определенных функций:

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

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

Обязанности

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

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

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

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

Другие обязанности

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

Также он обязан предлагать руководству модернизацию технологического обеспечения, по совершенствованию управления и хранения данных, проведение учебных мероприятий по повышению знаний других сотрудников, чтобы они могли полноценно использовать БД, используемые в компании, давать консультации касательно его компетентных полномочий.

Права

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

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

Ответственность

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

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

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

В этом параграфе мы познакомимся с задачами и функциями администрирования БД, которое необходимо обеспечить на самых ранних стадиях разработки.

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

Администратором базы данных (АБД) называется лицо, ответственное за выполнение функции администрирования базы данных.

АБД - не "обладатель" базы данных, а ее "хранитель". С усложнением предметной области неизбежно усложняется процесс формирования информации и принятия решений. В результате расширяется спектр функций администрирования. Так как в случае использования базы данных прикладной программист "устраняется" от непосредственного управления данными, он утрачивает с ними контакт, а следовательно, и чувство ответственности за них. Это требует разработки процедур обеспечения непротиворечивости данных, которые должны быть скоординированы с функцией администрирования базы данных.

Администрирование базы данных предполагает обслуживание пользователей базы данных. Можно провести аналогию между АБД и ревизором предприятия. Ревизор защищает ресурсы предприятия, которые называются деньгами, а АБД - ресурсы, которые называются данными. Во многих организациях по странной традиции АБД рассматривают только как квалифицированного технического специалиста, часто совмещающего функции программиста. Это не соответствует целям администрирования. Уровень АБД в иерархии организации должен быть достаточно высоким, чтобы он мог определять структуру данных и право доступа к ним и нести за это ответственность. АБД обязан хорошо представлять себе, как работает предприятие и как оно использует данные. Хотя от АБД и требуется техническая компетентность, не менее важным является понимание им предметной области, а также умение общаться с людьми и подчинять альтернативы стандартным процедурам. В противном случае АБД не сможет эффективно выполнять свои функции.



Весьма заманчиво наделить АБД широкими полномочиями, однако его положение на предприятии может быть различным. Оно зависит прежде всего от степени значимости базы данных для жизнедеятельности данного предприятия. Вторым фактором является уровень сложности обработки данных и организации коммерческой деятельности. Как мы уже отмечали, АБД чаще всего назначается из числа прикладных программистов отдела обработки данных, что не всегда оправдано.

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

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

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

последнюю очередь. Неизбежным результатом такого отношения является превращение АБД в координатора. Во многих случаях, организуя базу данных, АБД идет по пути решения технических проблем, то есть прежде всего вопросов, связанных с использованием СУБД.

Первая важная задача АБД состоит в устранении противоречий между различными направлениями деятельности организации при создании концептуальной, а затем и логической модели базы данных предметной области. Выступая в роли посредника между отделами, он должен добиваться не только того, чтобы различные специалисты пришли к соглашению относительно объектов предметной области, но и того, чтобы это соглашение было "правильным". Кроме определения данных и прав доступа к ним от АБД может потребоваться разработка процедур и руководств по ведению данных. Для выполнения функций АБД необходимо хорошо представлять себе состояние дел предприятия и перспективы его развития, а также знать позицию руководства. На начальной стадии разработки базы данных АБД следует сконцентрировать внимание на следующих проблемах:

Определение элементов данных и объектов предметной области;

Присвоение различных имен, которые будут использоваться для обращения к элементам одного и того же типа;

Установление взаимосвязей между элементами данных; выпуск текстового описания элементов данных;

Выделение отделов или пользователей, ответственных за обеспечение точности данных (например, контролирующих обновление данных, их непротиворечивость);

Определение путей применения элементов данных в целях управления и планирования, то есть распределении функций между персоналом.

Сбор всей этой информации из различных источников и необходимость ликвидации возникающих между отделами трений требуют, чтобы АБД обладал еще и дипломатическими способностями.

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

Идея "разделения" может не только вызвать противодействие со стороны некоторых отделов, но и настроить их враждебно против всего проекта разработки базы данных в целом. АБД должен одних убедить, других уговорить, третьих ободрить, а кого-то, если необходимо, и принудить. Это означает, что АБД должен уметь пользоваться своей властью и влиянием, обладать определенным стажем работы и хорошо разбираться в обстановке на данном предприятии. Очевидно, функции АБД не может исполнять человек, восстановивший за время работы против себя многих сотрудников.

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

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

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