Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Понятие об информационных моделях.doc
Скачиваний:
28
Добавлен:
21.11.2019
Размер:
486.91 Кб
Скачать

Понятие банка данных

Введение

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

Определение банка данных

Банк данных (БнД) является современной формой ор-ганизации хранения и доступа к информации. Существует множество определений банка данных. В «Общеотраслевых руководящих материалах по созданию банков данных» (М.: ГКНТ, 1982) дано следующее определение: «Банк данных — это система специальным образом организованных данных (баз данных), программных, технических, языковых, органи-зационно-методических средств, предназначенных для обес-печения централизованного накопления и коллективного многоцелевого использования данных».

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

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

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

Банк данных - совокупность базы данных с соответст-вующей системой управления базами данных (СУБД). База данных - централизованное хранилище в ЭВМ определенным образом организованной информации. СУБД специальный комплекс программ, осуществляющий функции создания ба-зы данных, поддержание ее в рабочем состоянии, выдача из нее информации, необходимой для обрабатывающих про-грамм и т.д. ЭВМ, родившись прежде всего как средство для выполнения сложных математических расчетов, начиная с 70-х годов стали широко применяться также для накопления и обработки больших объемов информации. В память вычис-лительных машин заносится огромное количество сведений экономических, статистических и т.п. характера. При этом выяснилось, что хранение массива данных для каждой от-дельной задачи ведет к серьезным потерям. Во-первых, нака-пливается избыточная информация, поскольку многие разные задачи требуют для своего решения одинаковых данных. На-пример, создание в ЭВМ массива характеристик всех рабо-тающих на предприятии для автоматизации управления кад-рами и создание массива сведений из бухгалтерии для авто-матизации расчета зарплаты невыгодно, поскольку эти два массива будут содержать много одинаковой информации (фамилии, занимаемые должности, оклады сотрудников и т.п.). Во-вторых, возникает проблема непротиворечивости сведений, хранящихся в различных информационных масси-вах. Любые изменения должны одновременно заноситься сразу в несколько массивов данных, что организационно трудно осуществимо. В-третьих, появление какого-либо но-вого параметра в массиве данных создает необходимость из-менения большого числа программ. Для решения этих и дру-гих вопросов, вставших в связи с необходимостью накопле-ния и обработки больших объемов информации, была разви-та концепция управления данными. Суть этого подхода за-ключается в том, что вся информация, с которой имеет дело, например, предприятие, накапливается централизованно. То есть накопление, поддержание и выдача информации выде-ляется в самостоятельную задачу. При этом структура хране-ния данных приводится в максимально возможное соответст-вие со структурой тех процессов, которые в этих данных от-ражаются. Таким образом возникли базы данных. Развитие базы данных показало, что качественное решение задачи управления большими объемами данных невозможно без ре-шения многих проблем технического, организационного, программного характера. Чтобы подчеркнуть важность всех этих компонентов, некоторые авторы характеризуют базы данных как совокупность информационных, математических, технических и организационных средств, направленных на удовлетворение информационных потребностей широкого круга пользователей. Важно подчеркнуть, что базы данных - не просто собранный в одном месте большой объем данных, а такое объединение данных, в котором выделена структура взаимосвязей для каждого отдельного элемента информации.

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

Преимущества Банка данных

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

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

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

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

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

Очевидные преимущества БнД и объективные предпо-сылки их создания привели к широкому их использованию.

Требования к банкам информации и показатели эффективности

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

Приведем перечень наиболее важных требований:

• интегрированность баз данных;

• независимость данных;

• гибкость и адаптивность структуры баз данных;

• адекватность базы данных предметной области;

• целостность базы данных;

• минимальная избыточность хранимых данных;

• простая физическая реорганизация баз данных;

• динамичность данных;

• способность к расширению;

• возможность поиска по нескольким ключам;

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

Рассмотрим наиболее важные свойства систем, на осно-ве которых могут быть построены оценки эффективности банка данных:

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

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

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

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

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

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

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

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

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

Рассмотренные показатели эффективности являются общими для всех видов АБИ. Следующие два показателя ха-рактерны для банков данных:

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

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

Состав банка данных. Банк данных является сложной человеко-машинной системой, включающей в свой состав различные взаимосвязанные и взаимозависимые, компоненты.

Информационная компонента

Ядром БнД является база данных. База данных — это поименованная совокупность взаимосвязанных данных, на-ходящихся под управлением СУБД.

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

В настоящее время действует Закон: " О правовой ох-ране программ для электронных вычислительных машин и баз данных" № 3523—1 от 23.09.92. В этом законе (ст. 1) дается следующее определение базы данных: «База данных — это объективная форма представления и организации со-вокупности данных (например, статей, расчетов), система-тизированных таким образом, чтобы эти данные могли быть найдены и обработаны с помощью ЭВМ». Это опреде-ление является более широким, чем приведенное нами выше определение. В технической документации некоторых СУБД, а также в некоторых литературных источниках в со-став БД включаются не только собственно хранимые дан-ные о предметной области, но и описания БД. Более пра-вильно описания баз данных считать самостоятельными компонентами БнД, даже если они и хранятся вместе с са-мими данными.

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

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

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

Роль словарной системы особенно возрастает при ис-пользовании средств автоматизированного проектирования информационных систем. Для большинства из них репози-торий является ядром всей системы.

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

В процессе научных исследований, посвященных тому, как именно должна быть устроена СУБД, предлагались раз-личные способы реализации. Самым жизнеспособным из них оказалась предложенная американским комитетом по стан-дартизации ANSI (American National Standards Institute) трех-уровневая система организации БД, изображенная на рис. 3.

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

2. Концептуальный уровень — центральное управ-ляющее звено, здесь база данных представлена в наиболее общем виде, который объединяет данные, используемые все-ми приложениями, работающими с данной базой данных. Фактически концептуальный уровень отражает обобщенную модель предметной области (объектов реального мира), для которой создавалась база данных. Как любая модель, концеп-туальная модель отражает только существенные, с точки зре-ния обработки, особенности объектов реального мира.

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

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

Программные средства БнД

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

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

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

Для обработки запросов к БД пишутся соответствую-щие программы, которые представляют прикладное про-граммное обеспечение БнД.

Языковые средства БнД

Языковые средства СУБД являются важнейшей ком-понентой банков данных, так как, в конечном счете они обеспечивают интерфейс пользователей разных категорий с банком данных. Языковые средства большинства СУБД относятся к языкам четвертого поколения (к первому поко-лению языков относят машинные языки, ко второму — сим-волические языки ассемблера, к третьему — алгоритмиче-ские языки типа PL, COBOL и t.j п., которые в 60-е годы на-зывались языками высокого уровня, но уровень которых гораздо ниже, чем у языков четвертого поколения.

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

1. Принцип минимума работы: язык должен обеспе-чить минимум усилий, чтобы «заставить» машину работать.

2. Принцип минимума мастерства: работа должна быть так проста, как только это возможно; она не должна быть уделом избранных и быть понятной лишь посвящен-ным.

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

4. Принцип минимума ошибок. Технология должна быть спроектирована таким образом, чтобы минимизиро-вать ошибки человека, а уж если они возникли, то по воз-можности «выловить» их автоматически.

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

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

Классификация языковых средств

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

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

Язык описания данных (DDL - Data Definition Language), предназначен для описания данных на разных уровнях абстракции: внешнем, логическом и внутреннем. Исходя из предложений CODASYL, языки описания данных на логическом (концептуальном) и внутреннем уровнях неза-висимые и разные. Однако в большинстве промышленных СУБД языки не делится на два отдельных языка описания ло-гической и физической организации данных, а существует единый язык, которая еще называется языком описания схем. В известных и широко используемых на практике СУБД се-мьи dBASE применяется единый язык описания данных. Этот язык имеет свой синтаксис. Он предназначен для представле-ния данных на логическом и физическом уровнях. Описание всех имен, типов и размеров полей сохраняется в памяти вместе с данными; эти структуры в случае необходимости можно просмотреть и исправить. Если логический и физиче-ский уровни отделены, то в состав СУБД может входить язык описания сохранения данных. В некоторых СУБД использу-ется еще язык описания подсхем, который нужен для описа-ния части БД, которая отражает информационные потребно-сти отдельного пользователя или прикладной программы. В составе СУБД типа DBASE такой язык не используется.

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

В составе языков описания данных в зависимости от особенностей СУБД поддерживаются все или некоторые из следующих языков: язык описания схем, язык описания подсхем, язык описания хранимых данных, языки описания внешних данных (входных, выходных).

Язык манипулирования данными (DML - Data Manipulation Language) используется для обработки данных, их преобразований и написания программ. DML может быть базовым или автономным.

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

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

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

Базовый язык DML — это один из традиционных язы-ков программирования (BASIC, C, FORTRAN и др.). Систе-мы, которые используют базовый язык, называют открыты-ми. Использование базовых языков как языков описания дан-ных сужает круг лиц, которые могут непосредственно обра-щаться к БД, поскольку для этого нужно знать язык про-граммирования. В таких случаях для упрощения общения ко-нечных пользователей с БД предполагается язык ведения диалога, который значительно проще для овладения, чем язык программирования.

Автономный язык DML — это собственный язык СУБД, который дает возможность выполнять различные операции с данными. Системы с собственным языком называют закры-тыми.

В современных СУБД для упрощения процедур поиска данных в БД предусмотрен язык запросов. Наиболее распро-страненными языками запросов являются SQL и QBE.

Язык запросов SQL (Structured Query Language - структурированный язык запросов) был создан фирмой IBM в рамках работы над проектом построения системы управления реляционными базами данных в начале 70-х годов. Американский национальный институт стандартов (ANSI) положил этот язык в основу стандарта языков реляционных баз данных, принятого Международной организацией стандартов (ISO). Ядром существующего стандарта SQL-86, которые часто называют SQL-2 или SQL-92, являются функции, реализованные практически во всех известных коммерческих версиях языка

Язык запросов QBE (Query By Example) — это реализа-ция запросов по образцу в виде таблиц. Для определения за-проса к БД пользователь должен заполнить предоставленную системой таблицу QBE и определить в ней критерии поиска и выбора данных.

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

По своим функциональным возможностям выделяют следующие категории языков

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

2. Комплексные языки запросов-обновлений. Более развитые языки, которые позволяют формулировать слож-ные запросы, относящиеся к нескольким взаимосвязанным записям, а также обновлять данные так же легко, как и формулировать запросы. Используя их, пользователи могут создавать свои собственные файлы.

3. Генераторы отчетов. Они позволяют выбирать нужные данные из файлов или баз данных и форматировать их в виде требуемых форм документов.

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

5. Инструментальные средства поддержки решений. Языки этого типа предназначены для создания систем принятия решений. Это могут быть системы типа «что - ес-ли», системы, выполняющие временной или грендовый анализ, и др. Возможно использование как универсальных, так и проблемно-ориентированные средств.

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

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

8. Языки очень высокого уровня. В большинстве слу-чаев приложения строятся при помощи непроцедурных языков.

9.Параметризированные пакеты прикладных про-грамм. Эта категория программных средств известна давно, и «четвертое поколение» относится к таким ППП, которые допускают легкую модификацию самого пакета, позволяют пользователям генерировать собственные отчеты, запросы к базе данных и т. д.

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

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

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

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

2) табличный язык запросов типа QBE (панель Queries управляющего центра);

3) язык SQL, относящийся к классу языков исчисле-ния кортежей.

Описание данных в этой системе может быть представ-лено в табличном виде либо, если определение данных про-исходит средствами SQL, —в аналитическом виде.

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

Технические средства БнД

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

До недавнего времени БнД реализовывались в основ-ном на больших ЭВМ. В связи со значительным и постоян-ным улучше¬нием характеристик персональных ЭВМ в на-стоящее время широ¬ко распространено создание банков данных и на машинах этого класса.

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

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

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

Пользователи банков данных

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

1. Проектирование.

2. Реализация.

3. Эксплуатация.

4. Модернизация и развитие.

5. Полная реорганизация.

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

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

Администраторы банка данных

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

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

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

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

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

Рассмотрим их более подробно. В составе группы адми-нистратора БД должны быть:

• системные аналитики;

• проектировщики структур данных и внешнего по отношению к банку данных информационного обеспечения;

• проектировщики технологических процессов обра-ботки данных;

• системные и прикладные программисты:

• операторы и специалисты по техническому обслу-живанию.

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

Основные функции группы администратора БД

Анализ предметной области:

 описание предметной области;

 выявление ограничений целостности определение статуса (доступности, секретности) информации;

 определение потребностей пользователей;

 определение соответствия «данные - пользова-тель»;

 определение объемно-временных характеристик обработки данных.

Проектирование структуры БД:

 определение состава и структуры файлов БД и свя-зей между ними;

 выбор методов упорядочения данных и методов доступа к информации, описание БД на языке описания дан-ных (ЯОД).

Задание ограничений целостности при описании струк-туры БД и процедур обработки БД:

 задание декларативных ограничений целостности, присущих предметной области;

 определение динамических ограничений целостно-сти, присущих предметной области в процессе изменения информации, хранящейся в БД;

 определение ограничений целостности, вызванных структурой БД;

 разработка процедур обеспечения целостности БД при вводе и корректировке данных;

 определение ограничений целостности при парал-лельной работе пользователей в многопользовательском ре-жиме.

Первоначальная загрузка и ведение БД:

 разработка технологии первоначальной загрузки БД, которая будет отличаться от процедуры модификации и дополнения данными при штатном использовании базы дан-ных;

 разработка технологии проверки соответствия вве-денных данных реальному состоянию предметной области;

 База данных моделирует реальные объекты неко-торой предметной области и взаимосвязи между ними, и на момент начала штатной эксплуатации эта модель должна полностью соответствовать состоянию объектов предметной области на данный момент времени;

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

Защита данных:

 определение системы паролей, принципов регист-рации пользователей, создание групп пользователей, обла-дающих одинаковыми правами доступа к данным;

 разработка принципов защиты конкретных данных и объектов проектирования;

 разработка специализированных методов кодиро-вания информации при ее циркуляции в локальной и гло-бальной информационных сетях;

 разработка средств фиксации доступа к данным и попыток нарушения системы зашиты;

 тестирование системы защиты;

 исследование случаев нарушения системы защиты и развитие динамических методов защиты информации в БД.

Обеспечение восстановления БД:

 разработка организационных средств архивирова-ния и принципов восстановления БД;

 разработка дополнительных программных средств и технологических процессов восстановления БД после сбо-ев.

Анализ обращений пользователей БД:

 сбор статистики по характеру запросов, по времени их выполнения, по требуемым выходным документам.

Анализ эффективности функционирования БД:

 анализ показателей функционирования БД;

 планирование реструктуризации (изменение струк-туры) БД и реорганизации БнД.

Работа с конечными пользователями:

 сбор информации об изменении предметной облас-ти;

 сбор информации об оценке работы БД;

 обучение пользователей, консультирование поль-зователей;

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

Подготовка и поддержание системных средств:

 анализ существующих на рынке программных средств и анализ возможности и необходимости их использо-вания в рамках БД;

 разработка требуемых организационных и про-граммно-технических мероприятий по развитию БД;

 проверка работоспособности закупаемых про-граммных средств перед подключением их к БД;

 курирование подключения новых программных средств к БД.

Организационно-методическая работа по проектирова-нию БД:

 выбор или создание методики проектирования БД;

 определение целей и направления развития систе-мы в целом;

 планирование этапов развития БД;

 разработка общих словарей-справочников проекта БД и концептуальной модели;

 стыковка внешних моделей разрабатываемых при-ложений;

 курирование подключения нового приложения к действующей БД;

 обеспечение возможности комплексной отладки множества приложений, взаимодействующих с одной БД.

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

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

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

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

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

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

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

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

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

КОНТРОЛЬНЫЕ ВОПРОСЫ

1. Дайте классификацию языковых средств БнД.

2. Дайте определение банка данных.

3. Какие составные части включает в свой состав банк данных?

4. Какие технические средства необходимы для реа-лизации банка данных?

5. Какие типы ЭВМ чаще всего используются для реализации банков данных?

6. Какие требования предъявляются к банкам дан-ных?

7. Каковы предпосылки создания БнД?

8. Кого называют администраторами банка данных?

9. Кого называют конечными пользователями?

10. Назовите основные отличительные особенности банков данных

11. Назовите основные преимущества банков данных.

12. Назовите принципы, по которым построены языки четвертого поколения.

13. Перечислите основные функции администратора банка данных.

14. Перечислите основные категорий пользователей банка данных.

15. Перечислите основные признаки классификации банков данных.

16. Что называется базой данных?

17. Что называется системой управления базой дан-ных?

18. Что называется словарем данных?

Заключение

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

Библиографический список

1. Баженова И. Ю. Visual FoxPro9.0. Текст : Учеб-ное пособие / И. Ю. Баженова. - М.: Диалог МИФИ, 2005.

2. Карпова, Т. С. Базы данных: модели, разработка, реализация [Текст] / Т. С. Карпов. – СПБ., 2004.

3. Глушков, С. Б. Базы данных [Текст] : учебный курс / С. Б. Глушков. - М.: ФЕОЛИО АСТ, 2002.

4. Балдин, К. В. Информационные системы в эконо-мике. [Текст] : Учебник / К. В. Балдин. Москва, 2006

5. Уткин, В. В. Основы автоматизации профессио-нальной деятельности [Текст] / В. В. Уткин. М.: РДЛ, 2003.

6. Гамма, Э. Приемы объектно-ориентированного проектирования [Текст] / Э. Гамма, Р. Элле. СПБ: Питер, 2001.

7. Гаврилова, Т. А. Базы знаний [Текст] / Т. А. Гаври-лова. СПБ: Питер, 2001.

8. Гилярский, Р. С. Основы информатики [Текст]: Курс лекций / Р. С. Гилярский. М.: Экзамен, 2004

9. Бобровский, С. Delphi 5: учебный курс [Текст] / С. Бобровский. СПБ., 2002.