Открыть сервис

SQL/DS

SQL/DS (Structured Query Language/Data System) — это реляционная система управления базами данных (СУБД), разработанная корпорацией IBM. Она стала первой коммерчески доступной СУБД, реализующей язык SQL (Structured Query Language), который впоследствии превратился в международный стандарт для работы с реляционными базами данных. SQL/DS была выпущена в 1981 году для мейнфреймов IBM, работающих под управлением операционной системы DOS/VSE (Disk Operating System / Virtual Storage Extended), а затем и для VM/CMS (Virtual Machine / Conversational Monitor System).

История

Предпосылки создания

В начале 1970-х годов исследовательская лаборатория IBM в Сан-Хосе (ныне — Almaden Research Center) начала работу над проектом System R, целью которого было доказать практическую применимость реляционной модели данных, предложенной Эдгаром Коддом в 1970 году. В рамках проекта был разработан язык SEQUEL (Structured English Query Language), позже переименованный в SQL. System R не была коммерческим продуктом, но продемонстрировала, что реляционная модель может быть эффективно реализована на практике.

Разработка и выпуск

Успех прототипа System R побудил IBM начать разработку коммерческой версии. Первым продуктом стала SQL/DS, выпущенная в 1981 году. Она была ориентирована на операционную систему DOS/VSE, которая была широко распространена на мейнфреймах IBM среднего уровня. В 1982 году вышла версия для VM/CMS, более продвинутой операционной системы, поддерживающей виртуализацию.

Влияние и конкуренция

SQL/DS стала важной вехой в истории баз данных. Она доказала, что реляционные СУБД могут быть коммерчески успешными и эффективными. Однако в 1983 году IBM выпустила более мощную и функциональную СУБД — DB2 (Database 2), которая была ориентирована на операционную систему MVS (Multiple Virtual Storage) — флагманскую платформу для крупных мейнфреймов. DB2 быстро стала основным продуктом IBM в этой области, в то время как SQL/DS оставалась решением для менее требовательных сред. Тем не менее, именно SQL/DS, а не DB2, стала первой коммерческой реализацией SQL.

Дальнейшая судьба

SQL/DS активно развивалась и поддерживалась IBM до середины 1990-х годов. Последние версии продукта были выпущены в 1995 году. Впоследствии IBM прекратила поддержку SQL/DS, сосредоточив все усилия на развитии семейства DB2, которое стало основой для её стратегии в области управления данными. SQL/DS также оказала влияние на другие ранние реляционные СУБД, такие как Oracle (первая версия которой вышла в 1979 году, до SQL/DS, но на основе тех же идей) и Informix.

Архитектура и особенности

Реляционная модель

SQL/DS полностью реализовывала реляционную модель данных. Данные представлялись в виде таблиц (отношений), состоящих из строк (кортежей) и столбцов (атрибутов). Связи между таблицами устанавливались через общие значения, а не через указатели (как в иерархических или сетевых моделях). Это обеспечивало высокую гибкость и простоту запросов.

Язык SQL

SQL/DS поддерживала все основные операции языка SQL, определённые в проекте System R:

SQL/DS также поддерживала подзапросы, соединения (JOIN), агрегатные функции (COUNT, SUM, AVG, MIN, MAX) и группировку (GROUP BY). Это был полноценный декларативный язык, позволяющий пользователям описывать, какие данные нужны, не указывая, как их получить.

Многоуровневая архитектура

SQL/DS имела многоуровневую архитектуру, которая обеспечивала изоляцию между физическим хранением данных и логическим представлением:

Управление транзакциями

SQL/DS поддерживала транзакции — логически завершённые последовательности операций, которые выполняются атомарно (все или ничего). Для управления транзакциями использовались команды BEGIN TRANSACTION, COMMIT (фиксация изменений) и ROLLBACK (откат изменений). Это обеспечивало надёжность данных даже при сбоях системы. SQL/DS не поддерживала многоверсионность (MVCC), а использовала блокировки для обеспечения изоляции транзакций.

Ограничения и недостатки

По сравнению с современными СУБД, SQL/DS имела ряд ограничений:

Применение

Основные сферы

SQL/DS использовалась в корпоративных средах, где требовалась надёжная и относительно недорогая система управления данными на мейнфреймах IBM. Основные области применения:

Примеры использования

SQL/DS активно применялась в государственных учреждениях, банках, страховых компаниях и производственных предприятиях, которые использовали мейнфреймы IBM. Она была особенно популярна в средах, где уже была развёрнута операционная система DOS/VSE, и требовалась миграция с устаревших иерархических СУБД (например, IMS) на реляционную модель.

Влияние на индустрию

Стандартизация SQL

SQL/DS, наряду с DB2, стала основой для стандартизации языка SQL. Первый международный стандарт SQL-86 (SQL1) был во многом основан на реализации SQL/DS и DB2. Это обеспечило переносимость приложений между различными СУБД, что стало важным фактором развития рынка баз данных.

Образовательная роль

SQL/DS часто использовалась в учебных заведениях для обучения основам реляционных баз данных и языка SQL, так как была доступна для мейнфреймов, которые были распространены в университетах. Многие специалисты, начавшие свою карьеру в 1980-х годах, получили первый опыт работы с реляционными БД именно на SQL/DS.

Наследие

Хотя SQL/DS больше не используется, её концепции и архитектура оказали глубокое влияние на все последующие реляционные СУБД. Многие идеи, впервые реализованные в SQL/DS (многоуровневая архитектура, оптимизация запросов, управление транзакциями), стали стандартом де-факто. SQL/DS доказала жизнеспособность реляционной модели и SQL, открыв дорогу для таких гигантов, как Oracle, Microsoft SQL Server и PostgreSQL.

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →