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

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

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

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

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

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

Реляционные системы управления

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

Все реляционные СУБД поддерживают ANSI стандарт языка SQL и базовые принципы реляционной модели, что обеспечивает работу приложений на разных СУБД. Дополнительно крупные СУБД имеют свои дополнения расширения SQL. Примеры системы управления базами данных для крупных проектов - это Microsoft SQL Server и ORACLE.

Реляционная модель успешно используется и в разработке Интернет-проектов. Примерами являются СУБД MySQL и PostgreSQL.

Технология NoSQL

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

Основные категории баз NoSQL:

  1. «Ключ-Значение». Самые популярные СУБД - Redis, Voldemort, Tokyo Cabinet и Dynomite.
  2. Клоны СУБД BigTable. Разработана Google для внутреннего использования в поисковой системе. Официально BigTable не предлагается, но есть СУБД на ее основе. Это Hadoop, Hypertable и Cassandra.
  3. Документо-ориентированные. Наиболее популярны Berkeley DB XML, MongoD, eXist и CouchDB.
  4. Базы на основе теории графов. Используется в Neo4j, Sones graphDB и AllegroGraph.

Будущее СУБД

Рынок систем управления базами данных продолжает развиваться и все больше склоняется к использованию NoSQL-решений. Конечно, на «классическом» SQL реализовано огромное количество программных систем различной сложности, и за ним стоят такие гиганты рынка как Microsoft и ORACLE. Но с большой долей уверенности можно предположить, что NoSQL в ближайшие годы смогут значительно потеснить лидеров в разработке сложных информационных систем.

Комментарии