Типы баз данных. Понятие базы данных и что такое субд Предназначены бд

Эта статья посвящена понятию базы данных. Различные базы данных сегодня активно используются при работе с ПК - персональными компьютерами. Для краткости введем принятую аббревиатуру и для базы данных - БД.

Что такое база данных: определение и функции

На вопрос, что такое база данных, информатика дает очень четкий ответ.

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

БД называется также такая совокупность данных, которая хранится на ПК в соответствии с определенной схемой.

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

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

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

Реляционной БД называется такая БД, которая основана на реляционной модели данных. Более точное определение мы приведем, так сказать, из первых уст. Напомним, что реляционную модель данных предложил и впоследствии реализовал американский математик Кодд в 1970 году. А в статье от 1985 года он же сформулировал 12 правил, по которым можно определить, что данная БД является реляционной. Приведем их здесь.

  1. Правило информации. Вся информация в БД должна быть представлена только в виде значений, содержащихся в таблицах, то есть на логическом уровне.
  2. Гарантированный доступ. Доступ к каждому элементу БД должен осуществляться с помощью имени таблицы имени столбца и первичного ключа.
  3. Поддержка недействительных значений. Нулевые значения в БД должны использоваться для представления отсутствующих данных и должны отличаться от любых числовых символов и символа пробела.
  4. Динамический каталог. Описание БД на логическом уровне представляется в таком же виде, что и основные данные.
  5. Исчерпывающий подъязык данных. В реляционной БД должен существовать особый символьный язык с четким синтаксисом, который поддерживает различные элементы самой БД: обработку, определение данных, границы транзакций и т.п.
  6. Обновление представлений. Делает доступными все представления, которые возможно обновить.
  7. Добавление, обновление и удаление. Возможность работать с БД при этих операциях.
  8. Независимость физических данных.
  9. Независимость логических данных.
  10. Независимость условий целостности. Существование возможности определения условий целостности, особые для каждой реляционной БД.
  11. Независимость распространения. То есть независимость от условий конкретного пользователя.
  12. Правило единственности. Это отсутствие возможности использования низкоуровневого языка для обработки данных на языке высокого уровня (в случае нескольких записей сразу, например).

Связь информационных систем и баз данных

Определение 1

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

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

Определение 3

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

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

Определение 4

Совокупность правил и принципов поведения объектов предметной области называют бизнес-логикой ИС.

Пример 1

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

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

Классификация информационных систем

По сферам применения ИС делятся на

  • Информационно-поисковые (ИПС);
  • Системы обработки данных (СОД).

Основной задачей ИПС, как правило, является поиск и извлечение части хранимых данных, удовлетворяющих некоторому критерию отбора. Классическим примером ИПС являются поисковые сервера Интернет. Обращения пользователей к СОД, как правило, заканчивается добавлением новых данных или редактированием уже имеющихся. Хранимые данные обрабатываются программно и выводятся в результате отчетов и документов. Классический пример СОД – это ИС банков и супермаркетов.

В зависимости от вида информационных ресурсов, с которыми работает ИС, их делят на два класса:

  • Документальные;
  • Фактографические.

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

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

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

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

Если вы планируете работать в качестве администратора базы данных, Вы должны быть знакомы с некоторыми инструментами, такими как Oracle, SQL server и Sybase, так как реляционная база данных является самой распространенной из всех баз данных.

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

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

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

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

Это цифровая база данных, которая хранит данные в таблице в виде строк и столбцов. У каждой строки есть уникальный ключ. Это помогает связыванию одной таблицы в другую (которая упоминается как внешний ключ). В общем, у каждого объекта есть таблица―строки, его экземпляр, а столбцы имеют значения, приписываемые экземпляру. В этом типе базы данных, все данные хранятся и извлекаются с помощью «отношений», которые не являются только коллекциями таблиц; отсюда и название "реляционные базы данных".

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

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

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

Базы данных конечного пользователя

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

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

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

Гипермедийные базы данных

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

Хранилища данных

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

В зависимости от объема данных, базы данных могут быть классифицированы в три основных типа.

Общие базы данных

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

Дисциплинарно-специфические базы данных

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

Предметно-специфические базы данных

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

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

В широком смысле слова база данных (БД) - это совокупность сведений о конкретных объектах реального мира в какой-либо предметной области.

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

База данных (в узком смысле слова) — поименованная совокупность структурированных данных относящихся к некоторой предметной области

В реальной деятельности в основном используют системы БД.

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

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

Однопользовательская система (single-user system) - это система, в которой в одно и то же время к БД может получить доступ не более одного пользователя.

Многопользовательская система (multi-user system) - это система, в которой в одно и то же время к БД может получить доступ несколько пользователей.

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

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

Система баз данных содержит четыре основных элемента: данные, аппаратное обеспечение, программное обеспечение и пользователи .

Данные в БД являются интегрированными и общими .

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

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

К аппаратному обеспечению относятся:

Накопители для хранения информации вместе с подсоединенными устройствами ввода-вывода, каналами ввода-вывода и т.д.

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


ТУТ ВОЗНИКЛИ ВОПРОСЫ

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

В этой таблице данные - это собственно номера телефонов, адреса и ФИО., т.е. строки «Иванов Иван Иванович», «32-43-12» и т.п., а названия столбцов этой таблицы, т.е. строки «ФИО», «Номер телефона» и «Адрес» задают смысл этих данных, их семантику.

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

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

Для точности дадим определение базы данных , предлагаемое Глоссарий.ру

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

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

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

Примеры объектных СУБД : Cache , GemStone (от Servio Corporation), ONTOS (ONTOS).

В последнее время производители СУБД стремятся соединить два этих подхода и проповедуют объектно-реляционную модель представления данных. Примеры таких СУБД - IBM DB2 for Common Servers, Oracle8 .

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

Ключи

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

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

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

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

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

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

Например, у нас есть три таблицы: содержащая информацию об исторических личностях (Persons), содержащая информацию об их изобретениях (Artifacts) и содержащая изображения как личностей, так и артефактов (Images) (рис 10.1).

Первичным ключом во всех этих таблицах является поле id (идентификатор). В таблице Artifacts есть поле author, в котором записан идентификатор, присвоенный автору изобретения в таблице Persons. Каждое значение этого поля является внешним ключом для первичного ключа таблицы Persons. Кроме того, в таблицах Persons и Artifacts есть поле photo, которое ссылается на изображение в таблице Images.

Эти поля также являются внешними ключами для первичного ключа таблицы Images и устанавливают однозначную логическую связь Persons-Images и Artifacts-Images. То есть если значениевнешнего ключа photo в таблице личности равно 10, то это значит, что фотография этой личности имеет id=10 в таблице изображений. Таким образом, внешние ключи используются для организации связей между таблицами базы данных (родительскими и дочерними) и для поддержания ограничений ссылочной целостности данных.

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

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

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

Основные классификации баз данных

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

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

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

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

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

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

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

К основным понятиям сетевой модели базы данных относятся: уровень, элемент (узел), связь.

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

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

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

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

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

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

Объектные базы данных -- это модель работы с объектными данными.

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

Объектно-ориентированная база данных (ООБД) -- база данных, в которой данные моделируются в виде объектов, их атрибутов, методов и классов.

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

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

Обязательные характеристики

  • 1. Поддержка сложных объектов. В системе должна быть предусмотрена возможность создания составных объектов за счет применения конструкторов составных объектов. Необходимо, чтобы конструкторы объектов были ортогональны, то есть любой конструктор можно было применять к любому объекту.
  • 2. Поддержка индивидуальности объектов. Все объекты должны иметь уникальный идентификатор, который не зависит от значений их атрибутов.
  • 3. Поддержка типов и классов. Требуется, чтобы в ООБД поддерживалась хотя бы одна концепция различия между типами и классами. (Термин «тип» более соответствует понятию абстрактного типа данных. В языках программирования переменная объявляется с указанием ее типа. Компилятор может использовать эту информацию для проверки выполняемых с переменной операций на совместимость с ее типом, что позволяет гарантировать корректность программного обеспечения. С другой стороны класс является неким шаблоном для создания объектов и предоставляет методы, которые могут применяться к этим объектам. Таким образом, понятие «класс» в большей степени относится ко времени исполнения, чем ко времени компиляции.)
  • 4. Поддержка наследования типов и классов от их предков. Подтип, или подкласс, должен наследовать атрибуты и методы от его супертипа, или суперкласса, соответственно.
  • 5. Перегрузка в сочетании с полным связыванием. Методы должны применяться к объектам разных типов. Реализация метода должна зависеть от типа объектов, к которым данный метод применяется. Для обеспечения этой функциональности связывание имен методов в системе не должно выполняться до времени выполнения программы.
  • 6. Вычислительная полнота. Язык манипулирования данными должен быть языком программирования общего назначения.
  • 7. Набор типов данных должен быть расширяемым. Пользователь должен иметь средства создания новых типов данных на основе набора предопределенных системных типов. Более того, между способами использования системных и пользовательских типов данных не должно быть никаких различий.

Классификация БД по среде физического хранения:

  • · БД во вторичной памяти (традиционные): средой постоянного хранения является периферийная энергонезависимая память (вторичная память) -- как правило, жёсткий диск. В оперативную память СУБД помещает лишь кэш и данные для текущей обработки;
  • · БД в оперативной памяти (in-memory databases): все данные находятся в оперативной памяти;
  • · БД в третичной памяти (tertiary databases): средой постоянного хранения является отсоединяемое от сервера устройство массового хранения (третичная память), как правило, на основе магнитных лент или оптических дисков. Во вторичной памяти сервера хранится лишь каталог данных третичной памяти, файловый кэш и данные для текущей обработки; загрузка же самих данных требует специальной процедуры.

Классификация по содержимому:

  • · Географическая
  • · Историческая
  • · Научная
  • · Мультимедийная.

Классификация по степени распределённости:

  • · Централизованная, или сосредоточенная (англ. centralized database): БД, полностью поддерживаемая на одном компьютере.
  • · Распределённая (англ. distributed database): БД, составные части которой размещаются в различных узлах компьютерной сети в соответствии с каким-либо критерием.
  • o Неоднородная (англ. heterogeneous distributed database ): фрагменты распределённой БД в разных узлах сети поддерживаются средствами более одной СУБД
  • o Однородная (англ. homogeneous distributed database): фрагменты распределённой БД в разных узлах сети поддерживаются средствами одной и той же СУБД.
  • o Фрагментированная, или секционированная (англ. partitioned database): методом распределения данных является фрагментирование (партиционирование, секционирование), вертикальное или горизонтальное.
  • o Тиражированная (англ. replicated database): методом распределения данных является тиражирование

Так же можно выделить:

Пространственная (англ. spatial database): БД -- база данных (БД), оптимизированная для хранения и выполнения запросов к данным о пространственных объектах, представленных некоторыми абстракциями: точка, линия и др.

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

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

Пространственно-временная (англ. spatial-temporal database) БД: БД, в которой одновременно поддерживается одно или более измерений в аспектах как пространства, так и времени.

Похожие публикации