SQLyog
Год 2022
Язык Английский
v.13.1.9.0
TablePlus
Год 2021
Язык Английский
v.4.2.8 Build
СУБД программы
Система управления базами данных (Database Management System, DBMS) — многопользовательское программное приложение в сетевой среде, обеспечивающее доступ к базам данных и регулярную и бесперебойную работу пользовательских процессов. Первоначально только крупные компании использовали менеджеры баз данных, которые управляли большими объемами данных с помощью высокопроизводительных компьютеров, но сегодня они являются обычными компонентами ИТ-систем компаний.
Основные принципы
Обобщенной структурой менеджера базы данных является так называемая Лучше всего это можно увидеть с помощью модели ANSI/X3/SPARC (см. рисунок). Как показано на рисунке, менеджер баз данных сам создает соединение между различными пользовательскими процессами и физической базой данных — обычно файловой системой или другим файловым менеджером. Пользователи могут подходить к системе с разными намерениями и взглядами (например, вспомогательное приложение подключается к системе, хочет выполнить запрос, создает схему) — поэтому пользовательские процессы, подключенные к системе, обычно называются представлениями.
Представления резко различаются в зависимости от того, занимаются ли они запросом («манипулированием») единицами данных, хранящимися в базе данных, или изменением или созданием («определением») структур данных. Два типа представления имеют или могут иметь разные языки: первый обычно контролируется запросом данных DML (язык манипулирования данными), второй — структурой данных DDL (язык определения данных). Язык большинства менеджеров баз данных включает в себя оба элемента, но обычно к одному и другому применяются разные языковые правила (см., например, язык SQL).
Оба языка обрабатываются и интерпретируются самим менеджером базы данных — и оба языка имеют два компонента программного обеспечения интерпретации, которые называются процессорами запросов и переводчиками схем соответственно (независимо от типа менеджера базы данных). Одной из целей разработки языков DDL и DML было то, что пользователь должен знать только логическую структуру данных (см. базы данных), без необходимости знать форму и способ физического хранения данных. Если для этих языков есть отдельный транслятор, то мы по определению можем подключиться к одной и той же базе данных на нескольких языках DDL и DML — так мы можем обеспечить своего рода независимость, а именно логическую независимость данных. Например, сегодня мы обычно можем получить доступ к менеджеру реляционной базы данных через объектно-ориентированный DDL (см., например, соответствующую часть OQL).
После интерпретации инструкций пользователя они конкретно выполняются, что является одной из задач ядра базы данных. Механизм управления базой данных делает это, с одной стороны, избегая потенциальных проблем, возникающих в результате одновременного выполнения пользовательских процессов (например, они пишут и читают блок данных вместе, ресурсы всегда теряются у одного процесса, процессы ждут друг друга), а также реализует всевозможные регламенты для обеспечения их бесперебойной работы, иными словами: он осуществляет управление транзакциями. С другой стороны, сама физическая система управления базами данных должна управляться соответствующими инструкциями, чтобы она оптимизировала полученные инструкции и обслуживала пользовательский процесс в кратчайшие сроки (см. оптимизация базы данных).