This article was accepted into the corpus but its outbound wikilinks were never NER-processed — typical at the deepest BFS hop or when the run's entity cap was reached. No expansion funnel to show.
| IMS (database) | |
|---|---|
| Name | IMS (database) |
| Developer | IBM |
| Released | 1968 |
| Latest release | [varies by platform] |
| Written in | PL/I, assembler, C |
| Operating system | z/OS, z/VSE, z/TPF |
| Genre | Hierarchical database, transaction management |
| License | Proprietary |
IMS (database)
IMS is a hierarchical database and transaction management system originally developed by IBM for high-throughput online transaction processing. It combines a hierarchical data storage model with a transaction monitor and recovery services used in large-scale commercial, financial, and governmental information systems. IMS has driven deployments across Mainframe environments including z/OS, z/VSE, and z/TPF platforms and has influenced subsequent systems in the fields of database management system, transaction processing, and legacy system modernization.
IMS comprises two principal components: a hierarchical Database Manager and a Transaction Manager (IMS TM). The Database Manager implements a tree-structured data model with predefined record types and physical access paths, while the Transaction Manager orchestrates message processing, scheduling, and recovery for online transaction applications. IMS is tightly integrated with CICS-style transaction concepts and has been used alongside COBOL, PL/I, Assembler, and Java applications. Major adopters include American Express, Bank of America, United Airlines, Internal Revenue Service, and other large enterprise computing organizations.
IMS originated at IBM in the mid-1960s to support the Apollo program logistics and soon expanded to commercial use after the launch of System/360. Early versions addressed the needs of batch and online processing for airlines, banking, and government. Throughout the 1970s and 1980s IMS evolved with enhancements for recovery, concurrency, and hierarchical indexing; later additions introduced support for SQL interfaces and integration with distributed systems. IMS development paralleled technologies such as DB2, IDMS, and Adabas, and has coexisted with transaction systems like CICS and distributed frameworks such as MQSeries (later IBM MQ).
IMS employs a hierarchical database model organized into records and segments forming parent-child trees; physical access is provided via pathnames and segment identifiers. Data is stored in partitioned datasets on mainframe storage and indexed using techniques such as hierarchical indexes and secondary key structures; recovery uses redo/undo logs and offline image copies. The architecture also includes control regions for the Transaction Manager, multiple database regions, and message queuing subsystems compatible with VTAM and TCP/IP stacks on z/OS. The data model contrasts with relational models like SQL-based DB2 and set-oriented systems such as IDMS, favoring navigational access akin to early CODASYL implementations and hierarchical systems used in airline reservation systems.
Applications access IMS databases using programmatic interfaces such as DL/I calls, IMS TM conversational interfaces, and modern APIs including JDBC and ODBC wrappers. Legacy languages like COBOL, PL/I, and Assembler remain common for IMS applications, while integration adapters allow Java and C# clients via middleware like IBM WebSphere and IBM MQ. Access methods include hierarchical path navigation, segment search by key, and SQL access via IMS SQL or via IMS/DB2 integration layers. Development workflows historically used tools such as ISPF for source management and SDSF for system monitoring on z/OS.
IMS has been used heavily in transaction-intensive domains: airline reservations (e.g., systems influenced by Sabre), banking and financial clearing (e.g., SWIFT participants and commercial banks), insurance policy administration (major insurers and reinsurers), retail point-of-sale backends (large chains and supermarkets), telecommunications billing (legacy switches and operations), and government systems (taxation agencies and social services like Social Security Administration). Its strengths include fast, predictable transaction throughput and mature recovery, making it a choice for real-time authorization, settlement, and inventory control in enterprises such as Visa, Mastercard, and national postal services.
IMS is engineered for low-latency, high-throughput workloads on mainframe hardware, leveraging symmetrical multiprocessing and channel I/O subsystems. It supports partitioning and workload balancing across multiple IMS regions and coupling facilities in parallel sysplex configurations, interoperating with Parallel Sysplex for high availability. Reliability features include point-in-time recovery, journaling, two-phase commit coordination with systems like XA and MS DTC bridges, and extensive monitoring via tools from IBM Tivoli and third-party vendors. Performance tuning commonly involves buffer pool sizing, DASD layout, and optimization of access path definitions.
Organizations modernize IMS environments through approaches such as encapsulation with service-oriented architectures, exposing business logic via RESTful APIs and SOAP web services, migration to relational platforms like DB2 or cloud-native databases, and rehosting on hybrid mainframe-cloud infrastructures such as IBM Z cloud offerings. Integration technologies include adapters for IBM MQ, WebSphere Application Server, and enterprise service buses used by Accenture, Capgemini, and system integrators. Modern tooling enables DevOps practices with Git, automated testing, and continuous delivery pipelines while preserving mission-critical IMS workloads during digital transformation.
Category:IBM mainframe software