Translate

Mostrar mensagens com a etiqueta CA IDMS. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta CA IDMS. Mostrar todas as mensagens

quinta-feira, 10 de maio de 2007

O que é o banco de dados IDMS?

 

Bellacosa Mainframe o que é um banco de dados idms

O que é o banco de dados IDMS?

Se você trabalha ou pretende trabalhar com Mainframe, provavelmente ouvirá falar de Db2, IMS e, em empresas mais antigas, do IDMS.

Embora hoje o Db2 seja muito mais difundido, o IDMS (Integrated Database Management System) continua presente em diversas organizações que executam aplicações críticas desenvolvidas há décadas.


Definição simples

O IDMS é um Sistema Gerenciador de Banco de Dados (SGBD) criado originalmente pela Cullinane Corporation no início da década de 1970, posteriormente adquirido pela Computer Associates (CA Technologies) e hoje pertencente à Broadcom.

Ele foi projetado para computadores de grande porte (mainframes) e utiliza principalmente o modelo de banco de dados em rede (Network Database Model), padronizado pelo grupo CODASYL.

Em resumo:

IDMS é um banco de dados de alta performance para Mainframes baseado no modelo em rede, muito utilizado antes da popularização dos bancos relacionais.


Origem do nome

IDMS significa:

Integrated Database Management System

Ou seja:

Sistema Integrado de Gerenciamento de Banco de Dados.


Um pouco de história

Na década de 1970 praticamente não existiam bancos relacionais comerciais.

Os principais modelos eram:

  • Hierárquico (IMS)

  • Em Rede (IDMS)

  • Arquivos Sequenciais

  • VSAM

O IDMS rapidamente tornou-se um dos bancos mais utilizados em ambientes corporativos.

Era comum encontrá-lo em:

  • bancos;

  • seguradoras;

  • governos;

  • telecomunicações;

  • indústrias.


A empresa responsável

Linha do tempo:

1972

Cullinane Corporation

Cullinet Software

Computer Associates (CA)

CA Technologies

Broadcom

Mesmo após diversas aquisições, o produto continua sendo mantido.


O modelo em rede (Network Database)

O IDMS não é relacional.

Ele utiliza registros ligados diretamente entre si.

Imagine uma árvore genealógica onde uma pessoa pode possuir vários relacionamentos simultaneamente.

Exemplo:

CLIENTE
    │
    ├────────CONTA
    │
    ├────────EMPRÉSTIMO
    │
    └────────CARTÃO

Cada registro conhece diretamente seus relacionamentos.

Não existe JOIN como no SQL tradicional.


Como funciona

O programador navega pelo banco.

Em vez de perguntar:

SELECT *
FROM CLIENTE
JOIN CONTA

Ele faz algo parecido com:

Encontrar CLIENTE

↓

Ir para CONTA

↓

Ir para CARTÃO

↓

Ir para EMPRÉSTIMO

É chamada de navegação por ponteiros.


O conceito de SET

A estrutura principal do IDMS chama-se SET.

Um SET representa um relacionamento.

Exemplo:

CLIENTE

↓

SET

↓

CONTA

Ou

DEPARTAMENTO

↓

SET

↓

FUNCIONÁRIO

OWNER e MEMBER

Cada relacionamento possui:

OWNER

Registro principal.

MEMBER

Registro dependente.

Exemplo:

CLIENTE (OWNER)

↓

CONTA (MEMBER)

Banco orientado a navegação

O IDMS não procura dados como um banco SQL moderno.

Ele percorre caminhos previamente definidos.

CLIENTE

↓

CONTA

↓

MOVIMENTO

↓

LANÇAMENTO

Por isso era extremamente rápido.


Linguagens utilizadas

O IDMS possui integração com:

  • COBOL

  • PL/I

  • Assembler

  • C

O COBOL foi, de longe, a linguagem mais utilizada.


DML do IDMS

Em vez de SQL, o programador utiliza comandos específicos.

Exemplos:

  • FIND

  • GET

  • STORE

  • MODIFY

  • ERASE

  • CONNECT

  • DISCONNECT


Exemplo

Em COBOL:

FIND CLIENTE

↓

GET CONTA

↓

MODIFY CONTA

SQL existe?

Sim.

Versões modernas possuem suporte SQL.

Mas milhares de aplicações continuam usando a DML tradicional.


Estrutura física

O banco é dividido em:

  • Área (Area)

  • Página (Page)

  • Registro (Record)

  • Set

  • Segmentos

Tudo cuidadosamente organizado para reduzir acesso a disco.


Vantagens

Performance

Extremamente rápida.


Pouco espaço

Muito eficiente.


Alta estabilidade

Muitas bases funcionam há décadas.


Grande escalabilidade

Milhões de registros.


Excelente integração com COBOL

Foi desenvolvido pensando nisso.


Desvantagens

Curva de aprendizado

Maior que SQL.


Navegação complexa

Exige conhecer o modelo.


Poucos profissionais

Hoje existem poucos especialistas.


Menor flexibilidade

Mudanças estruturais costumam ser mais trabalhosas.


Onde ainda é utilizado?

Ainda pode ser encontrado em:

  • bancos;

  • seguradoras;

  • previdência;

  • órgãos públicos;

  • sistemas fiscais;

  • empresas de telecomunicações.

Principalmente em aplicações desenvolvidas entre os anos 1970 e 1990.


IDMS x IMS

IDMSIMS
RedeHierárquico
CODASYLIBM
PonteirosHierarquia
Mais flexívelMais rígido

IDMS x Db2

IDMSDb2
RedeRelacional
NavegaçãoSQL
SETJOIN
PonteirosÍndices

Curiosidades

1. O IDMS ajudou a popularizar o modelo CODASYL

Antes do domínio dos bancos relacionais, o padrão CODASYL era amplamente adotado para aplicações corporativas de alto desempenho, e o IDMS tornou-se sua implementação comercial mais conhecida.


2. Muitas empresas ainda executam aplicações IDMS

Apesar da idade da tecnologia, existem sistemas que processam operações críticas diariamente, especialmente em grandes organizações que investem em estabilidade e continuidade.


3. O desempenho sempre foi um diferencial

Como os relacionamentos são feitos por ponteiros, muitas operações de navegação podem ser extremamente rápidas, sem a necessidade de realizar junções complexas entre tabelas.


4. Modernização sem substituição

Em diversas empresas, aplicações COBOL que utilizam IDMS vêm sendo modernizadas por meio de APIs e integrações, mantendo o banco de dados em produção enquanto novas interfaces são desenvolvidas.


Erros comuns de iniciantes

"IDMS é um banco relacional"

Não. Seu modelo principal é o banco de dados em rede (Network Database) baseado no padrão CODASYL.


"Ele foi substituído completamente pelo Db2"

Embora muitas organizações tenham migrado para bancos relacionais, ainda existem ambientes produtivos que utilizam IDMS por sua estabilidade e desempenho.


"Quem aprende IDMS está estudando uma tecnologia morta"

O mercado é menor do que o de Db2, mas profissionais que dominam COBOL e IDMS continuam sendo procurados em empresas que mantêm aplicações legadas críticas.


Vale a pena aprender?

Se você pretende trabalhar em bancos, seguradoras, governo ou grandes empresas com sistemas legados, conhecer os conceitos do IDMS pode ser um diferencial importante.

Mesmo que seu foco principal seja Db2, estudar IDMS ajuda a compreender a evolução dos bancos de dados corporativos e dos modelos de navegação que influenciaram muitas tecnologias modernas.


Conclusão

O IDMS é um dos bancos de dados mais importantes da história do Mainframe. Baseado no modelo CODASYL em rede, ele foi projetado para oferecer alta performance e confiabilidade em aplicações corporativas críticas. Embora tenha sido ofuscado pelos bancos relacionais, continua presente em diversos ambientes produtivos e representa um capítulo fundamental da evolução dos sistemas de informação. Para um programador COBOL, compreender seus conceitos amplia a visão sobre arquiteturas legadas e facilita a manutenção e modernização de sistemas que ainda movimentam negócios em todo o mundo.

Vagner Renato Bellacosa, IBM Champion e especialista em IBM Mainframe
IBM Z17 SYSTEM ONLINE
Sobre o autor

Vagner Renato Bellacosa

IBM Champion 2026 • Especialista em IBM Mainframe

Vagner Renato Bellacosa trabalha com IBM Mainframe desde 1988 , é IBM Champion e especialista em COBOL, CICS, Db2, z/OS e IBM Z. Compartilha experiências profissionais, conhecimento técnico, história da computação e práticas do universo mainframe para aproximar novas gerações das tecnologias que sustentam empresas, bancos e governos ao redor do mundo.

IBM Champion IBM Z COBOL CICS Db2 z/OS Mainframe desde 1988