IDMS , сокращение от Integrated Database Management System , в первую очередь представляет собой систему управления базами данных на основе сетевой модели ( CODASYL ) для мэйнфреймов . Впервые он был разработан в BF Goodrich, а затем продан на рынок компанией Cullinane Database Systems (переименованной в Cullinet в 1983 году). С 1989 года продукт принадлежит Computer Associates (ныне CA Technologies), которая переименовала его в Advantage CA-IDMS, а позже просто в CA IDMS .
Разработчики) | CA Technologies |
---|---|
Первый выпуск | 1973 |
Стабильный выпуск | 18,5 |
Операционная система | z / OS , z / VM , z / VSE , BS2000 / OSD |
Платформа | Мейнфрейм компьютер |
Тип | Сетевая СУБД |
Веб-сайт | ca |
История
Корни IDMS уходят корнями в новаторскую систему управления базами данных под названием Integrated Data Store (IDS), разработанную в General Electric командой под руководством Чарльза Бахмана и впервые выпущенную в 1964 году [1].
В начале 1960-х IDS была взята из своей первоначальной формы компьютерной группой химического подразделения BF Goodrich и переписана на язык, названный Intermediate System Language (ISL). ISL был разработан как переносимый язык системного программирования, способный создавать код для различных целевых машин. Поскольку ISL на самом деле был написан на ISL, его можно было относительно легко перенести на другие машинные архитектуры, а затем создать код, который будет выполняться на них.
Компьютерная группа химического подразделения задумывалась о продаже копий IDMS другим компаниям, но руководство им сообщило, что они не занимаются производством программных продуктов. В конце концов, с Джоном Куллинейном была заключена сделка о покупке прав и продаже продукта. Поскольку Cullinane должен был возвращать лицензионные платежи BF Goodrich , все дополнительные продукты были перечислены и оплачены как отдельные продукты, даже если они были обязательными для работы основного продукта IDMS. Иногда это сбивало клиентов с толку.
Первоначальными платформами были компьютер GE 235 и компьютер коммутации сообщений GE DATANET-30 : позже продукт был перенесен на мэйнфреймы IBM, а также на оборудование DEC и ICL .
Версия, перенесенная на IBM, работает на мэйнфреймах IBM ( System / 360 , System / 370 , System / 390 , zSeries , System z9 ). В середине 1980-х было заявлено, что было продано около 2500 лицензий IDMS. Пользователи включали стратегическое воздушное командование , Ford of Canada, Ford of Europe, Jaguar Cars, Clarks Shoes UK, AXA / PPP, MAPFRE , Royal Insurance, Tesco , Manulife, Hudson's Bay Company , Cleveland Clinic, Bank of Canada , General Electric, Aetna. и BT в Великобритании.
Версия для использования на компьютерах серии DECSYSTEM была продана DEC и продавалась как DBMS10 и более поздняя версия DBMS20.
В 1976 году исходный код был лицензирован для ICL , которая перенесла программное обеспечение для работы на своих мэйнфреймах серии 2900 , а затем и на более старых моделях серии 1900 . ICL продолжала разработку программного обеспечения независимо от Cullinane, продавая оригинальный перенесенный продукт под названием ICL 2900 IDMS и расширенную версию как IDMSX . В этой форме он использовался многими крупными пользователями в Великобритании, примером чего является система Pay-As-You-Earn, управляемая Inland Revenue. Многие из этих систем IDMSX для правительства Великобритании еще работали в 2013 году.
В начале и середине 1980-х годов системы управления реляционными базами данных стали становиться все более популярными, чему способствовало увеличение мощности оборудования и переход к миникомпьютерам и архитектуре клиент-сервер . Реляционные базы данных предлагали более высокую производительность разработки по сравнению с системами CODASYL , и традиционные возражения, основанные на низкой производительности, постепенно уменьшались.
Cullinet попытался продолжить конкурировать с IBM «s DB2 и других реляционных баз данных путем разработки реляционных передний конец и целый ряд инструментов для повышения производительности. В их число входило автоматическое системное средство (ASF), в котором использовалась уже существующая функция IDMS под названием LRF (средство логической записи). ASF был генератором базы данных для заполнения пустых мест, который также должен был разработать мини-приложение для обслуживания таблиц.
Трудно судить, помогли ли такие функции продлить срок службы продукта, но в долгосрочной перспективе они оказали незначительное влияние. Те пользователи, которые остались с IDMS, были в первую очередь заинтересованы в ее высокой производительности, а не в ее реляционных возможностях. Было широко признано (чему способствовала громкая кампания Э. Ф. Кодда , отца реляционной модели ), что существует значительная разница между реляционной базой данных и сетевой базой данных с реляционной оболочкой.
В 1989 году Computer Associates продолжила разработку после приобретения Cullinet [2] и выпустила Release 12.0 с полным SQL в 1992–93 годах.
В настоящее время CA Technologies активно продает и поддерживает CA IDMS и улучшенную IDMS в последующих выпусках за счет поддержки TCP / IP, поддержки двухфазной фиксации , публикации XML , поддержки специального процессора zIIP , доступа через Интернет в сочетании с CA IDMS Server, SQL Option и администрирование базы данных GUI с помощью инструмента CA IDMS Visual DBA.
Системы CA-IDMS сегодня по-прежнему используются во всем мире. Многие клиенты предпочли веб-поддержку своих приложений с помощью опции SQL CA-IDMS, которая является частью стратегии двойной базы данных CA Technologies.
Встроенный словарь данных
Одной из сложных функций IDMS был встроенный словарь интегрированных данных (IDD). IDD был в первую очередь разработан для поддержки определений баз данных. Это была база данных IDMS.
Администраторы баз данных (администраторы баз данных) и другие пользователи взаимодействуют с IDD с помощью языка, называемого языком определения словаря данных (DDDL).
IDD также использовался для хранения определений и кода для других продуктов семейства IDMS, таких как ADS / Online и IDMS-DC.
Сила IDD заключалась в том, что он был расширяемым и мог использоваться для создания определений чего угодно. Некоторые компании использовали его для разработки внутренней документации.
Обзор
Логическая модель данных
Предлагаемая пользователям модель данных - это сетевая модель CODASYL . Основными концепциями структурирования в этой модели являются записи и множества. Записи, по сути, следуют шаблону COBOL , состоящему из полей разных типов: это позволяет создавать сложную внутреннюю структуру, такую как повторяющиеся элементы и повторяющиеся группы.
Самая отличительная концепция структурирования в модели Codasyl - это набор . Не путать с математическим набором, набор Codasyl представляет собой отношение «один ко многим» между записями: один владелец, много членов. Тот факт, что запись может быть членом многих различных наборов, является ключевым фактором, который отличает сетевую модель от более ранней иерархической модели . Как и в случае с записями, каждый набор принадлежит к именованному типу набора (разные типы наборов моделируют разные логические отношения). Фактически наборы упорядочены, и последовательность записей в наборе может использоваться для передачи информации. Запись может участвовать как владелец и член любого количества наборов.
Записи имеют идентичность, которая представлена значением, известным как ключ базы данных . В IDMS, как и в большинстве других реализаций Codasyl, ключ базы данных напрямую связан с физическим адресом записи на диске. Ключи базы данных также используются в качестве указателей для реализации наборов в виде связанных списков и деревьев. Это тесное соответствие между логической моделью и физической реализацией (которая не является строго необходимой частью модели Codasyl, но была характерной для всех успешных реализаций) отвечает за эффективность извлечения из базы данных, но также обеспечивает такие операции, как загрузка базы данных. а реструктуризация довольно дорогая.
Доступ к записям можно получить напрямую с помощью ключа базы данных, следуя установленным отношениям или путем прямого доступа с использованием значений ключей. Первоначально единственный прямой доступ был через хеширование, механизм, известный в модели Codasyl как доступ CALC. В IDMS доступ CALC реализуется через внутренний набор, связывающий все записи, которые имеют одно и то же хеш-значение, с записью владельца, которая занимает первые несколько байтов каждой страницы на диске.
В последующие годы некоторые версии IDMS добавили возможность доступа к записям с использованием индексов, подобных BTree .
Место хранения
IDMS организует свои базы данных в виде серии файлов. Эти файлы отображаются и предварительно форматируются в так называемые области . Области разделены на страницы, соответствующие физическим блокам на диске. Записи базы данных хранятся в этих блоках.
Администратор базы данных выделяет фиксированное количество страниц в файле для каждой области. Затем администратор базы данных определяет, какие записи должны храниться в каждой области, и подробности того, как они должны храниться.
IDMS размещает специальные страницы распределения пространства по всей базе данных. Эти страницы используются для отслеживания свободного места, доступного на каждой странице в базе данных. Чтобы снизить требования к вводу-выводу, свободное пространство отслеживается для всех страниц только тогда, когда свободное пространство для области падает ниже 30%.
Доступны четыре метода хранения записей в базе данных IDMS: прямой, последовательный, CALC и VIA. Версия Fujitsu / ICL IDMSX расширяет это с помощью еще двух методов: Page Direct и Random.
В прямом режиме ключ целевой базы данных указывается пользователем и сохраняется как можно ближе к этому ключу БД, при этом фактический ключ БД, на котором хранится запись, возвращается прикладной программе.
Последовательное размещение (не путать с индексированным последовательным) просто помещает каждую новую запись в конец области. Этот вариант используется редко.
CALC использует алгоритм хеширования, чтобы решить, где разместить запись; затем хеш-ключ обеспечивает эффективное извлечение записи. Вся область CALC предварительно отформатирована, каждая с заголовком, состоящим из специальной записи «владельца» CALC. Алгоритм хеширования определяет номер страницы (по которому можно определить адрес физического диска), и запись затем сохраняется на этой странице или как можно ближе к ней и связывается с записью заголовка на этой странице с помощью CALC. набор. Записи CALC связаны с записью владельца CALC страницы с помощью единого списка ссылок (указателей). Владелец CALC, расположенный в заголовке страницы, таким образом, владеет набором всех записей, нацеленных на его конкретную страницу (независимо от того, хранятся ли записи на этой странице или, в случае переполнения, на другой странице).
CALC обеспечивает чрезвычайно эффективное хранение и извлечение: IDMS может извлекать запись CALC в операциях ввода-вывода 1.1. Однако этот метод плохо справляется с изменениями значения первичного ключа, и требуется дорогостоящая реорганизация, если количество страниц необходимо увеличить. Обходной путь состоит в том, чтобы расширить область, а затем запустить прикладную программу, которая последовательно сканирует область для каждой записи CALC, а затем использует команду MODIFY для обновления каждой записи. Это приводит к тому, что каждая запись CALC подключается к набору CALC для правильной целевой страницы, рассчитанной для нового диапазона страниц области. Обратной стороной этого метода является то, что исчезающе мало записей CALC теперь будет на их целевых страницах, а навигация по набору CALC каждой страницы, вероятно, потребует множества операций ввода-вывода. В результате рекомендуется использовать этот обходной путь только в экстремальных обстоятельствах, так как производительность будет снижена.
Размещение VIA пытается сохранить запись рядом с ее владельцем в определенном наборе. Обычно записи группируются на той же физической странице, что и владелец. Это приводит к эффективной навигации при доступе к записи, следуя установленной взаимосвязи. (VIA позволяет хранить записи в другой области IDMS, чтобы их можно было хранить отдельно от владельца, но при этом оставаться в кластере для повышения эффективности. В IDMSX они также могут быть смещены от владельца на заданное количество страниц).
Page Direct (только IDMSX) аналогичен режиму Direct, однако указывается номер целевой страницы базы данных, и запись подключается к цепочке CALC для этой страницы.
Случайное (только IDMSX) назначает номер целевой страницы экземпляру записи, когда она сохраняется с использованием алгоритма CALC (при этом либо используется ключ в записи, либо, в случае случайного выбора без ключа, используются дата и время хранения в качестве seed для алгоритма CALC).
Наборы обычно хранятся в виде связанных списков с использованием ключа базы данных в качестве указателя. Каждая запись включает прямую ссылку на следующую запись; разработчик базы данных может выбрать, включать ли указатели владельцев и предыдущие указатели (если они не указаны, навигация в этих направлениях будет медленнее).
Некоторые версии IDMS впоследствии включали возможность определять индексы: либо индексы записей, позволяющие находить записи на основе знания вторичного ключа, либо индексы набора, позволяющие извлекать элементы набора по значению ключа.
Записи прямого и случайного размещения страниц IDMSX обычно используются вместе с индексами записей, как описано выше. Сами индексы подчиняются правилам размещения, либо Direct (что на самом деле означает «CALC с использованием идентификатора индекса в качестве ключа»), либо CALC.
История выпуска (эпоха Computer Associates / CA)
Версия выпуска | Дата выпуска | Примечательные особенности |
---|---|---|
R12 | 1992 г. | 24-часовая обработка, логическое физическое разделение, управление каталогом, управление тупиками , централизованное средство безопасности, SQL |
R14 | 1999-01-09 [3] | Параллельная эксплуатация сисплексов , многозадачность |
R15 | 2001-04-25 [4] | Повышенная производительность, обмен данными |
R16 | 2004-04-13 [5] | Двухфазная фиксация , TCP / IP , использование тома с параллельным доступом , публикация XML |
R17 | 2008-10-30 [6] | Повышенная производительность, поддержка zIIP , улучшенные функции автоматического восстановления [7] |
R18 | 2011-06-02 | Расширенная поддержка zIIP, автоматическая настройка системы, улучшенная производительность, упрощенная установка и обслуживание |
Группы пользователей
IDMS имеет множество некоммерческих ассоциаций пользователей по всему миру, состоящих из профессионалов в области информационных технологий, которые используют и / или поддерживают CA IDMS или сопутствующие продукты. Они включают:
- CA IDMS (IUA EIUA) Глобальное сообщество пользователей
- AID - Anwendervereinigung IDMS Deutschland
- Австралийская группа пользователей IDMS
- Ассоциация пользователей BeNeLux IDMS
- Чикагская группа пользователей IDMS
- Комитет Квебека Пользователи IDMS
- Далласский форум пользователей CA-IDMS
- Европейская группа пользователей IDMS
- Финская группа пользователей IDMS
- AUI - Association des Utilisateurs d'IDMS - Франция
- Группа пользователей IDMS Rocky Mountain
- Ассоциация пользователей IDMS Великобритании
Смотрите также
- CA Datacom / DB
- Система управления информацией IBM
- IBM DB2
- ICL IDMS (X)
Рекомендации
- ↑ Эндрю Л. Рассел (9 апреля 2011 г.). "Устная история: Чарльз Бахман" . Сеть устной истории IEEE . Проверено 3 сентября 2013 года .
- ^ Информация и результаты для 'CA завершает слияние Cullinet. (Computer Associates International Inc., Cullinet Software Inc.) »| AccessMyLibrary - Содействие защите интересов библиотек
- ^ findarticles.com
- ^ Computer Associates объявляет о выпуске CA-IDMS 15.0 для OS390 и zOS. Расширенные функции доступности и масштабируемости поддерживают повышенный спрос клиентов на транзакции электронного бизнеса ... [ мертвая ссылка ]
- ^ Преимущества CAs База данных CA-IDMS r16 для zOS оптимизирует производительность Простота использования и гибкость BT 1,7 Терабайт База данных клиентов обрабатывает 10 миллиардов транзакций ежегодно с ... [ мертвая ссылка ]
- ^ CA IDMS r17 использует механизм zIIP для обеспечения большей емкости. Последний выпуск базы данных подчеркивает лидерство центров сертификации в использовании специализированных процессоров для мэйнфреймов IBM. Расширен ... [ мертвая ссылка ]
- ^ http://www.ca.com/~/media/Files/productbriefs/idms_db_ps_190116.pdf
Внешние ссылки
- CA IDMS