Успешно изучив это занятие, Вы будете знать:
понятие и назначение банков данных;
требования, предъявляемые к банкам данных;
разновидности банков данных;
понятие, виды и назначение баз данных;
какие бывают модели данных;
виды систем управления базами данных (СУБД).
После изучения данной темы Вы будете уметь:
анализировать существующие технологи создания банков данных, чтобы в будущем выбрать наиболее применимую технологию для решения практических задач;
различать существующие виды баз данных.
После изучения материала Вы будете обладать навыками:
классификации средств, предназначенных для создания баз данных;
определения (выбора) технологии создания баз данных.
Словарь данных, метаинформация
, класс объектов
Интегрированные и распределенные БД
Иерархическая, сетевая
и реляционная модель данных
Одним из важнейших условий обеспечения эффективного функционирования любой организации является наличие развитой информационной системы.
Информационная система представляет собой систему, реализующую автоматизированный сбор, обработку и манипулирование данными и включающую в себя технические средства обработки данных, программное обеспечение и специалистов предметных областей.
Современной формой информационных систем являются банки данных, которые включают в свой состав вычислительную систему, одну или несколько баз данных (БД), систему управления базами данных (СУБД) и набор прикладных программ (ПП).
Банк данных (БнД) является современной формой организации хранения и доступа к информации.
Прикладные программы (приложения) в составе банков данных служат для обработки данных, вычислений и формирования выходных документов по заданной форме.
Ядром БнД является база данных (БД).
База данных (БД) обеспечивает хранение информации и представляет собой поименованную совокупность данных, организованных по определенным правилам, включающих общие принципы описания, хранения и манипулирования данными.
База данных находится под управлением определенной системы управления базой данных (СУБД
), которая представляет собой пакет прикладных программ и совокупность языковых средств обработки данных (ЯОД), предназначенных для создания, сопровождения и использования данных.
Основными функциями банков данных являются:
хранение данных и их защита;
изменение (обновление, добавление и удаление) хранимых данных;
поиск и отбор данных по запросам пользователей;
обработка данных и вывод результатов.
Классификация банков данных приведена на рис. 16.1 .
Использование БнД при правильной его организации позволит:
обеспечить большую доступность данных для всех категорий сотрудников;
сократить бумажный документооборот, получать разнообразные по форме и содержанию документы;
перераспределить функции между сотрудниками, изменить характер выполняемых функций и, как следствие, улучшить всю систему управления предприятием.
В процессе создания и эксплуатации БнД с ним взаимодействуют пользователи разных категорий (рис. 16.2
).
Пользователи-параметристы — это пользователи, которые в процессе работы с базой данных могут менять содержание БнД. Другие могут только использовать хранящуюся в БнД информацию.
Терминальные пользователи могут взаимодействовать с БнД как непосредственно, так и через посредников.
Специфические пользователи БнД — сотрудники информационных служб. Часто бывает желательным, чтобы другая информация была для них закрыта.
Администраторы БнД — лица, ответственные за создание БнД и его надежное функционирование, за соблюдение регламента доступа к хранимым данным, за развитие БнД.
В некоторых системах, например, Access, под базой данных (БД) понимают совокупность разных объектов: таблиц, запросов, форм, отчетов, макросов и модулей, т.е. понятие базы данных расширено и включает в себя практически все информационные компоненты, созданные для конкретного приложения. В других системах, в частности в СУБД Paradox, для обозначения подобной совокупности взаимосвязанных объектов используется понятие «семейство».
Поэтому при работе с конкретной системой необходимо, прежде всего, уточнить терминологию, используемую в ней.
Существуют различные классификации баз данных.
По форме представления информации:
визуальные;
аудиосистемы;
мультимедиа.
По характеру организации данных:
неструктурированные;
частично структурированные;
структурированные.
По типу хранимой информации:
документальные (библиографические, реферативные и полнотекстовые);
документальные без хранения самого исходного документа на машинных носителях;
документальные с хранением самого исходного документа на машинных носителях;
документальные с хранением полного текста исходного документа на машинных носителях (полнотекстовые);
фактографические;
лексикографические (различные классификаторы, многоязычные словари, словари основ слов).
Базы данных форм документов — обладают некоторыми чертами документальных систем (ищется документ, а не информация о конкретном объекте, форма документа имеет название, по которому обычно и осуществляется ее поиск), так и специфическими особенностями (документ ищется не с целью извлечь из него информацию, а с целью использования его в качестве «шаблона»).
Объектные базы данных организованы как объекты и ссылки к объектам. Объект представляет собой данные и правила, которые оперируют этими данными. Объект включает метод, который является частью определения объекта и запоминается вместе с объектом. В объектных БД данные запоминаются как объекты, классифицированные по типам классов и организованные в иерархическое семейство классов. Класс — коллекция объектов с одинаковыми свойствами. Объекты принадлежат классу. Классы организованы в иерархии.
По характеру организации хранения данных и обращения к ним различают:
локальные (персональные);
общие (интегрированные, централизованные);
распределенные базы данных.
Экстенсиональные (ЭБД) и интенсиональные (ИБД). Интенсиональная база данных строится с помощью правил, определяющих ее содержание, а не с помощью простого хранения данных в БД, как в случае экстенсиональных БД.
БД могут различаться по объему хранимых данных.
Структурированные БД по типу используемой модели данных делятся на:
иерархические;
сетевые;
реляционные;
смешанные;
объектно-ориентированные.
Хранимые в базе данные имеют определенную логическую структуру, т.е. представлены некоторой моделью данных, поддерживаемой СУБД.
В иерархической модели данные представляются в виде древовидной (иерархической) структуры. Она удобна для работы с иерархически упорядоченной информацией и слишком громоздка для информации со сложными логическими связями |
|
Сетевая модель означает представление данных в виде произвольного графа. Главный их недостаток — высокая сложность и жесткость схемы БД, построенной на их основе |
Кроме сетевых моделей с равноправными файлами, существуют сетевые модели с разнотипными файлами (рис. 16.3 ) . В таких моделях различают главные (основные) и зависимые файлы. Вход в структуру возможен только через главные файлы.
Связываться между собой могут только записи разных типов.
Особое место среди структурированных систем занимают системы, построенные на использовании инвертированных файлов. Особенность организации данных в них состоит в том, что собственно хранимые данные и информация о связях отделены друг от друга. Основные данные в этих системах хранятся в файлах, записи которых могут иметь сложную структуру.
Реляционная модель данных (РМД) получила название от английского термина relation — отношение. Ее предложил в 1970-е годы сотрудник фирмы IBM Эдгар Кодд. При соблюдении определенных условий отношение представляется в виде двухмерной таблицы, привычной для человека.
Большинство современных БД являются реляционными.
Достоинствами реляционной модели являются простота, удобство реализации, наличие теоретического обоснования и возможность формирования гибкой системы БД, допускающей настройку при формировании запросов. Реляционная модель данных используется в основном в БД среднего размера. При увеличении числа таблиц в базе данных падает скорость работы с ней (рис. 16.4 ).
Объектно-ориентированные БД объединяют в себе две модели данных, реляционную и сетевую, и используются при создании крупных БД со сложными структурами данных
Существуют различные классификации СУДБ.
По языкам общения:
открытые — это системы, в которых для обращения к базам данных используются универсальные языки программирования;
замкнутые — имеют собственные языки общения с пользователями БД;
смешанные.
По числу уровней в архитектуре:
одноуровневые;
двухуровневые;
трехуровневые системы.
В принципе возможно выделение и большего числа уровней.
По выполняемым функциям:
информационные — позволяют организовать хранение информации и доступ к ней. Для выполнения более сложной обработки необходимо писать специальные программы;
операционные — выполняют достаточно сложную обработку, например, автоматически позволяют получать агрегированные показатели, не хранящиеся непосредственно в базе данных, могут изменять алгоритмы обработки и т.д.
По сфере возможного применения:
универсальные;
специализированные (обычно проблемно-ориентированные СУБД).
Системы объектно-ориентированных баз данных (СООБД) обладают достаточно мощными выразительными возможностями, чтобы непосредственно моделировать сложные объекты.
По мощности:
настольные — сравнительно невысокие требования к техническим средствам, ориентация на конечного пользователя, низкая стоимость;
корпоративные — обеспечивают работу в распределенной среде, высокую производительность, поддержку коллективной работы при разработке систем, имеют развитые средства администрирования и более широкие возможности поддержания целостности.
Наиболее известными из корпоративных СУБД являются Oracle, Informix, Sybase, MS SQL Server, Progress и некоторые другие.
Наблюдается связь между классом СУБД и используемой операционной системой.
По ориентированности на преобладающую категорию пользователей:
СУБД для разработчиков — должны иметь качественные компиляторы и позволять создавать «отчуждаемые» программные продукты, обладать развитыми средствами отладки, включать средства документирования проекта и обладать другими возможностями, позволяющими создавать эффективные сложные системы;
СУБД для конечных пользователей — должны иметь удобный интерфейс, высокий уровень языковых средств, наличие интеллектуальных модулей подсказок, повышенную защиту от непреднамеренных ошибок («защита от дурака») и т.п.
Практически это можно использовать так.
Пример 1.
Наверняка у вас дома есть много видео, музыкальных дисков, книг. Удержать все названия в памяти невозможно — одни дал другу на время, другую брат взял, эту читаю, а те... уже не помню, куда положил. База данных здесь может очень помочь — создаем ее на компьютере, вводим данные всех кассет, дисков, книг. И теперь, когда кто-то захочет взять посмотреть у вас фильм, — отметим это в БД (кто, что и на какой срок взял). И не нужно будет вспоминать, а просто открыть базу данных, составить необходимый запрос и получить всю необходимую информацию.
Такой банк данных можно определить как локальный, некоммерческий, потому что есть один пользователь и все данные находятся на одном компьютере.
Пример 2.
Расширим пример 1. Все пользователи в доме объединены в локальную сеть. У одного из пользователей создается сервер этой сети. Вы предоставляете ему свою базу данных и вместе устанавливаете ее на север. Разрешаете доступ к ней другим пользователям, чтобы они могли добавлять данные о своих книгах, кассетах, дисках и делать другие необходимые действия. Назначаете ответственных за поддержание БД в рабочем состоянии.
Теперь можно обмениваться кассетами и дисками не только с близкими друзьями, но и со всеми знакомыми, у которых есть доступ к этому банку данных.
Пример 3.
Ситуация: На крупном предприятии работает 2000 человек. Все их дела хранятся в отделе кадров на бумажных носителях. Чтобы посмотреть дело одного работника, уходит много времени на поиск папки с его данными. А еще некоторые работники увольняются, потом приходят новые.
Выход: Предприятие закупает компьютер и базу данных (вместе с СУБД). Заносит все данные работников в базу данных. Теперь можно за несколько секунд по запросу найти данные на любого работника. Если сделать распределенный доступ к базе данных, то директор сможет не отходя от своего компьютера получить эти данные, находясь даже на другом конце земного шара, через Интернет.
То же самое можно проделать и с данными бухгалтерии, склада, магазина, рекламного отдела и т.д.
Данный пример показывает наиболее распространенную практику применения банков данных — в сфере бизнеса (организации и предприятии).
Пример 4.
Все знают Государственную библиотеку имени В.И. Ленина. Общее число единиц хранения информации в ней (книг, журналов...) исчисляется десятками миллионов. Сейчас реализуется проект по созданию базы данных этих единиц хранения информации. Ведь очень удобно, придя в это заведение, не ждать, пока отыщут необходимое вам произведение, а предварительно самому через Интернет посмотреть его наличие в библиотеке и расположение, быстро найти его и уйти. Время поиска лучше потратить на чтение, не правда ли?
Во многих библиотеках в нашей стране и в мире подобные проекты уже реализованы. Жаль только, что очень немногие открывают доступ через Интернет, и их базы данных доступны только с терминалов в здании самой библиотеке. Но в скором будущем, скорее всего, вариант удаленного доступа к подобным БД станет реальностью.
Основные выводы
Банки данных (БД) уже являются неотъемлемой частью современного мира. Огромное количество организаций использует эту структуру своей информационной системы — от транснациональных корпораций до продуктовых магазинов соседнем доме. Банки данных используют ввиду их преимуществ перед традиционными средствами хранения информации:
полнота хранимой в БД информации и компактность большого объема данных (пример с ситуацией в отделе кадров);
оперативность получения необходимой информации из БД (быстрая реакция системы на запросы, любые расстояния);
возможность различного анализа данных (т.е. информация может не просто храниться в БД, но и быть проанализирована на предмет выявления новых данных, закономерностей, на основе которых принимают решения) и много других.
База данных обеспечивает хранение информации и представляет собой поименованную совокупность данных, организованных по определенным правилам, включающих общие принципы описания, хранения и манипулирования данными.
База данных находится под управлением определенной системы управления базой данных (СУБД).
В базах данных могут храниться различные виды данных. Хранение этих данных, как правило, осуществляется по определенной модели (системе): иерархической, сетевой, реляционной и объектно-ориентированной. Самой распространенной является реляционная модель данных, благодаря простоте, удобству и понятности организации хранения данных.
Все СУБД разделяются на виды. В зависимости от поставленных задач необходимо выбрать ту, которая наиболее удовлетворяет интересам организации и запросам пользователей.
Контрольные вопросы
Что такое банк данных? Какие виды банков данных вы знаете?
Назовите функции администратора БнД.
Какие необходимые условия должны быть соблюдены для успешного функционирования БД?
Что такое базы данных и какие их виды вы знаете?
Что такое реляционная модель данных?
Что такое система управления базой данных?
Задания для самостоятельной работы
Выполните задания к теме 16 в тетради-практикуме.