Глава 5. ПРИНЦИПЫ ПОСТРОЕНИЯ И ЭТАПЫ ПРОЕКТИРОВАНИЯ БАЗЫ ДАННЫХ
Основные понятия и определения
Автоматизированные информационно-справочные системы (АИСС) в настоящее время получили весьма широкое распространение, что связано прежде всего со сравнительной простотой их создания и исключительно высоким эффектом от внедрения. Методологической основой информационных технологий, реализуемых в АИСС, являются концепции централизованной (в рамках разработки баз и банков данных) и распределенной (в рамках создания информационных сетей) обработки информации.
В науке одним из наиболее сложных для строгого определения является понятие «информация». Согласно кибернетическому подходу, «информация — первоначально сообщение данных, сведений, осведомление и т.п. Кибернетика вывела понятие «информация» за пределы человеческой речи и других форм коммуникации между людьми, связала его с целенаправленными системами любой природы. Информация выступает в трех формах:
- биологической (биотоки; связи в генетических механизмах);
- машинной (сигналы в электрических цепях);
- социальной (движение знаний в общественных системах)» [15].
Иными словами, «информация — связь в любых целенаправленных системах, определяющая их целостность, устойчивость, уровень функционирования» [49]. Содержание и особенности информации раскрываются указанием действий, в которых она участвует:
- хранение (на некотором носителе информации);
- преобразование (в соответствии с некоторым алгоритмом);
- передача (с помощью передатчика и приемника по некоторой линии связи).
В соответствии с этим же подходом «данные — факты и идеи, представленные в формализованном виде, позволяющем передавать или обрабатывать их при помощи некоторого процесса и соответствующих технических устройств» [15].
В источниках [49, 53] понятия «информация» и «данные» определены несколько иначе.
«Информация: 1) совокупность знаний о фактических данных и связях между ними; 2) в вычислительной технике — содержание, присваиваемое данным посредством соглашений, распространяющихся на эти данные; данные, подлежащие вводу в ЭВМ, хранимые в ее памяти, обрабатываемые на ЭВМ и выдаваемые пользователям».
«Данные — информация, представленная в виде, пригодном для обработки автоматическими средствами при возможном участии человека» [53].
Как легко заметить, приведенные определения вынужденно используют такие сложно определяемые понятия, как «факты», «идеи» и особенно «знания».
В дальнейшем под информацией будем понимать любые сведения о процессах и явлениях, которые в той или иной форме передаются между объектами материального мира (людьми, животными, растениями, автоматами и др.).
Если рассмотреть некоторый объект материального мира, информация о котором представляет интерес, и наблюдателя (в роли которого и выступают АИС), способного фиксировать эту информацию в определенной, понятной другим форме, то говорят, что в памяти (сознании) наблюдателя находятся данные, описывающие состояние объекта. Таким образом, данными будем называть формализованную информацию, пригодную для последующей обработки, хранения и передачи средствами автоматизации профессиональной деятельности.
Информацию в ЭВМ можно хранить в виде различных данных (числовых, текстовых, визуальных и т.п.). Более того, для описания одной и той же информации можно предложить различные варианты их состава и структуры. Иными словами, правомерно говорить о моделировании в АИС информации о некотором множестве объектов материального мира совокупностью взаимосвязанных данных.
Информационное обеспечение (information support) АИС — совокупность единой системы классификации и кодирования информации; унифицированных систем документации и используемых массивов информации [53, 54]. В дальнейшем нас будет интересовать именно последний аспект данного определения.
В этой связи в качестве главных задач создания информационного обеспечения АИС можно выделить, во-первых, определение состава и структуры данных, достаточно «хорошо» описывающих требуемую информацию, во-вторых, обоснование способов хранения и переработки данных с использованием ЭВМ.
Процесс создания информационного обеспечения включает несколько этапов, рассмотрению которых посвящен подразд. 5.2. В данном подразделе остановимся на понятиях и определениях, связанных с технологией банков данных.
Прежде чем определить понятие «банк данных», необходимо остановиться на другом ключевом понятии — «предметная область».
Под предметной областью будем понимать информацию об объектах, процессах и явлениях окружающего мира, которая с точки зрения потенциальных пользователей должна храниться и обрабатываться в информационной системе. В этом определении особое внимание следует уделить важности роли потенциальных потребителей информационных ресурсов АИС. Именно этот аспект обусловливает и структуру, и основные задачи, и вообще целесообразность создания того или иного банка.
Банк данных — ИС, включающая в свой состав комплекс специальных методов и средств для поддержания динамической информационной модели предметной области с целью обеспечения информационных потребностей пользователей [15, 39]. Очевидно, что банк данных может рассматриваться как специальная обеспечивающая подсистема в составе старшей по иерархии АИС.
Поддержание динамической модели предметной области предусматривает не только хранение информации о ней и своевременное внесение изменений в соответствии с реальным состоянием объектов, но и обеспечение возможности учета изменений состава этих объектов (в том числе появление новых) и связей между ними (т.е. изменений самой структуры хранимой информации).
Обеспечение информационных потребностей (запросов) пользователей имеет два аспекта [45]:
- определение границ конкретной предметной области и разработка описания соответствующей информационной модели;
- разработка банка данных, ориентированного на эффективное обслуживание запросов различных категорий пользователей.
С точки зрения целевой направленности профессиональной деятельности принято выделять пять основных категорий пользователей [45]: аналитики, системные программисты, прикладные программисты, администраторы, конечные пользователи.
Различают пользователей постоянных и разовых; пользователей-людей и пользователей-задач; пользователей с различным уровнем компетентности (приоритетом) и др., причем каждый класс пользователей предъявляет собственные специфические требования к своему обслуживанию (прежде всего с точки зрения организации диалога «запрос —ответ»). Так, например, постоянные пользователи, как правило, обращаются в банк данных с фиксированными по форме (типовыми) запросами; пользователи-задачи должны иметь возможность получать информацию из банка данных в согласованной форме в указанные области памяти; пользователи с низким приоритетом могут получать ограниченную часть информации и т.д. Наличие столь разнообразного состава потребителей информации потребовало включения в банк данных специального элемента — словаря данных, о чем будет сказано ниже.
Уровень сложности и важности задач информационного обеспечения АИС в рамках рассматриваемой технологии определяет ряд основных требований к банку данных [53]:
- адекватность информации состоянию предметной области;
- быстродействие и производительность;
- простота и удобство использования;
- массовость использования;
- защита информации;
- возможность расширения круга решаемых задач.
(Отметим, что все названные требования можно предъявить и к любому финансовому банку.)
По сравнению с традиционным обеспечением монопольными файлами каждого приложения централизованное управление данными в банке данных имеет ряд важных преимуществ:
- сокращение избыточности хранимых данных;
- устранение противоречивости хранимых данных;
- многоаспектное использование данных (при однократном вводе);
- комплексная оптимизация (с точки зрения удовлетворения разнообразных, в том числе и противоречивых, требований «в целом»);
- обеспечение возможности стандартизации;
- обеспечение возможности санкционированного доступа к данным и др.
Все названные преимущества, по существу, связаны с такими основополагающими принципами концепции банка данных, как интеграция данных, централизация управления ими и обеспечение независимости прикладных программ обработки данных и самих данных.
Структура типового банка данных, удовлетворяющего предъявляемым требованиям, представлена на рис. 5.1.
Подробнее остановимся на составляющих банка данных, представляющих наибольший интерес.
База данных — совокупность специальным образом организованных (структурированных) данных и связей между ними. Иными словами, БД — это так называемое датологическое (от англ. data — данные) представление информации о предметной области. Если в состав банка данных входит одна БД, банк принято называть локальным; если БД несколько — интегрированным.
Словарь данных предназначен для хранения единообразной и централизованной информации обо всех ресурсах данных конкретного банка:
- об объектах, их свойствах и отношениях для данной ПО;
- данных, хранимых в БД (наименование, смысловое описание, структура, связи и т.п.);
- возможных значениях и форматах представления данных;
- источниках возникновения данных;
- кодах защиты и разграничении доступа пользователей к данным и т. п.
Система управления базами данных — специальный комплекс программ и языков, посредством которого организуется централизованное управление БД и обеспечивается доступ к ним.
В состав любой СУБД входят языки двух типов:
- язык описания данных (с его помощью описываются типы данных, их структура и связи);
- язык манипулирования данными (его часто называют «язык запросов к БД»), предназначенный для организации работы с данными в интересах всех типов пользователей.
Администратор БД — это лицо (группа лиц), реализующее управление БД. В этой связи сам банк данных можно рассматривать как автоматизированную систему управления БД. Функции администратора БД являются долгосрочными; он координирует все виды работ на этапах создания и применения банка данных. На стадии проектирования администратор БД выступает как идеолог и главный конструктор системы; на стадии эксплуатации он отвечает за нормальное функционирование банка данных, управляет режимом его работы и обеспечивает безопасность данных (последнее особенно важно при современном уровне развития средств коммуникации — см. гл. 3). Основные функции администратора БД [15, 54]:
- решать вопросы организации данных об объектах ПО и установления связей между этими данными с целью объединения информации о различных объектах; согласовывать представления пользователей;
- координировать все действия по проектированию, реализации и ведению БД; учитывать текущие и перспективные требования пользователей; следить, чтобы БД удовлетворяли актуальным потребностям;
- решать вопросы, связанные с расширением БД в связи с изменением границ ПО;
- разрабатывать и реализовывать меры по обеспечению защиты данных от некомпетентного их использования, от сбоев технических средств, по обеспечению секретности определенной части данных и разграничению доступа к ним;
- выполнять работы по ведению словаря данных; контролировать избыточность и противоречивость данных, их достоверность;
- следить за тем, чтобы банк данных отвечал заданным требованиям по производительности, т. е. чтобы обработка запросов выполнялась за приемлемое время;
- выполнять при необходимости изменения методов хранения данных, путей доступа к ним, связей между данными, их форматов; определять степень влияния изменений в данных на всю БД;
- координировать вопросы технического обеспечения системы аппаратными средствами, исходя из требований, предъявляемых БД к оборудованию;
- координировать работы системных программистов, разрабатывающих дополнительное программное обеспечение для улучшения эксплуатационных характеристик системы;
- координировать работы прикладных программистов, разрабатывающих новые прикладные программы, и выполнять их проверку и включение в состав ПО системы и т. п.
На рис. 5.2 представлен типовой состав группы администратора БД, отражающий основные направления деятельности специалистов.
Статьи к прочтению:
- Раздел ii. методические рекомендации и программа проведения учебной практики
- Раздел i. методологические основы проектирования и применения информационных систем
01 — Базы данных. Этапы развития информационных систем и баз данных
Похожие статьи:
-
Структура информационной системы
Структуру информационных систем составляет совокупность отдельных ее частей, называемых подсистемами. Функциональные подсистемы реализуют и поддерживают…
-
Базы данных в структуре информационных систем
ОСНОВНЫЕ ПОНЯТИЯ Понятие «база данных» в отличие от понятия «банк информации» изначально связано с компьютерными системами, с историей и развитием….