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

Комитет CODASYL

CODASYL (от англ. Conference on Data Systems Languages) — это консорциум, основанный в 1959 году, целью которого была разработка и стандартизация языков программирования для обработки данных. Наибольшую известность CODASYL получил благодаря созданию языка программирования COBOL (Common Business-Oriented Language), а также разработке одной из первых моделей данных для систем управления базами данных (СУБД), известной как сетевая модель данных или модель CODASYL.

История создания

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

В конце 1950-х годов в Соединённых Штатах Америки остро встала проблема несовместимости компьютерных систем и языков программирования, используемых для решения бизнес-задач. Различные производители (IBM, Remington Rand, Sperry Rand и другие) предлагали собственные, несовместимые между собой решения. Это затрудняло обмен данными и разработку переносимых приложений.

В апреле 1959 года Министерство обороны США созвало конференцию, на которой обсуждалась необходимость создания единого, переносимого языка для коммерческих приложений. В результате была сформирована группа, которая впоследствии стала известна как CODASYL. Первое заседание состоялось 28–29 мая 1959 года в Пентагоне.

Разработка COBOL

Основным результатом работы CODASYL в первые годы стало создание языка COBOL. Первая версия спецификации была опубликована в 1960 году. Язык был ориентирован на обработку файлов и бизнес-логику, что сделало его популярным в государственных учреждениях и крупных корпорациях. Комитет продолжал выпускать обновления и стандарты для COBOL на протяжении 1960-х годов.

Переход к базам данных

К середине 1960-х годов стало очевидно, что файловые системы хранения данных устаревают. Возникла потребность в более гибких и эффективных способах организации и доступа к данным. В 1965 году CODASYL создал подкомитет по базам данных (Data Base Task Group, DBTG), который занялся разработкой стандартов для систем управления базами данных.

Сетевая модель данных (Модель CODASYL)

Основные понятия

Сетевая модель данных, предложенная DBTG, стала одной из первых формальных моделей, описывающих структуру и манипулирование данными. Её ключевыми элементами являются:

Язык манипулирования данными

Для работы с данными в модели CODASYL был разработан специализированный язык манипулирования данными (DML), который обычно встраивался в хост-язык, такой как COBOL или FORTRAN. Основные операции включали:

Навигация по данным была курсорной: приложение последовательно перемещалось по записям и наборам, используя команды типа FIND NEXT или FIND OWNER.

Отличия от реляционной модели

Сетевая модель CODASYL существенно отличается от реляционной модели, предложенной Эдгаром Коддом в 1970 году. В реляционной модели данные хранятся в таблицах, а связи устанавливаются через значения общих полей (внешних ключей). В сетевой модели связи являются физическими и явными (через указатели), что делает навигацию более быстрой, но жёсткой и сложной для модификации.

Ключевые различия:

Влияние и наследие

Коммерческие реализации

На основе спецификаций CODASYL было создано несколько коммерческих СУБД, которые активно использовались в 1970-х и 1980-х годах. К наиболее известным относятся:

Упадок и переход к реляционным СУБД

К концу 1980-х годов реляционные СУБД, такие как Oracle, DB2 и SQL Server, начали доминировать на рынке. Простота использования, стандартизация SQL и поддержка сложных запросов сделали их более привлекательными для большинства приложений. Многие организации начали мигрировать с сетевых баз данных на реляционные. Однако некоторые системы, особенно на мейнфреймах, продолжали эксплуатироваться десятилетиями.

Влияние на современные технологии

Несмотря на то, что сетевая модель CODASYL уступила место реляционной, её идеи не исчезли полностью. Некоторые концепции нашли своё отражение в современных технологиях:

Критика

Основные претензии к модели CODASYL были связаны с её сложностью. Для разработчиков требовалось глубокое понимание физической структуры данных, что замедляло разработку и усложняло сопровождение. Кроме того, навигационный характер доступа делал запросы негибкими: изменение структуры связей часто требовало переписывания кода приложений. В отличие от декларативного SQL, где пользователь указывает что получить, в CODASYL нужно было детально описывать как это сделать, что было чревато ошибками.

Распад комитета

Комитет CODASYL прекратил свою активную деятельность в начале 1990-х годов. Последние официальные спецификации были выпущены в 1984 году. С распространением SQL и реляционных баз данных необходимость в поддержке отдельного стандарта для сетевых СУБД отпала. Тем не менее, вклад CODASYL в историю информатики остаётся значительным: он заложил основы для формального описания структур данных и управления ими, а также создал один из первых промышленных языков программирования (COBOL), который используется до сих пор.

Источники

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

На главную BFOmetr →