Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сборная ответов к госэкзаменам.doc
Скачиваний:
122
Добавлен:
02.09.2019
Размер:
7 Mб
Скачать

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

По модели данных:

  • Реляционные

  • Сетевые

  • Иерархические

По типу используемого транслятора

  • Интерпретатор

  • Компилятор

По сфере применения

  • Информационно-поисковые

  • Системы обработки данных

По способности настраиваться на предметную область

  • Универсальные

  • Специализированные

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

  • Однофайловые

  • Многофайловые

  • Программируемые

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

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

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

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

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

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

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