Реляционная база данных. Что это такое и как работает.

Процесс проектирования базы данных состоит из следующих этапов:

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

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

Логическая фаза состоит из нескольких этапов. Далее они все рассмотрены.

Сбор требований

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

Определение сущностей

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

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

Сущности состоят из атрибутов (столбцов таблицы) и записей (строк в таблице).

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

Любая таблица имеет следующие характеристики:

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

На этом этапе вам необходимо выявить все категории информации (сущности), которые будут храниться в базе данных.

Определение атрибутов

Атрибут представляет свойство, описывающее сущность. Атрибуты часто бывают числом, датой или текстом. Все данные, хранящиеся в атрибуте, должны иметь одинаковый тип и обладать одинаковыми свойствами. В физической модели атрибуты называют колонками. После определения сущностей необходимо определить все атрибуты этих сущностей. На диаграммах атрибуты обычно перечисляются внутри прямоугольника сущности. На рисунке вы найдете пример базы данных «Дома», только теперь для сущностей из этой базы определены некоторые атрибуты. image Для каждого атрибута определяется тип данных, их размер, допустимые значения и любые другие правила. К их числу относятся правила обязательности заполнения, изменяемости и уникальности. Правило обязательности заполнения определяет, является ли атрибут обязательной частью сущности. Если атрибут является необязательной частью сущности, то он может принимать NULL-значение, иначе — нет. Также вы должны определить, является ли атрибут изменяемым. Значения некоторых атрибутов не могут измениться после создания записи. И, наконец, вам нужно определить, является ли атрибут уникальным. Если это так, то значения атрибута не могут повторяться.

Ключи

Возможный ключ

Первичные ключи

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

Альтернативные ключи

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

Внешние ключи

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

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

Определение связей между сущностями

Один-к-одному

Каждой записи первой сущности соответствует только одна запись из второй сущности. А каждой записи второй сущности соответствует только одна запись из первой сущности. Например, есть две сущности: Люди и Свидетельства о рождении. И у одного человека может быть только одно свидетельство о рождении.

Один-ко-многим

Каждой записи первой сущности могут соответствовать несколько записей из второй сущности. Однако каждой записи второй сущности соответствует только одна запись из первой сущности. Например, есть две сущности: Заказ и Позиция заказа. И в одном заказе может быть много товаров.

Многие-ко-многим

  • Обязательное отношение означает, что для каждой записи из первой сущности непременно должны присутствовать связанные записи во второй сущности.
  • Необязательное отношение означает, что для записи из первой сущности может и не существовать записи во второй сущности.

Нормализация

Первая нормальная форма

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

Для приведения сущности Дом в первую нормальную форму необходимо удалить повторяющиеся группы значений, т. е. удалить атрибуты Владелец 1—3, поместив их в отдельную сущность. Результат (Сущность Дом, приведенная к первой нормальной форме):

Вторая нормальная форма

Таблица во второй нормальной форме содержит только те данные, которые к ней относятся. Значения не ключевых атрибутов сущности зависят от первичного ключа. Если более точно, то атрибуты зависят от первичного ключа, от всего первичного ключа и только от первичного ключа. Для соответствия второй нормальной форме сущности должны быть в первой нормальной форме. Например, у сущности Дом на рисунке есть атрибут Цена литра бензина, который не имеет ничего общего с домами. Этот атрибут удаляется (или вы можете перенести его в другую сущность). А также мы переносим атрибут Мэр в отдельную сущность — этот атрибут зависит от города, где находится дом, а не от дома. На рисунке изображена сущность Дом во второй нормальной форме (Сущность Дом, приведенная ко второй нормальной форме).

Третья нормальная форма

В третьей нормальной форме исключаются атрибуты, не зависящие от всего ключа. Любая сущность, находящаяся в третьей нормальной форме, находится также и во второй. Это самая распространенная форма базы данных. В третьей нормальной форме каждый атрибут зависит от ключа, от всего ключа и ни от чего, кроме ключа. Например, у сущности Владелец дома на рисунке есть атрибут Знак зодиака, который зависит от даты рождения владельца дома, а не от его имени (которое является ключом). Для приведения сущности Владелец дома необходимо создать сущность Знаки зодиака и перенести туда атрибут Знак зодиака (Сущность Владелец дома, приведенная к третьей нормальной форме):

Ограничения

Ограничения (constrains) — это правила, за соблюдением которых следит система управления базы данных. Ограничения определяют множество значений, которые можно вводить в столбец или столбцы. Например, вы не хотите, чтобы сумма заказа в вашем очень крутом магазине была бы меньше 500 рублей. Вы просто устанавливаете ограничение на колонку Сумма заказа.

Хранимые процедуры

ПРИМЕЧАНИЕ Хранимые процедуры находятся в базе данных и выполняются на сервере базы данных. Как правило, они быстрее операторов SQL, поскольку хранятся в компилированном виде.

Целостность данных

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

Триггеры

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

Деловые правила

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

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

Все эти возможности можно применять для реализации деловых правил в базе данных.

Физическая модель

Денормализация

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

1. Определение и назначение баз данных. С самого начала развития вычислительной техники образова¬лись два основных направле-ния ее использования. Первое направление — применение вычислительной техники для выполнения численных расчетов, которые слишком долго или вообще невозможно производить вручную.

Второе направление — это использование средств вычислительной техники в автоматических или автоматизированных информационных системах.

В самом широком смысле информационная система представляет собой программный комплекс, функции ко¬торого состоят в поддержке надежного хранения информации в па¬мяти компьютера, выполнении специфических для данного прило¬жения преобразований информации и/или вычислений, предостав¬лении пользователям удобного и легко осваи-ваемого интерфейса. Обычно объемы информации, с которыми приходится иметь дело таким системам, достаточно велики, а сама информация имеет до¬статочно сложную структуру. Классическими примерами информа¬ционных систем являются банковские сис-темы, системы резерви¬рования авиационных или железнодорожных билетов, мест в гости¬ницах и т. д. Второе направление возникло несколько позже первого. Это связано с тем, что на заре вычислительной техники компьютеры об¬ладали ограниченными возможностями. Надеж-ное и долговремен¬ное хранение информации возможно только при наличии запоми¬нающих устройств, сохраняющих информацию после выключения электрического пита-ния. Оперативная память этим свойством обычно не обладает. Используемые в ранних ЭВМ два вида уст¬ройств внешней памяти, магнитные ленты и барабаны были несо¬вершенными. Емкость магнитных лент была достаточно велика, не по своей физической природе они обеспечивали последовательный доступ к данным. Магнитные барабаны да-вали возможность произ¬вольного доступа к данным, но были ограниченного размера. По-яв¬ление соответствующих носителей данных, в первую очередь, жест¬ких дисков, дало толчок к работам по созданию информационных компьютерных систем. Основу любой информационной системы составляет база дан¬ных — это набор данных, которые организованы специальным об¬разом. В настоящее время действует Закон «О правовой охране про¬грамм для электронных вы-числительных машин и баз данных» № 3523-1 от 23.09.92. В этом законе дается следую-щее определение базы данных: «База данных — это объективная форма представле¬ния и организации совокупности данных (например, статей, расче¬тов), систематизированных таким образом, чтобы эти данные могли быть найдены и обработаны с помощью ЭВМ». Файл — это место фактического хранения информации. В файле различают структуру и собственно данные. Структура файла остает¬ся неизменной, а информация (данные) может изменяться при опе¬рациях обращения к файлу.  В качестве основной структурообразую¬щей единицы хранимых данных принимается хра-нимая запись. Хра¬нимые записи состоят из фиксированной совокупности полей, служа-щих для представления значений какого-либо типа (чисел, ли¬терных строк, дат, булевых значений, денежных единиц и т. д.) и могут иметь формат фиксированной или переменной длины. По¬лям, как правило, присваиваются уникальные в данной базе имена, ассоциируе-мые с предметной областью. Если в качестве примера базы данных рассмотреть картотеку сотрудников некоторого абст¬рактного предприятия, то единицей хранимых данных может быть запись персональной информации по каждому сотруднику с поля¬ми: табельный номер (формат поля — целое число); фамилия, имя, отчество (формат поля — литерная строка определенной длины); дата рождения (формат поля — дата); заработная плата (формат — действительное число) и т. д. Информационные системы ориентированы главным образом на хранение, выбор и моди-фикацию постоянно существующей инфор¬мации. Структура информации зачастую очень сложна, и хотя структуры данных различны в разных информационных системах, между ними часто бывает много общего. На начальном этапе использования вычислительной техники для управления информаци¬ей проблемы структуризации данных решались инди-видуально в ка¬ждой информационной системе. Поскольку информационные системы требуют сложных струк¬тур данных, эти дополни-тельные индивидуальные средства управле¬ния данными являлись существенной частью информационных сис¬тем и практически повторялись от одной системы к другой. Стрем¬ление выделить и обобщить общую часть информационных систем, ответственную за управление сложноструктурированными данными, явилось первой побудительной причи-ной создания систем управле¬ния базами данных — СУБД. В наиболее полном варианте СУБД может иметь следующие компоненты: • среда пользователя, дающая возможность непосредственного управления данными с клавиатуры; • алгоритмический язык для программирования прикладных систем обработки данных, реализованный как интерпретатор. Последний позволяет быстро создавать и отлаживать про¬граммы; • компилятор для придания завершенной программе вида гото¬вого коммерческого про-дукта в форме независимого ЕХЕ-файла; • программы-утилиты быстрого программирования рутинных операций (генераторы отче-тов, форм, таблиц, экранов, меню и других приложений). Собственно СУБД — это инструментальная оболочка пользова¬теля. Ввиду того, что такая среда ориентирована на немедленное удовлетворение его запросов, это всегда система-интерпретатор. На¬личие в СУБД языка программирования позволяет создавать слож¬ные системы обработки данных, ориентированные под конкретные задачи и под конкретного пользователя. Автоматизированные информационные системы (АИС), основу которых составляют базы данных, появились в 60-х годах в воен¬ной промышленности и в бизнесе — там, где были накоплены зна¬чительные объемы полезных данных. Первоначально АИС были ориенти-рованы лишь на работу с информацией фактического ха¬рактера — числовыми или тексто-выми характеристиками объектов. Затем, по мере развития техники, появилась возможность обраба¬тывать текстовую ин-формацию на естественном языке. Принципы хранения разных видов информации в АИС сходны, но алгоритмы ее обработ-ки определяются характером информаци¬онных ресурсов.  Соответственно были выделены два класса АИС: документальные и фактографические. Документальные АИС служат для работы с документами на есте¬ственном языке. Наибо-лее распространенный тип документальных АИС — информационно-поисковые системы, предназначенные для накопления и подбора документов, удовлетворяющих заданным критериям. Они могут выполнять просмотр и подборку моногра¬фий, публикаций в перио-дике, сообщений пресс-агентств, текстов законодательных актов и т. д. Фактографические АИС оперируют фактическими сведениями, представленными в формализованном виде. Фактографические АИС используются для решения задач обра-ботки данных. Обработка данных — специальный класс решаемых на ЭВМ за¬дач, связанных с вводом, хранением, сортировкой, отбором и груп¬пировкой записей данных однородной структуры. Задачи этого класса решаются при учете товаров в магазинах и на складах, начис¬лении зарплаты, управлении производством, финансами, телеком¬муникациями. Различают фактографические АИС оперативной обработки дан¬ных, подразумевающие быстрое обслуживание относительно про¬стых запросов от большого числа пользователей,  и фактографиче¬ские АИС аналитической обработки, ориентированные на выполне¬ние сложных запросов, требующих: • проведения статистической обработки исторических (накоп¬ленных за некоторый проме-жуток времени) данных; • моделирования процессов предметной области; • прогнозирования развития этих процессов. Таким образом, применение АИС и баз дан-ных характеризует¬ся, но не ограничивается следующими областями: • организация хранилищ данных; • системы анализа данных; • системы принятия решений; • мобильные и персональные БД; • географические базы данных; • мультимедиа базы данных; • распределенные информационные системы; • базы данных для всемирной сети World Wide Web. 3.Основные понятия баз данных Основой многих информационных систем (прежде всего, информационно-справочных систем) являются базы дан¬ных. Повторим основные понятия, связанные с ба-зами дан¬ных, с которыми вы познакомились в базовом курсе инфор¬матики. База данных (БД) — организованная совокупность дан¬ных, предназначенная для длительного хранения во внешней памяти ЭВМ, постоянного обновления и ис¬пользования. В большинстве случаев базу данных можно рассматри¬вать как информационную модель некоторой реальной сис¬темы, например книжного фонда библиотеки, кадрового со¬става предприятия, учебного процесса в школе и так далее.  Такую систему называют предметной областью базы дан¬ных и информационной системы, в которую она входит. Один из признаков, по которому можно классифициро¬вать базы данных, — ха-рактер хранимой информации.  4. Классификация баз данных Фак¬тографические БД содержат данные, представляемые в краткой форме и строго фиксированных форматах. Такие БД являются аналогами бумажных картотек, на-пример, библиотечного каталога или каталога видеотеки.  Другой тип баз данных — документальные БД.  Здесь аналогом яв¬ляются архивы документов, например, архив судебных дел, ар-хив исторических документов и пр. В дальнейшем мы бу¬дем рассматривать лишь факто-графические БД. Классификация по способу хранения данных делит БД на централизованные и распределенные.  Вся информация в централизованной БД хранится на одном компьютере. Это может быть автономный ПК или сервер сети, к которому имеют доступ пользователи-клиенты.  Распределенные БД используются в локальных и глобальных компьютерных се¬тях. В  последнем случае разные части базы данных хранятся на разных компьютерах Известны три разновидности структуры данных:  — иерархическая, — сетевая , — табличная.  Соответственно по признаку структуры базы данных делятся на: — иерархические БД, — сетевые БД и — реляционные (табличные) БД.  5. Основные понятия реляционных баз данных. В последнее время наиболее распространенным типом баз данных стали реляционные БД. Известно, что любую структуру данных можно свести к табличной форме. Структурированное представление данных называется моделью данных. Основной информационной единицей реляционной БД является таблица.  Реляционные БД исполь¬зуют табличную модель данных. База данных может со¬стоять из одной таблицы — однотабличная БД, или из множества взаимосвязанных таблиц — многотабличная БД. Структурными составляющими таблицы являются записи и поля.

Поле 1 Поле 2 Поле 3 Поле 4
Запись 1
Запись 2
Запись 3
Запись 4

Каждая запись содержит информацию об отдельном объ¬екте системы: одной книге в биб-лиотеке, одном сотруднике предприятия и т. п.  А каждое поле — это определенная характеристика (свойство, атрибут) объектов: название книги, автор книги, фамилия сотрудника, год рождения и т. п. .Поля таблицы должны иметь несовпадающие имена. Для каждой таблицы реляционной БД должен быть опре¬делен главный ключ — имя поля или нескольких полей, сово¬купность значений кото-рых однозначно определяют запись.  Иначе говоря, значение главного ключа не должно повторя¬ться в разных записях.  Например, в библиотечной базе дан¬ных таким ключом может быть выбран инвентарный номер книги, который не может совпадать у разных книг. Для строчного представления структуры таблицы приме¬няется следующая фор-ма: Имя _ таблицы (ИМЯ-ПОЛЯ-1, ИМЯ _ ПОЛЯ_2, …, ИМЯ _ ПОЛЯ_N) Подчеркиваются имена полей, составляющие главный ключ. В теории реляционных баз данных таблица называется отношением (от англ., «relation» — отношение). Отсюда происходит название «реляционные базы данных».  Имя _ таблицы — это имя отношения. Примеры отношений: Библиотека (ИНВ_НОМЕР, АВТОР, НАЗВАНИЕ, ГОД_ИЗД, ИЗДАТЕЛЬСТВО); Больница (ПАЛАТА, НОМЕР_МЕСТА, ПАЦИЕНТ, ДАТА_ПОСТУПЛЕНИЯ, ДИАГНОЗ, ПЕРВИЧНЫЙ). Каждое поле таблицы имеет определенный тип.  Тип — это множество значений, которые поле может принимать, и множество операций, которые можно выполнять над этими значениями.  Существуют четыре основных типа для полей БД: Для полей таблиц «Библиотека» и «Больница» могут быть установлены следующие типы: — символьный: АВТОР, НАЗВАНИЕ, ИЗДАТЕЛЬСТВО, ПАЦИЕНТ, ДИ-АГНОЗ; — числовой: ИНВ_НОМЕР, ГОД_ИЗД, ПАЛАТА, НО-МЕР_МЕСТА; — дата: ДАТА_ПОСТУПЛЕНИЯ; — логический: ПЕРВИЧНЫЙ,   Поле «ПЕРВИЧНЫЙ» нужно для обозначения того, поступил ли больной в больницу с данным диагнозом впервые или повторно.  Те записи, где значения этого поля равноTRUE (ИСТИНА), относятся к первичным больным,  значе¬ние FALSE (ЛОЖЬ) отмечает повторного больного.  Таким образом, поле логического типа может принимать только два значения. В таблице «Больница» используется составной ключ — состоящий из двух полей: «ПАЛАТА» и «НОМЕР_МЕСТА».  Только сочетание их значений не повторяется в разных записях (ведь фамилии пациентов могут совпадать). 6. Понятия о СУБД и их возможностях Наибольшее распространение на персональных компьютерах получили реляционные БД, использующие табличное представление данных. Основные действия, которые пользователь может выполнять с помощью СУБД: — создание структуры БД; — заполнение БД информацией; — изменение (редактирование) структуры и содержания БД; — поиск информации в БД; — сортировка данных — защита БД; — проверка целостности БД. База данных — организованная совокупность данных, предназначенная для дли-тельного хранения во внешней па¬мяти ЭВМ, регулярного обновления и использования. База данных представляет собой информационную мо¬дель определенной пред-метной области. Классификация баз данных возможна по характеру информации:  фактографические и документальные БД;  по структуре данных:  иерархические, сетевые, реляционные БД;  по способу хранения данных:  централизованные и рас¬пределенные БД. Реляционные БД (РБД) — наиболее распространенный тип БД, использующий табличное представление данных. Основные понятия организации данных в РБД:  таблица, запись, поле, тип поля, главный ключ таблицы. СУБД (система управления базами данных) — программное обеспечение для работы с базами данных.

ТолкованиеПеревод

База данных
Запрос «БД» перенаправляется сюда; см. также другие значения.

Ба́за да́нных — представленная в объективной форме совокупность самостоятельных материалов (статей, расчётов, нормативных актов, судебных решений и иных подобных материалов), систематизированных таким образом, чтобы эти материалы могли быть найдены и обработаны с помощью электронной вычислительной машины (ЭВМ) (Гражданский кодекс РФ, ст. 1260).

imageimage Нажмите для увеличения

Многие специалисты указывают на распространённую ошибку, состоящую в некорректном использовании термина «база данных» вместо термина «система управления базами данных», и указывают на необходимость различения этих понятий.[1]

Проблемы определения

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

Определения из международных стандартов:

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

Определения из авторитетных монографий:

  • База данных — организованная в соответствии с определёнными правилами и поддерживаемая в памяти компьютера совокупность данных, характеризующая актуальное состояние некоторой предметной области и используемая для удовлетворения информационных потребностей пользователей.[4]
  • База данных — некоторый набор перманентных (постоянно хранимых) данных, используемых прикладными программными системами какого-либо предприятия.[5]
  • База данных — совместно используемый набор логически связанных данных (и описание этих данных), предназначенный для удовлетворения информационных потребностей организации.[6]

В определениях наиболее часто (явно или неявно) присутствуют следующие отличительные признаки[7]:

  1. БД хранится и обрабатывается в вычислительной системе. Таким образом, любые внекомпьютерные хранилища информации (архивы, библиотеки, картотеки и т. п.) базами данных не являются.
  2. Данные в БД логически структурированы (систематизированы) с целью обеспечения возможности их эффективного поиска и обработки в вычислительной системе. Структурированность подразумевает явное выделение составных частей (элементов), связей между ними, а также типизацию элементов и связей, при которой с типом элемента (связи) соотносится определённая семантика и допустимые операции.[8]
  3. БД включает схему, или метаданные, описывающие логическую структуру БД в формальном виде (в соответствии с некоторой метамоделью). В соответствии с ГОСТ Р ИСО МЭК ТО 10032-2007, «постоянные данные в среде базы данных включают в себя схему и базу данных. Схема включает в себя описания содержания, структуры и ограничений целостности, используемые для создания и поддержки базы данных. База данных включает в себя набор постоянных данных, определенных с помощью схемы. Система управления данными использует определения данных в схеме для обеспечения доступа и управления доступом к данным в базе данных».[2]

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

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

История

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

В широком аспекте понятие истории баз данных обобщается до истории любых средств, с помощью которых человечество хранило и обрабатывало данные. В таком контексте упоминаются, например, средства учёта царской казны и налогов в древнем Шумере (4000 г. до н. э.),[9] узелковая письменность инков — кипу, клинописи, содержащие документы Ассирийского царства и т. п. Следует помнить, что недостатком этого подхода является размывание понятия «база данных» и фактическое его слияние с понятиями «архив» и даже «письменность».

История баз данных в узком аспекте рассматривает базы данных в традиционном (современном) понимании. Эта история начинается с 1955 года, когда появилось программируемое оборудование обработки записей. Программное обеспечение этого времени поддерживало модель обработки записей на основе файлов. Для хранения данных использовались перфокарты.[9]

Оперативные сетевые базы данных появились в середине 1960-х. Операции над оперативными базами данных обрабатывались в интерактивном режиме с помощью терминалов. Простые индексно-последовательные организации записей быстро развились к более мощной модели записей, ориентированной на наборы. За руководство работой Data Base Task Group (DBTG), разработавшей стандартный язык описания данных и манипулирования данными, Чарльз Бахман получил Тьюринговскую премию.

В это же время в сообществе баз данных COBOL была проработана концепция схем баз данных и концепция независимости данных.

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

Сам термин database (база данных) появился в начале 1960-х годов, и был введён в употребление на симпозиумах, организованных фирмой SDC (System Development Corporation) в 1964 и 1965 годах, хотя понимался сначала в довольно узком смысле, в контексте систем искусственного интеллекта. В широкое употребление в современном понимании термин вошёл лишь в 1970-е годы.[10]

Виды баз данных

Существует огромное количество разновидностей баз данных, отличающихся по различным критериям. Например, в «Энциклопедии технологий баз данных»,[4] по материалам которой написан данный раздел, определяются свыше 50 видов БД.

Основные классификации приведены ниже.

Классификация по модели данных

Примеры:

Смотреть что такое “База данных” в других словарях:

  • база данных — БД Совокупность данных, организованных по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования данными, независимая от прикладных программ. [ГОСТ 20886 85] база данных БД Набор данных, который достаточен… …   Справочник технического переводчика

  • БАЗА ДАННЫХ — как объект правовой охраны труда представляет собойобъективную форму представления и организации совокупности данных (на пример, статей, расчетов), систематизированных таким образом, чтобы эти данные могли быть найдены и обработаны с помощью ЭВМ …   Финансовый словарь

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

  • БАЗА ДАННЫХ — БАЗА ДАННЫХ, массив данных, созданный или полученный компьютером. ДАННЫЕ обычно хранятся на МАГНИТНЫХ ДИСКАХ ИЛИ ЦИФРОВЫХ АУДИОКАССЕТАХ. Специальная программа базы данных позволяет компьютеру создавать файлы данных, а затем производить поиск и… …   Научно-технический энциклопедический словарь

  • База данных — (англ. data base) как объект правовой охраны объективная форма представления и организации совокупности данных (напр., статей, расчетов), систематизированных таким образом, чтобы эти данные могли быть найдены и обработаны с помощью ЭВМ.… …   Энциклопедия права

  • БАЗА ДАННЫХ — (английское data base), совокупность однородных данных, организованных по определенным правилам и предназначенных для длительного хранения и постоянного использования в каком либо конкретном виде человеческой деятельности (например, в медицине,… …   Современная энциклопедия

  • База данных — (английское data base), совокупность однородных данных, организованных по определенным правилам и предназначенных для длительного хранения и постоянного использования в каком либо конкретном виде человеческой деятельности (например, в медицине,… …   Иллюстрированный энциклопедический словарь

  • БАЗА ДАННЫХ — упорядоченная совокупность данных, предназначенных для хранения, накопления и обработки с помощью ЭВМ. Для создания и ведения базы данных (обновления, обеспечения доступа к ним по запросам и выдачи их пользователю) используется набор языковых и… …   Большой Энциклопедический словарь

  • БАЗА ДАННЫХ — по законодательству РФ об авторском праве объективная форма представления и организации совокупности данных (статей, расчетов и т.д.), систематизированных таким образом, чтобы эти данные могли быть найдены и обработаны с помощью ЭВМ. Объект… …   Юридический словарь

  • База данных — объективная форма представления и организации совокупности данных (напр., статей, расчетов), систематизированных таким образом, чтобы они могли быть найдены и обработаны с помощью ЭВМ. EdwART. Словарь терминов МЧС, 2010 …   Словарь черезвычайных ситуаций

  • БАЗА ДАННЫХ — совокупность данных, числовых значений показателей, используемых при анализе и расчетах. Райзберг Б.А., Лозовский Л.Ш., Стародубцева Е.Б.. Современный экономический словарь. 2 е изд., испр. М.: ИНФРА М. 479 с.. 1999 …   Экономический словарь

Книги

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

Другие книги по запросу «База данных» >>

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий