СУБД (система управления базами данных, DBMS — Database Management System) — программный комплекс, предоставляющий интерфейс для работы с организованными наборами данных. СУБД берёт на себя задачи хранения, организации, выборки, изменения данных, управления параллельным доступом и обеспечения транзакционности, избавляя приложения от работы напрямую с файлами.
Классификация СУБД
Реляционные СУБД (RDBMS) — данные хранятся в таблицах с жёсткой схемой. Запросы через SQL. Свойства ACID. Примеры: MySQL, PostgreSQL, Oracle, Microsoft SQL Server, MariaDB.
Документные СУБД (NoSQL) — данные в виде документов (JSON/BSON). Гибкая схема. MongoDB, CouchDB, Elasticsearch.
Ключ-значение (Key-Value) — простейшая модель, максимальная скорость. Redis, Memcached, DynamoDB.
Колоночные СУБД — данные хранятся по столбцам, а не строкам. Оптимизированы для аналитики. ClickHouse, Apache Cassandra, HBase.
Графовые СУБД — данные в виде узлов и рёбер графа. Neo4j, Amazon Neptune.
Time-series СУБД — оптимизированы для временных рядов (метрик, телеметрии). InfluxDB, TimescaleDB (расширение PostgreSQL), Prometheus (хранилище).
История
Реляционная модель предложена Эдгаром Коддом (IBM) в 1970 году в статье «A Relational Model of Data for Large Shared Data Banks». SQL разработан IBM (System R) в 1974 году, стандартизован ANSI в 1986 году. Oracle Database выпущена в 1979 году — первая коммерческая RDBMS. MySQL появился в 1995 году, PostgreSQL (как Postgres) — в 1986 году. MongoDB (2009) и Redis (2009) стали пионерами NoSQL-движения 2000-х.
СУБД в хостинге
Практически каждое веб-приложение требует СУБД. В хостинговых планах обычно предустановлены MySQL/MariaDB и PostgreSQL. Панели управления (cPanel, ISPmanager) предоставляют phpMyAdmin для MySQL и pgAdmin для PostgreSQL. Для Redis — опциональная услуга или отдельный managed-сервис. ClickHouse и MongoDB требуют VPS или выделенного сервера — они не подходят для shared hosting из-за потребления ресурсов.
На что обращать внимание
Выбор СУБД определяет архитектуру приложения: реляционная СУБД — для структурированных данных с отношениями, документная — для гибкой схемы, ключ-значение — для сессий и кэша. Резервное копирование: mysqldump/pg_dump — стандартные инструменты. Репликация (Master-Slave) — для масштабирования чтения и отказоустойчивости.
Управление СУБД в хостинге
Shared hosting обычно предоставляет MySQL/MariaDB с ограниченным числом баз и пользователей. На VPS администратор сам устанавливает и настраивает СУБД. Важные параметры настройки MySQL: innodb_buffer_pool_size (обычно 70-80% ОЗУ), max_connections (по умолчанию 151 — часто мало для нагруженных сайтов), slow_query_log для поиска медленных запросов. PostgreSQL: shared_buffers (25% ОЗУ), effective_cache_size (75% ОЗУ). Redis: maxmemory и maxmemory-policy — определяют поведение при переполнении кэша. Регулярное резервное копирование через mysqldump/pg_dump — обязательная практика.