IBM 정보 관리 시스템

IBM Information Management System
IBM 정보 관리 시스템
IBM logo.svg
초기 릴리즈1966년, 56년(연장)
안정된 릴리스
2017년 10월 3일, 4년 전(2017-10-03)
운영 체제z/OS V2.2 이후
플랫폼IBM System z
유형데이터베이스트랜잭션 처리 서브시스템
면허증.전매의
웹 사이트www.ibm.com/software/data/ims/index.html

IBM IMS(Information Management System)는 트랜잭션 처리를 지원하는 공동 계층형 데이터베이스 및 정보 관리 시스템입니다.

역사

IBM은 1966년부터 아폴로 프로그램을 위해 록웰과 캐터필러와 함께 IMS를 설계했는데, 이 프로그램은 새턴 V 달 로켓과 아폴로 우주선의 매우재료명세서(BOM)를 수집하는 데 사용되었다.

최초의 [1]"IMS READY" 메시지1968년 8월 14일 캘리포니아 다우니에 있는 IBM 2740 단말기에 표시되었습니다.그 사이 IBM System/360 기술이 현재의 z/OSIBM zEnterprise System 기술로 발전하면서 IMS는 많은 발전을 거쳤습니다.예를 들어 IMS는 Java 프로그래밍 언어, JDBC, XML 및 2005년 후반 이후 웹 서비스를 지원합니다.

Vern Watts는 수년간 IMS의 최고 설계자였다.Watts는 1956년 IBM에 입사하여 2009년 [2]4월 4일 사망할 때까지 IBM의 실리콘 밸리 개발 연구소에서 근무했습니다.그는 1960년대부터 [3]계속 IMS에 종사해 왔다.

데이터베이스

IMS 데이터베이스 구성요소는 IBM의 나중에 출시된 관계형 데이터베이스인 IBM DB2와는 상당히 다른 계층 모델을 사용하여 데이터를 저장합니다.IMS에서는 계층형 모델은 세그먼트라고 불리는 데이터 블록을 사용하여 구현됩니다.각 세그먼트는 필드라고 하는 여러 개의 데이터를 포함할 수 있습니다.예를 들어 고객 데이터베이스에는 전화, 이름, 경과시간 등의 필드가 있는 루트세그먼트(또는 계층의 맨 위 세그먼트)가 있는 경우가 있습니다.하위 세그먼트는 다른 세그먼트 아래에 추가할 수 있습니다. 예를 들어, 고객이 회사에 발주한 각 주문을 나타내는 각 고객 세그먼트 아래에 하나의 주문 세그먼트를 추가할 수 있습니다.마찬가지로, 각 주문 세그먼트에는 주문의 각 항목에 대한 많은 하위 세그먼트가 있을 수 있습니다.다른 데이터베이스와 달리 세그먼트의 모든 데이터를 IMS에 정의할 필요는 없습니다.세그먼트는 40바이트 크기로 정의할 수 있지만 쿼리 실행 시 세그먼트를 찾기 위해 사용할 수 있는 키필드로 정의할 수 있는 필드는 6바이트밖에 없습니다.IMS는 프로그램의 지시에 따라 40바이트를 모두 취득하여 저장하지만 다른 바이트가 무엇을 나타내는지 이해하지 못할 수 있습니다.실제로는 세그먼트 내의 모든 데이터가 COBOL 카피북에 매핑되는 경우가 많습니다.DL/I 쿼리 사용 이외에도 IMS에서 필드를 정의하여 보안상의 이유로 특정 애플리케이션에서 데이터를 숨길 수 있습니다.IMS의 데이터베이스 컴포넌트는 트랜잭션 매니저 컴포넌트를 사용하지 않고 스탠드아론으로 구입하여 CICS 등의 시스템에서 사용할 수 있습니다.

IMS 계층형 데이터베이스에는 다음 3가지 기본 형식이 있습니다.

'풀 펑션'

  • 원래 Apollo용으로 개발된 DL/I(Data Language Interface) 데이터베이스의 직접 하위인 전체 기능 데이터베이스는 기본 및 보조 인덱스를 가질 수 있으며, IBM DB2 또는 Oracle에 대한 SQL 호출과 같은 애플리케이션 프로그램의 DL/I 호출을 사용하여 액세스할 수 있습니다.
  • HDAM(Hierarchical Direct)과 HIDAM(Hierarchical Indexed Direct)이 우세하지만 전체 기능 데이터베이스는 다양한 방법으로 액세스할 수 있습니다.다른 형식은 Simple Hierarchical Indexed Sequential(SHISAM; 단순 계층 인덱스 시퀀셜), Hierarchical Indexedial(HISAM; 계층 인덱스시퀀셜) 및 Hierarcharchical Indexedial(HISAM; 계층 인덱스시퀀셜)입니다.
  • 풀 펑션 데이터베이스는 네이티브 z/OS 액세스 방식인 VSAM 또는 IMS 액세스 패턴에 맞게 I/O 채널 프로그램을 최적화하는 IMS 고유의 액세스 방식인 OSAM(Overflow Sequential)을 사용하여 데이터를 저장합니다.특히, OSAM 의 퍼포먼스는, IMS 데이터베이스의 시퀀셜 액세스(OSAM 시퀀셜 버퍼링)에 의해서 메리트가 있습니다.

"Fast Path" 데이터베이스

  • Fast Path 데이터베이스는 매우 높은 트랜잭션 [4]속도에 맞게 최적화되어 있습니다.데이터 입력 데이터베이스(DEDB)와 메인 스토리지 데이터베이스(MSDB)는 Fast Path 데이터베이스의 두 가지 유형입니다.DEDB는 Full Function HDAM 및 IMS V12가 DEDB Secondary Index 기능을 제공하는 것과 유사한 직접(랜덤) 액세스 기술을 사용합니다.MSDB는 보조 인덱싱을 지원하지 않습니다.Virtual Storage Option(VSO; 가상 스토리지 옵션) DEDB는 최신 IMS 릴리즈에서 MSDB를 대체할 수 있기 때문에 MSDB는 점차 사라지고 있습니다.

DEDB 퍼포먼스는 하이 퍼포먼스(Media Manager) 액세스 방식, 비동기 쓰기 후 커밋 및 최적화된 코드 경로를 사용하여 이루어집니다.커밋될 때까지 디스크에서 데이터가 업데이트되지 않기 때문에 로깅이 최소화됩니다.따라서 UNDO(이미지 이전) 로깅은 필요하지 않으며 백아웃 기능도 필요하지 않습니다.커밋되지 않은 변경은 간단히 폐기할 수 있습니다.IMS 버전 11 이후 DEDB는 데이터베이스 버퍼에 z/OS 64비트 스토리지를 사용할 수 있습니다.DEDB 아키텍처에는 효과적인 온라인 재구성 유틸리티를 쉽게 구현할 수 있는 Unit of Work(UOW) 개념이 포함되어 있습니다.이 기능은 기본 제품에 포함되어 있습니다.

High Availability Large Database(HALDB; 고가용성 대용량 데이터베이스)

  • IMS V7은 가용성 향상, 대규모 데이터 볼륨 처리 향상 및 지속적인 가용성을 지원하기 위한 온라인 재구성을 제공하기 위해 IMS 풀 펑션 데이터베이스의 확장인 HALDB를 도입했습니다.(IMS V9보다 이전부터 서드파티제의 툴이 독점적으로 제공되었습니다).HALDB는 40테라바이트가 [5]넘는 데이터를 저장할 수 있습니다.

고속 패스 DEDB는 VSAM 위에만 구축할 수 있습니다.DL/I 데이터베이스는 VSAM 또는 OSAM 위에 구축할 수 있지만 데이터베이스 구성에 따라 몇 가지 제한이 있습니다.몇 년 전에 z/OS VSAM 데이터 세트의 최대 크기가 128TB로 증가했지만 IMS에서는 여전히 VSAM 데이터 세트를 4GB(및 OSAM을 8GB)로 제한합니다.이러한 "제한"은 IMS 고객이 대량의 데이터에 대해 여러 데이터 세트를 사용한다는 것을 의미합니다.VSAM과 OSAM은 보통 접근 방식, IMS의 데이터베이스 '논리적인' 뷰는 데이터베이스 '조직'(HDAM, HIDAM, HISAM 등)이라고 불립니다.내부적으로 데이터는 4바이트 포인터 또는 주소를 사용하여 링크됩니다.데이터베이스 데이터 세트(DBDS)에서는 포인터를 RBA(상대 바이트 주소)라고 부릅니다.

데이터베이스 관련 IMS 기능을 통칭하여 IMS DB라고 부르는 경우가 많습니다. IMS DB는 약 40년 동안 무수한 비즈니스 요구를 지원하기 위해 성장 및 발전해 왔습니다.IMS는 z/OS 하드웨어(Coupling Facility)의 지원을 받아 데이터베이스의 N-way 간 공유를 지원합니다.많은 대규모 구성에는 공통 데이터베이스를 관리하는 여러 IMS 시스템이 포함되어 있습니다.이 기술은 하드웨어 또는 소프트웨어 장애 시 확장 가능한 확장성과 시스템 용장성을 제공합니다.

트랜잭션 매니저

IMS는 견고한 트랜잭션 매니저(IMS TM, 일명 IMS DC)이기도 합니다.이것은 CICS 및 BEA(현재Oracle) Tuxedo와 함께 "빅3"의 클래식 트랜잭션 매니저 중 하나입니다.트랜잭션 매니저는 최종 사용자(3270 사용자 인터페이스 포함) 또는 다른 애플리케이션과 대화하여 비즈니스 기능(은행 계좌 인출 등)을 처리하고 프로세스 내내 상태를 유지하며 시스템이 비즈니스 기능을 데이터스토어에 올바르게 기록하도록 합니다.따라서 IMS TM은 CGI 프로그램을 통해 작동하며 데이터베이스를 쿼리하거나 업데이트하는 인터페이스를 제공하는 웹 애플리케이션과 매우 유사합니다.IMS TM은 일반적으로 IMS DB 또는 DB2 중 하나를 백엔드 데이터베이스로 사용합니다.IMS TM 컴포넌트를 DB2와 함께 단독으로 사용하는 경우 IMS DB 컴포넌트 없이 구입할 수 있습니다.

IMS TM은 메시징 및 큐잉 패러다임을 사용합니다.IMS 제어 프로그램은 단말(또는 웹 브라우저 또는 기타 응용 프로그램)에서 입력된 트랜잭션을 수신한 후 메시지 큐(메모리 또는 데이터 세트)에 저장합니다.다음으로 IMS는 큐잉된 트랜잭션에서 스케줄러를 호출하여 메시지 처리 영역에서 비즈니스 애플리케이션 프로그램을 시작합니다.메시지 처리 영역은 IMS 메시지 큐에서 트랜잭션을 가져와 처리하며 IMS 및/또는 Db2 데이터베이스를 읽고 업데이트하여 트랜잭션의 적절한 기록을 보장합니다.그런 다음 필요에 따라 IMS는 응답 메시지를 IMS 메시지큐에 다시 큐잉합니다.출력 메시지가 완성되어 사용 가능하게 되면, IMS 제어 프로그램은 그것을 발신기지 단말기로 반송합니다.IMS TM은 이 프로세스 전체를 초당 수천 번(또는 수만 번) 처리할 수 있습니다.2013년에 IBM은 IMS 버전 13에 대한 벤치마크를 완료하여 단일 IMS [6]시스템에서 초당 100,000건의 트랜잭션을 처리할 수 있는 능력을 입증했습니다.

어플

IMS 이전에는 기업 및 정부가 직접 트랜잭션 처리 환경을 작성해야 했습니다.IMS TM은 고성능 트랜잭션 실행을 위한 간단하고 사용하기 쉽고 신뢰성 높은 표준 환경을 제공합니다.사실, 세계 은행 산업의 대부분은 미국 연방준비제도이사회를 포함[citation needed]IMS에 의존하고 있다.예를 들어 현금자동입출금기(ATM)에서 돈을 인출하면 IMS 트랜잭션이 트리거될 수 있습니다.몇몇 중국 은행들은 최근 급성장하는 중국 금융 산업을 지원하기 위해 IMS를 구입했다.

오늘날 IMS는 1982년에 도입된 IBM의 관계형 데이터베이스 시스템인 IBM DB2를 보완합니다.일반적으로 IMS는 일반적인 태스크에서 Db2보다 더 빠르게 수행되지만, 비주요 태스크의 설계 및 유지보수에 더 많은 프로그래밍 작업이 필요할 수 있습니다.관계형 데이터베이스는 요건, 특히 보고 요건이 자주 변경되거나 주요 기능 또는 원래 기능 이외의 다양한 관점을 필요로 하는 경우에 일반적으로 우수하다는 것이 입증되었다.

관계형 "데이터 웨어하우스"를 사용하여 IMS 데이터베이스를 보완할 수 있습니다.예를 들어 IMS는 프라이머리 ATM 트랜잭션을 제공할 수 있습니다.이것은, 이러한 특정의 태스크에 대해서 적절히 동작하기 때문입니다.단, IMS 데이터의 야간 복사는 데이터에 대한 다양한 보고서 및 처리 작업을 수행할 수 있도록 관계형 시스템에 복사할 수 있습니다.이것에 의해, 각 종류의 데이타베이스는 상대적인 강도에 가장 초점을 맞출 수 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "History of IMS: Beginnings at NASA". IBM. Retrieved 2019-06-25.
  2. ^ IBM IMS 뉴스레터 제902권
  3. ^ Luongo, Chris 등 (2008년 10월) 와츠 이야기.International Business Machines Corporation.2009년 4월 7일 취득.
  4. ^ IBM의 데이터 센터 전문가를 위한 정보 관리 시스템(IMS) 연구소
  5. ^ Lewis, Rich et al. (2003년 6월)「Complete IMS HALDB Guide All You You Know to Management HALDB」(HALDB 관리에 필요한 모든 정보)국제업무기계공사, 페이지 4. ISBN 0-7384-5343-9.2008년 6월 21일에 취득.
  6. ^ "IMS 13 Enhancements Achieve Performance Benchmark". MSP Communications. Retrieved 2018-02-07.

외부 링크