21.
Базы данных

Успешно изучив материал, Вы будете знать:

После изучения данной темы Вы будете уметь:

После изучения материала Вы будете обладать навыками:

Основные понятия к теме 21

База данных

Банк данных

СУБД

Фактографические БД

Документальные БД

Индексирование БД

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

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

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

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

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

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

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

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

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

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

Преимущества БнД. Особенности «банковской» организации данных определяют их основные преимущества перед «небанковской» организацией.

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

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

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

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

Требования к БнД. Особенности «банковской» организации данных позволяют сформулировать основные требования, предъявляемые к БнД:

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

Ядром БнД является база данных.

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

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

Банк данных является частью большинства информационных систем. На рис. 21.2 показана связь программ и данных при использовании СУБД.

Базы данных. В зависимости от структуры базы данных делятся на иерархические и реляционные.

Наибольшее распространение в настоящее время получили реляционные БД. В пакете MS Office входит СУБД Access для работыс реляционными БД.

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

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

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

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

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

Различают два класса БД: документальные и фактографические.

  1. Документальные БД служат для работы с документами на естественном языке. Широко используются в справочно-поисковых системах.

  2. Фактографические БД оперируют фактическими сведениями, представленными в формализованном виде. Служат для обработки данных.

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

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

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

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

Физическая модель данных — способ хранения данных в конкретной СУБД. Строится на основе логической модели данных.

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

Основные выводы

  1. Банк данных (БнД) — это система специальным образом организованных данных (баз данных), программных, технических, языковых, организационно-методических средств, предназначенных для обеспечения централизованного накопления и коллективного многоцелевого использования данных.

  2. Банк данных состоит из Базы данных и СУБД.

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

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

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

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

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

    • централизованное управление данными;

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

  4. Требования к БнД:

    • адекватность отображения предметной области (полнота, целостность и непротиворечивость данных, актуальность информации, т.е. ее соответствие состоянию объекта на данный момент времени);

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

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

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

    • обеспечение взаимной независимости программ и данных;

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

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

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

    • концептуальная модель данных;

    • логическая модель данных;

    • физическая модель данных.

Контрольные вопросы

  1. Для каких целей используются банки данных?

  2. В чем их преимущество банков данных по сравнению с другими способами хранения информации?

  3. Чем отличается СУБД от БД?

  4. Какие виды баз данных используются в информационных системах? В чем их отличие?

  5. Зачем проводят индексацию данных?

  6. Для чего создают модели данных?

Интернет-источники

  1. http://www.intuit.ru/department/database/databases/

Задания для самостоятельной работы

Выполните задания к теме 21 в тетради-практикуме.