RDBMS (Relational Database Management System)

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 19:49, 27 ноября 2017.
Общая структура реляционной базы данных.

Реляционная система управления базами данных (RDBMS) - это программная система, обеспечивающая доступ к реляционной базе данных, изобретенной британским ученым из IBM Эдгаром Коддом.

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

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

История

В 1974 году компания IBM начала исследовательский проект по разработке прототипа РСУБД System R.[Источник 1] Её первым коммерческим продуктом был IBM SQL/DS, выпущенный в 1982 году.

Однако первой коммерчески доступной RDBMS была Oracle, выпущенная в 1979 году компанией Relational Software (в настоящее время Oracle Corporation).[Источник 2]

Другие примеры СУБД включают DB2, SAP Sybase ASE и Informix. В 1984 году появилась первая RDBMS для Macintosh под кодовым названием Silver Surfer, позже она была выпущена в 1987 году под названием 4th Dimension и известна сегодня как 4D.[Источник 3]

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

В связи с резким ростом популярности РСУБД в 1980-х годах многие компании стали позиционировать свои СУБД как «реляционные» в рекламных целях, иногда не имея для этого достаточных оснований, вследствие чего автор реляционной модели данных Эдгар Кодд в 1985 году опубликовал свои знаменитые «12 правил Кодда», которым должна удовлетворять каждая РСУБД.

Типы RDBMS

Есть много популярных RDBMS, доступных для работы. Самые популярные среди них: MySQL, MS SQL Server, ORACLE, MS ACCESS.

MySQL

MySQL - это база данных SQL с открытым исходным кодом, разработанная шведской компанией MySQL AB. Поддерживает множество различных платформ, включая Microsoft Windows, основные дистрибутивы Linux, UNIX и Mac OS X. MySQL имеет бесплатные и платные версии, в зависимости от их использования (некоммерческие / коммерческие) и функции. Поставляется с очень быстрым многопоточным многопользовательским и надежным сервером баз данных SQL.

Особенности:

  • Высокая производительность
  • Доступность
  • Масштабируемость и гибкость
  • Надежная транзакционная поддержка
  • Преимущества Интернета и Хранилища данных
  • Надежная защита данных
  • Комплексная разработка приложений
  • Простота управления
  • Open Source Freedom и поддержка 24 x 7
  • Низкая общая стоимость владения

MS SQL Server

MS SQL Server - это система управления реляционными базами данных, разработанная Microsoft Inc. Его основными языками запросов являются: T-SQL и ANSI SQL.

Особенности:

  • Высокая производительность
  • Доступность
  • Зеркалирование базы данных
  • Снимки базы данных
  • Интеграция CLR
  • Сервисный брокер
  • Триггеры DDL
  • Функции ранжирования
  • Уровни изоляции на основе строк
  • Интеграция XML
  • Почта базы данных

ORACLE

Oracle - это система управления реляционными базами данных, разработанная «Oracle Corporation». Это очень большая многопользовательская система управления базами данных. Oracle работает для эффективного управления своими ресурсами, базы данных информации между несколькими клиентами, запрашивающей и отправляющей данные в сети. Это отличный выбор сервера баз данных для клиент-серверных вычислений. Oracle поддерживает все основные операционные системы как для клиентов, так и для серверов, включая MSDOS, NetWare, UnixWare, IBM OS/2 и большинство UNIX-аксессуаров.

Особенности:

  • Согласованность
  • Блокирующие механизмы
  • База данных Quiesce
  • Портативность
  • Самостоятельная база данных
  • SQL*Plus
  • ASM
  • Планировщик
  • Менеджер ресурсов
  • Хранилище данных
  • Материализованные виды
  • Растровые индексы
  • Сжатие таблицы
  • Параллельное выполнение
  • Аналитический SQL
  • Сбор данных
  • Разметка

MS ACCESS

Microsoft Access - это программное обеспечение для управления базами данных начального уровня. База данных MS Access не только недорогая, но и мощная база данных для небольших проектов. Это один из самых популярных продуктов Microsoft. MS Access использует механизм базы данных Jet, который использует определенный диалект языка SQL (иногда называемый Jet SQL). MS Access поставляется с профессиональным выпуском пакета Microsoft Office. MS Access имеет простой в использовании интуитивно понятный графический интерфейс.

Особенности:

  • Пользователи могут создавать таблицы, запросы, формы и отчеты и связывать их вместе с макросами.
  • Возможность импорта и экспорта данных во многие форматы, включая Excel, Outlook, ASCII, dBase, Paradox, FoxPro, SQL Server, Oracle, ODBC и т. Д.
  • Существует также формат базы данных Jet (MDB или ACCDB в Access 2007), который может содержать приложение и данные в одном файле. Это делает очень удобным распространение всего приложения на другого пользователя, который может запускать его в неподключенных средах.
  • Microsoft Access предлагает параметризованные запросы. Эти запросы и таблицы Access можно ссылать на другие программы, такие как VB6 и .NET через DAO или ADO.
  • Настольные выпуски Microsoft SQL Server могут использоваться с Access как альтернатива Jet Database Engine.
  • Microsoft Access - это база данных на основе файлового сервера. В отличие от систем управления реляционными базами данных клиент-сервер (РСУБД), Microsoft Access не реализует триггеры базы данных, хранимые процедуры или ведение журнала транзакций.

Доля рынка

По данным DB-Engines, в мае 2017 года наиболее популярными системами являются Oracle, MySQL (с открытым исходным кодом), Microsoft SQL Server, PostgreSQL (с открытым исходным кодом), IBM DB2, Microsoft Access и SQLite (с открытым исходным кодом).[Источник 4]

По данным исследовательской компании Gartner, в 2011 году доходы пяти ведущих коммерческих поставщиков реляционных баз данных составили: Oracle (48,8%), IBM (20,2%), Microsoft (17,0%), SAP, включая Sybase (4,6%) и Teradata (3,7% ).[Источник 5]

По данным Gartner, в 2008 году доля сайтов баз данных, использующих любую технологию, была:.[Источник 6]

Преимущества RDBMS

Структура данных

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

Многопользовательский доступ

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

Привилегии

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

Доступ к сети

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

Скорость

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

Обслуживание

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

Язык

RDBMS поддерживает общий язык, называемый «Язык структурированных запросов» (SQL). Синтаксис SQL прост, в нем используются стандартные слова и фразы английского языка, что делает его достаточно интуитивным и легким в освоении. Многие RDBMS добавляют на SQL-язык не-SQL, ключевые слова, функции и функции, специфичные для конкретной базы данных.

Недостатки RDBMS

Стоимость

Одним из недостатков RDBMS является дорогостоящая настройка и поддержка системы баз данных. Чтобы создать реляционную базу данных, необходимо приобрести специальное программное обеспечение. Требуется время для ввода всей информации и настройки программы. Если компания большая, необходимо нанять программиста для создания реляционной базы данных с использованием Structured Query Language (SQL) и администратора базы данных для поддержки базы данных после ее создания. Независимо от того, какие данные используются, придется либо импортировать их из других данных, таких как текстовые файлы или электронные таблицы Excel, либо ввести данные на клавиатуре. Независимо от размера вашей компании придется защищать свои данные от несанкционированного доступа, чтобы соответствовать нормативным стандартам.

Изобилие информации

Успехи в сложности информации вызывают еще один недостаток RDBMS. Реляционные базы данных предназначены для организации данных по общим характеристикам. Сложные изображения, цифры, рисунки и мультимедийные продукты не поддаются простой классификации, что ведет к созданию нового типа базы данных, называемого объектно-реляционными системами управления базами данных ORDBMS. Эти системы предназначены для работы с более сложными приложениями и могут быть масштабируемыми.

Ограниченные пределы

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

Изолированные базы данных

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

Заключение

По состоянию на 2017 год многие из широко используемых баз данных основаны на модели реляционной базы данных.

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

По оценке Gartner в 2013 году рынок реляционных СУБД составлял 26 млрд долларов с годовым приростом около 9 процентов, а к 2018 году рынок реляционных СУБД достигнет 40 млрд долларов. В настоящее время абсолютными лидерами рынка СУБД являются компании Oracle, IBM и Microsoft, с общей совокупной долей рынка около 90%, поставляя такие системы как Oracle Database, IBM DB2 и Microsoft SQL Server. Единственной коммерчески успешной СУБД российского производства является реляционная СУБД Линтер.

Источники

  1. Fundamentals of Relational Database Management Systems // WordPress Foundation - разработчик системы управления содержимым сайта с открытым исходным кодом WordPress. URL: https://diblokdcma.files.wordpress.com/2009/10/springer-fundamentals-of-relational-database-management-systems-apr-2007.pdf (дата обращения: 27.11.2017).
  2. Defying Conventional Wisdom // Oracle — американская корпорация, второй по величине доходов производитель программного обеспечения (после Microsoft). URL: http://www.oracle.com/us/corporate/profit/p27anniv-timeline-151918.pdf (дата обращения: 27.11.2017).
  3. New Database Software Program Moves Macintosh Into The Big Leagues // Chicago Tribune — наиболее популярная газета Чикаго и американского Среднего Запада. URL: http://articles.chicagotribune.com/1987-06-28/business/8702170525_1_silver-surfer-software-developers-macintosh-products (дата обращения: 27.11.2017).
  4. DB-Engines Ranking of Relational DBMS // DB-Engines. URL: http://db-engines.com/en/ranking/relational+dbms (дата обращения: 27.11.2017).
  5. Eye on Oracle // ITKnowledgeExchange (ITKE) - это сайт, на котором IT-специалисты могут задавать технические вопросы и отвечать на них. URL: http://itknowledgeexchange.techtarget.com/eye-on-oracle/oracle-the-clear-leader-in-24-billion-rdbms-market/ (дата обращения: 27.11.2017).
  6. MySQL Enterprise Edition // Oracle. URL: https://www.mysql.com/products/enterprise/ (дата обращения: 27.11.2017).