Сервер базы данных — это сервер, который использует приложение базы данных , предоставляющее службы базы данных другим компьютерным программам или компьютерам , как определено в модели клиент-сервер . [ требуется ссылка ] [1] [2] Системы управления базами данных (СУБД) часто предоставляют функциональность сервера базы данных, а некоторые системы управления базами данных (например, MySQL ) полагаются исключительно на модель клиент-сервер для доступа к базе данных (в то время как другие, например, SQLite , предназначены для использования в качестве встроенной базы данных ).
Пользователи получают доступ к серверу базы данных либо через « фронтэнд », работающий на компьютере пользователя и отображающий запрошенные данные, либо через « бэкэнд », работающий на сервере и выполняющий такие задачи, как анализ и хранение данных.
В модели «главный-подчиненный» главные серверы баз данных являются центральными и основными хранилищами данных, в то время как подчиненные серверы баз данных являются синхронизированными резервными копиями главных серверов, выступающими в качестве прокси-серверов .
Большинство приложений баз данных отвечают на язык запросов . Каждая база данных понимает свой язык запросов и преобразует каждый отправленный запрос в форму, удобную для чтения сервером, и выполняет его для получения результатов.
Примерами фирменных приложений баз данных являются Oracle , IBM Db2 , Informix и Microsoft SQL Server . Примерами бесплатных приложений баз данных являются PostgreSQL ; а под лицензией GNU General Public License — Ingres и MySQL . Каждый сервер использует собственную логику и структуру запросов. Язык запросов SQL (Structured Query Language) более или менее одинаков во всех приложениях реляционных баз данных .
Для ясности: сервер базы данных — это просто сервер, который обслуживает службы, связанные с клиентами через приложения базы данных.
В рейтинге DB-Engines представлено более 300 СУБД. [3]
Основы моделирования больших наборов данных были впервые представлены Чарльзом Бахманом в 1969 году. [4] Бахман представил диаграммы структур данных (DSD) как средство графического представления данных. DSD предоставили средство для представления отношений между различными сущностями данных. В 1970 году Кодд представил концепцию, согласно которой пользователи базы данных не должны знать о «внутренней работе» базы данных. [4] Кодд предложил «реляционное представление» данных, которое позже развилось в реляционную модель , которую большинство баз данных используют сегодня. В 1971 году Группа отчетов по задачам баз данных CODASYL (движущая сила разработки языка программирования COBOL ) впервые предложила «язык описания данных для описания базы данных, язык описания данных для описания той части базы данных, которая известна программе, и язык манипулирования данными». [4] Большая часть исследований и разработок баз данных была сосредоточена на реляционной модели в 1970-х годах.
В 1975 году Бахман продемонстрировал, как реляционная модель и набор структур данных были похожими и «конгруэнтными» способами структурирования данных, работая в Honeywell . [4] Модель сущности-связи была впервые предложена в ее нынешнем виде Питером Ченом в 1976 году, когда он проводил исследования в Массачусетском технологическом институте . [5] Эта модель стала наиболее часто используемой моделью для описания реляционных баз данных. Чен смог предложить модель, которая превосходила навигационную модель и была более применима к «реальному миру», чем реляционная модель, предложенная Коддом. [4]