Пользователи и система по-разному воспринимают работу базы данных и ее предназначение. Пользователь рассматривает ее в качестве таблицы, в которой содержится нужная ему информация для выполнения тех или иных задач, которую в нужное время можно вывести на монитор или лист бумаги. Как системный компонент база данных представляет собой комплекс файлов, внутри которых расположены всевозможные связи и таблицы, к которым должен получить доступ пользователь.
На сегодня большинство компаний использует централизованную технологию обеспечения доступа к базам данных, которая предусматривает прямое взаимодействие сервера и клиента. В качестве последних выступают компьютеры пользователей, которых обслуживают базы данных, в то время как сервер представляет собой высокомощный компьютер, с помощью которого пользователи могут одновременно получить доступ к одной и той же информации, даже если одинаковые запросы будут отправлены с более чем тысячи компьютеров.
Так как именно сервер обеспечивает свободный доступ к данным, клиенты должны отправлять ему соответствующие запросы. Пользователь или приложение создает запрос SQL-серверу, который выполняет его обработку и возврат вместе с запрошенными данными. Реализация этого запроса осуществляется на специальном языке, который одинаково понятен обеим сторонам.
Сервера могут отличаться друг от друга по следующим критериям:
Каждая из задач предусматривает использование определенного программного компонента:
Для того, чтобы обеспечить правильное взаимодействие всех перечисленных компонентов, они объединяются в единую cистему управления базами данных (СУБД).
Система управления базой данных представляет собой своеобразную программную прослойку, которая создается между взаимодействующими сторонами (клиентом и сервером), чтобы пользователи могли абстрагироваться от системного видения базы данных, но при этом не потеряли возможности нормально с ней взаимодействовать.
Грамотно построенная система должна обеспечивать:
В зависимости от того, как обеспечена реализация указанных компонентов, системы управления базами данных разделяются на несколько типов. Помимо этого, они различаются по тому, каким образом внутри них обеспечивается связь данных.
По технологии поддержки баз данных системы делят на следующие категории:
К числу последних относятся системы, которые позволяют управлять абстрактными объектами для выполнения каких-либо действий.
Объектно-реляционными называют системы управления БД, которые поддерживают объекты, свойства и методы из предыдущего типа СУБД.
Иерархические базы данных представляют собой комплексные деревья данных, в которых у каждого вышерасположенного объекта находится в подчинении несколько других. Пользователи получают доступ к необходимой им информации в процессе движения по объектам сверху-вниз. Сетевые отличаются от них тем, что любой из «потомков» может дополнительно иметь несколько «предков», то есть таким образом создается целая система множественного наследования.
Преимущественное большинство современных систем управления базами данных относятся к категории реляционных. В качестве основы таких систем используются реляционные БД, то есть комбинация из таблиц и их взаимоотношений с возможностью внесения корректировок.
Помимо этого, системы могут отличаться по тому, каким образом они обеспечивают пользователю доступ к базе данных. Выделяют:
В последних вся информация располагается непосредственно на сервере, в то время как система стоит на клиенте. Клиент-серверные системы управления базами данных предусматривают размещение информации вместе с СУБД только на сервере. Встраиваемые зачастую встраиваются внутрь приложения.
Также СУБД отличаются друг от друга степенью распределения данных и по этому признаку делятся на локальные и распределенные. Последние предусматривают использование разных компьютеров для размещения клиента и сервера, в то время как локальные размещаются на одном компьютере.
На данный момент рынок предлагает пользователям несколько сотен различных СУБД. Наиболее распространенными среди них являются следующие.
Работает с 1970-х годов, отличается мощностью и практичностью, пользуется широким спросом. В ее преимущества входит следующее:
При этом Oracle имеет и некоторые недостатки, такие как:
В связи с этим в большинстве случаев эта система управления базами данных и обеспечения доступа используется исключительно в крупных корпорациях, которым требуется обработка большого количества информации.
Золотой стандарт систем управления базами данных для организации работы веб-приложений, которые работают на основе Linux. Система отличается надежностью и скоростью обработки запросов, и при этом может использоваться бесплатно, но в этом случае не может реализовать все функции, необходимые для ведения бизнеса.
Среди преимуществ этой системы можно выделить следующие:
При этом СУБД имеет и несколько значительных минусов:
В связи с этим MySQL пользуется распространением среди компаний, которым требуется бесплатная система управления базой данных и обеспечения контроля доступа.
Фирменная система, выпущенная компанией Microsoft и обеспечивающая одинаково эффективную работу с облачными и локальными серверами, которые по необходимости могут использоваться одновременно. При этом система работает и на Windows, и на Linux.
К ее преимуществам можно отнести следующие:
К недостаткам относится достаточно высокая стоимость и потребление ресурсов, а многие компании отказываются от использования этой СУБД по причине ограниченного функционала, которого недостаточно для нормальной работы с различными веб-приложениями.
PostgreSQL представляет собой одну из первых систем управления базами данных, которая была разработана практически 30 лет назад. В большинстве случаев ее используют владельцы различных веб-сайтов, которым нужно обеспечить нормальное взаимодействие с используемой базой данных и контроль доступа к ней. Главной причиной популярности этой СУБД является то, что она распространяется бесплатно и является удобной, а помимо этого, отличается хорошей масштабируемостью и возможностью настройки собственного интерфейса.
Среди недостатков можно выделить высокий расход ресурсов, не самую лучшую техническую поддержку от разработчика, а также некоторые проблемы с обеспечением хостинга.
Абсолютно бесплатная система управления базами данных, которая поддерживает работу с несколькими языками программирования. В отличие от указанных ранее систем, не может взаимодействовать с реляционными базами, которые являются одними из наиболее распространенных.
К плюсам этого решения можно отнести его масштабируемость, возможность взаимодействия с разными видами данных, а также поддержку json, но при этом часто администраторы сталкиваются с трудностями при его внедрении, а при необходимости взаимодействия с реляционной базой данных и вовсе придется переписывать код вручную. В коммерческих целях эту систему можно использовать только по купленной лицензии. В связи с этим она чаще всего используется организациями, обрабатывающими большие объемы разрозненных данных.
19.12.2019
Подпишитесь на нашу рассылку и получите
свод правил информационной безопасности
для сотрудников в шуточных