База данных (БД) — это имеющая название совокупность данных, которая отражает состояние объектов и их отношений в рассматриваемой предметной области. Данными называют зарегистрированную информацию, представление фактов, понятий или инструкций в форме, которая подходит для передачи, связи, обработки человеком или с помощью машины. Содержимое базы данных — прайс-листы, контакты пользователей, каталоги товаров, отчеты, статистика продаж и т.д. Изменения одной ячейки автоматически влияют на другие.
В БД чаще всего используется язык структурированных запросов SQL, созданный для того, чтобы получать необходимую информацию из базы данных. Он разработан в 1970-х в IBM. Несмотря на то что в настоящее время существует много других языков программирования запросов, SQL в базах данных продолжает широко использоваться. Команды можно разделить на манипулирующие, определяющие и управляющие.
Из определения базы данных следует, что в ней:
Важной характерной чертой БД является ее постоянство. Оно проявляется в нескольких контекстах:
Электронные таблицы изначально создавались как однопользовательские — полный контроль для одного пользователя и ограниченный набор функций для нескольких. Набор данных, как правило, невелик, как и количество вносимых изменений. БД предусматривают работу с большим объемом упорядоченной информации. Также в отличие от таблиц базы данных предназначены для работы нескольких пользователей, которые вносят изменения одновременно, независимо друг от друга.
Существует множество критериев определения видов баз данных, в т.ч. следующие: # Форма представления информации
Мультимедийные. Данные представлены в виде графического, аудио- или видеоконтента. Пример: БД сайта www.youtube.com.
Реляционные. Данные представлены в виде таблиц и связей между ними. Пример: БД Microsoft SQL Server, MySQL, PostgreSQL.
Нереляционные. Данные представлены в виде структур, отличных от таблиц. Например, JSON-подобных объектов, иерархических или сетевых структур. Пример: БД ElasticSearch, MongoDB.
Большинство современных БД может быть размещено как на одной, так и на нескольких машинах.
Локальные. Размещены на одной машине.
Распределенные. Размещены на нескольких машинах.
Операционные. Большую часть времени используются для операций записи (добавление, изменение, удаление данных). Пример: БД 1С.
Справочно-информационные. Большую часть времени используются для операций чтения. Пример: БД сайта www.consultant.ru.
Общедоступные. Открыты широкому кругу пользователей. Обычно доступ к базам данных бесплатный. Пример: БД энциклопедии Wikipedia.
С ограниченным доступом. Доступ к базам данных ограничен и обычно платный. Пример: БД энциклопедии Encarta.
Система управления базами данных (СУБД) — это программное обеспечение, которое необходимо для создания, редактирования и обслуживания файлов БД. С его помощью можно упростить процесс работы — от ввода данных до отчетности. Кроме того, система управления базами данных помогает выполнять резервное копирование, поддерживать безопасность, предоставлять общий доступ к БД. СУБД позволяет работать с базами данных одновременно нескольким пользователям.
Одна из самых распространенных систем управления базами данных. Используется в ряде крупных мировых компаний (Meta, Twitter, Amazon, LinkedIn и т.д.). Это реляционная СУБД, относящаяся к свободному программному обеспечению.
Особенности:
СУБД объектно-реляционного типа получила название от компании-разработчика. При работе с Oracle используется язык Java, а также расширение PL/SQL.
Особенности:
PostgreSQL относится к объектно-реляционному типу, свободно распространяется и работает на языках SQL и MySQL. Основное отличие от MySQL — в использовании инноваций и расширенном функционале.
Особенности:
PostgreSQL не подойдет для работы с БД, где необходимо горизонтальное масштабирование, OLAP-хранилище, а также преобладают записи чтения.