Система управления информацией IBM - IBM Information Management System

Система управления информацией IBM
IBM logo.svg
изначальный выпуск1966; 54 года назад (1966)
Стабильный выпуск
IMS V15 / 3 октября 2017 г.; 3 года назад (2017-10-03)
Операционная системаz / OS V2.2 или новее
ПлатформаIBM System z
ТипБаза данных & подсистема обработки транзакций
Лицензияпроприетарный
Интернет сайтСтраница продукта IBM IMS

В Система управления информацией IBM (IMS) является совместным иерархическая база данных и управление информацией система, которая поддерживает обработка транзакции.

История

IBM разработала IMS с Rockwell и Гусеница начиная с 1966 г. для Программа Аполлон, где он использовался для инвентаризации очень больших ведомость материалов (BOM) для Сатурн V лунная ракета и космический аппарат "Аполлон".

Первое сообщение «IMS READY» появилось на IBM 2740 терминал в Дауни, Калифорния, 14 августа 1968 г.[1]В промежуточный период IMS претерпела множество изменений, поскольку IBM Система / 360 технология превратилась в нынешнюю z / OS и Система IBM zEnterprise технологии. Например, IMS теперь поддерживает Язык программирования Java, JDBC, XML, а с конца 2005 г. веб-сервисы.

Верн Уоттс много лет был главным архитектором IMS. Уоттс присоединился к IBM в 1956 году и работал в лабораториях разработки IBM в Кремниевой долине до своей смерти 4 апреля 2009 года.[2] Он непрерывно работал над IMS с 1960-х годов.[3]

База данных

Компонент базы данных IMS хранит данные, используя иерархическая модель, который сильно отличается от более поздних выпусков IBM реляционная база данных, Db2. В IMS иерархическая модель реализована с использованием блоков данных, известных как сегменты. Каждый сегмент может содержать несколько частей данных, которые называются полями. Например, база данных клиентов может иметь корневой сегмент (или сегмент наверху иерархии) с такими полями, как телефон, имя и возраст. Дочерние сегменты могут быть добавлены под другим сегментом, например, один сегмент заказа под каждым сегментом клиента, представляющий каждый заказ, который клиент разместил в компании. Аналогично, каждый сегмент заказа может иметь много дочерних сегментов для каждого элемента в заказе. В отличие от других баз данных, вам не нужно определять все данные в сегменте для IMS. Сегмент может быть определен размером 40 байтов, но только одно поле длиной шесть байтов может быть определено как ключевое поле, которое вы можете использовать для поиска сегмента при выполнении запросов. IMS будет извлекать и сохранять все 40 байтов в соответствии с указаниями программы, но может не понимать (или не заботиться) о том, что представляют собой другие байты. На практике часто все данные в сегменте могут отображаться в КОБОЛ тетрадь. Помимо DL / I использование запроса, поле может быть определено в IMS, чтобы данные можно было скрыть от определенных приложений по соображениям безопасности. Компонент базы данных IMS можно приобрести отдельно, без компонента диспетчера транзакций, и использовать его в таких системах, как CICS.

Существует три основных формы иерархических баз данных IMS:

"Полнофункциональные" базы данных

  • Непосредственно произошел от Интерфейс языка данных (DL / I) базы данных, изначально разработанные для Apollo, полнофункциональные базы данных могут иметь первичные и вторичные индексы, доступ к которым осуществляется с помощью вызовов DL / I из прикладной программы, например SQL звонки в Db2 или же Oracle.
  • Доступ к полнофункциональным базам данных можно получить различными способами, хотя Hierarchical Direct (HDAM) и Hierarchical Indexed Direct (HIDAM ) доминируют. Другие форматы - это простой иерархический индексированный последовательный (ШИСАМ ), Иерархический последовательный (HSAM ) и иерархически индексированные последовательные (ПРИВЕТ СЭМ ).
  • Полнофункциональные базы данных хранят данные с использованием VSAM, собственный метод доступа z / OS или Последовательный переполнение (OSAM), метод доступа, специфичный для IMS, который оптимизирует программу канала ввода-вывода для шаблонов доступа IMS. В частности, производительность OSAM выигрывает от последовательного доступа к базам данных IMS (последовательная буферизация OSAM).

Базы данных "Fast Path"

  • Базы данных Fast Path оптимизированы для чрезвычайно высокой скорости транзакций.[4] Базы данных ввода данных (DEDB) и базы данных основного хранилища (MSDB) - это два типа баз данных Fast Path. DEDB используют метод прямого (рандомизирующего) доступа, аналогичный полнофункциональному HDAM, а IMS V12 предоставляет функцию вторичного индекса DEDB. Базы данных MSDB не поддерживают вторичное индексирование. Варианты виртуального хранилища (VSO) DEDB могут заменить MSDB в современных выпусках IMS, поэтому MSDB постепенно исчезают.

Производительность DEDB достигается за счет использования высокопроизводительного метода доступа (Media Manager), асинхронной записи после фиксации и оптимизированных путей кода. Ведение журнала сведено к минимуму, так как данные на диске не обновляются до фиксации, поэтому не требуется ни UNDO (перед изображением), ни функция возврата. Незавершенные изменения можно просто отбросить. Начиная с IMS версии 11, DEDB могут использовать 64-разрядное хранилище z / OS для буферов базы данных. Архитектура DEDBs включает концепцию единицы работы (UOW), которая упростила реализацию эффективной утилиты онлайн-реорганизации. Эта функция включена в базовый продукт.

Большие базы данных высокой доступности (HALDB)

  • IMS V7 представила HALDB, расширение полнофункциональных баз данных IMS, чтобы обеспечить лучшую доступность, лучшую обработку чрезвычайно больших объемов данных, а с IMS V9 - онлайн-реорганизацию для поддержки непрерывной доступности. (Инструменты сторонних производителей до IMS V9 обеспечивали исключительно онлайн-реорганизацию.) HALDB может хранить более 40 терабайт данных.[5]

DEDB быстрого пути могут быть построены только поверх VSAM. Базы данных DL / I могут быть построены поверх VSAM или OSAM с некоторыми ограничениями в зависимости от организации базы данных. Хотя несколько лет назад максимальный размер набора данных VSAM z / OS увеличился до 128 ТБ, IMS по-прежнему ограничивает набор данных VSAM 4 ГБ (а OSAM - 8 ГБ). Это «ограничение» просто означает, что клиенты IMS будут использовать несколько наборов данных для больших объемов данных. VSAM и OSAM обычно называются методами доступа, а «логическое» представление базы данных IMS называется «организацией» базы данных (HDAM, HIDAM, HISAM и т. Д.). Внутренне данные связаны с использованием 4-байтового указатели или адреса. В наборах данных базы данных (DBDS) указатели упоминаются как RBA (относительные байтовые адреса).

В совокупности возможности IMS, связанные с базой данных, часто называют БД IMS. IMS DB росла и развивалась на протяжении почти четырех десятилетий, чтобы удовлетворить множество бизнес-потребностей. IMS с помощью оборудования z / OS - средства связи - поддерживает N-стороннее совместное использование баз данных между IMS. Многие большие конфигурации включают несколько систем IMS, управляющих общими базами данных, метод, обеспечивающий масштабируемый рост и избыточность системы в случае аппаратных или программных сбоев.

Менеджер транзакций

IMS также является надежным менеджер транзакций (IMS TM, также известный как IMS DC) - один из "большой тройки" классических менеджеров транзакций наряду с CICS и BEA (теперь Oracle) Смокинг. Диспетчер транзакций взаимодействует с конечным пользователем (подключенным через VTAM или же TCP / IP, включая 3270 и Пользовательские веб-интерфейсы ) или другое приложение, обрабатывает бизнес-функцию (например, снятие с банковского счета) и поддерживает состояние на протяжении всего процесса, гарантируя, что система правильно записывает бизнес-функцию в хранилище данных. Таким образом, IMS TM очень похож на веб-приложение, работающее через Программа CGI (например), чтобы предоставить интерфейс для запроса или обновления базы данных. IMS TM обычно использует в качестве базы данных IMS DB или Db2. При использовании отдельно с Db2 компонент IMS TM можно приобрести без компонента IMS DB.

IMS TM использует парадигму обмена сообщениями и очередей. Программа управления IMS получает транзакцию, введенную с терминала (или веб-браузера, или другого приложения), а затем сохраняет транзакцию в очередь сообщений (в памяти или в наборе данных). Затем IMS вызывает свой планировщик для транзакции в очереди, чтобы запустить программу бизнес-приложения в области обработки сообщений. Область обработки сообщений извлекает транзакцию из очереди сообщений IMS и обрабатывает ее, считывая и обновляя базы данных IMS и / или Db2, обеспечивая надлежащую запись транзакции. Затем, если требуется, IMS помещает ответное сообщение обратно в очередь сообщений IMS. Как только выходное сообщение готово и доступно, программа управления IMS отправляет его обратно в исходный терминал. IMS TM может обрабатывать весь этот процесс тысячи (или даже десятки тысяч) раз в секунду. В 2013 году IBM завершила тестирование IMS версии 13, продемонстрировав способность обрабатывать 100 000 транзакций в секунду в одной системе IMS.[6]

Заявление

До появления IMS предприятиям и правительствам приходилось писать собственные среды обработки транзакций. IMS TM обеспечивает простую, удобную в использовании, надежную стандартную среду для высокопроизводительного выполнения транзакций. Фактически, большая часть мировой банковской индустрии полагается на IMS,[нужна цитата ] включая США Федеральный резерв. Например, есть вероятность, что снятие денег с банкомат (ATM) инициирует транзакцию IMS. Несколько китайских банков недавно приобрели IMS, чтобы поддержать растущую финансовую индустрию этой страны.

Сегодня IMS дополняет Db2, IBM реляционная база данных Система, представленная в 1982 году. В целом IMS работает быстрее, чем Db2 для общих задач, но может потребовать больше усилий по программированию для разработки и поддержки для неосновных задач. Реляционные базы данных обычно превосходят в тех случаях, когда требования, особенно требования к отчетности, часто меняются или требуют различных точек зрения за пределами основной или исходной функции.

Относительный "хранилище данных "может использоваться для дополнения базы данных IMS. Например, IMS может обеспечивать первичные транзакции банкомата, поскольку он хорошо справляется с такой конкретной задачей. Однако ночные копии данных IMS могут копироваться в реляционные системы, так что различные отчеты и над данными могут выполняться задачи обработки, что позволяет каждому типу базы данных лучше всего сосредоточиться на своей относительной силе.

Смотрите также

Рекомендации

  1. ^ «История IMS: истоки в НАСА». IBM. Получено 2019-06-25.
  2. ^ Информационный бюллетень IBM IMS Том 902
  3. ^ Луонго, Крис и др. (Октябрь 2008 г.). Сказка о Верне Уоттсе. Международная корпорация бизнес-машин. Проверено 7 апреля 2009 года.
  4. ^ Система управления информацией IBM (IMS) Институт профессионалов центров обработки данных
  5. ^ Льюис, Рич и др. (Июнь 2003 г.). Полное руководство по IMS HALDB Все, что вам нужно знать для управления HALDB. Международная корпорация бизнес-машин. п. 4. ISBN  0-7384-5343-9. Проверено 21 июня, 2008.
  6. ^ «Улучшения IMS 13 достигли эталонного показателя производительности». MSP Communications. Получено 2018-02-07.

внешняя ссылка