terça-feira, 11 de junho de 2013

☕ IBM Mainframe & DB2: a engenharia relacional que sustenta o mundo

 

Bellacosa Mainframe apresente o IBM DB2 schemas tables columns and rows

☕ IBM Mainframe & DB2: a engenharia relacional que sustenta o mundo



🧠 Introdução – DB2 no Mainframe não é “apenas um banco”

Quando alguém diz “DB2 é um banco de dados relacional”, está tecnicamente correto…
e conceitualmente incompleto.

No IBM Mainframe, o DB2 não é um software isolado.
Ele é parte da espinha dorsal do z/OS, responsável por processar trilhões de dólares, milhões de transações por segundo e manter sistemas que não podem falhar — nunca.

Enquanto no mundo distribuído o banco “reinicia”,
no mainframe o DB2 continua.


🕰️ Origem & História – da teoria acadêmica ao Big Iron

Tudo começa em 1970, quando Edgar F. Codd, pesquisador da IBM, publica o artigo que mudaria a computação:

“A Relational Model of Data for Large Shared Data Banks”

Ali nascia o modelo relacional.

💡 Curiosidade Bellacosa
O modelo relacional nasceu antes do DB2.
O DB2 foi a industrialização dessa teoria no ambiente mais exigente do planeta: o mainframe.

  • 1983 → DB2 v1 no MVS

  • SQL ainda era novidade

  • Muitos achavam que banco relacional era “moda acadêmica”

Quatro décadas depois…
👉 o dinheiro do mundo discorda.


⚙️ DB2 no Mainframe: como ele realmente funciona

No z/OS, o DB2 é um subsistema profundamente integrado, explorando:

  • Endereçamento de memória avançado

  • Controle sofisticado de concorrência

  • Logging e recovery em nível cirúrgico

  • Data Sharing entre múltiplos LPARs

Ele não vive sozinho:

  • Integra-se ao WLM

  • Usa RACF para segurança

  • Depende de DFS/SMS para storage

  • Trabalha com IRLM para locking

Comentário El Jefe
DB2 no mainframe não é “um processo rodando”.
É um cidadão de primeira classe do sistema operacional.


🧩 Os 4 componentes fundamentais de um banco relacional

(e como o DB2 os executa em escala real)

1️⃣ Tables – onde o dado mora

A tabela é a principal estrutura lógica do modelo relacional.

No DB2:

  • Criada com CREATE TABLE

  • Armazenada fisicamente em Tablespaces

  • Representa entidades reais do negócio:

    • CLIENTE

    • CONTA

    • TRANSACAO

🪺 Easter Egg
Você nunca acessa o dataset da tabela diretamente.
DB2 abstrai tudo — quem tenta “dar jeitinho” apanha 😈


2️⃣ Columns – o contrato do dado

As colunas definem:

  • Tipo

  • Tamanho

  • Regra de nulidade

CPF CHAR(11) NOT NULL SALDO DECIMAL(15,2) DT_ABERTURA DATE

💡 Dica Bellacosa
No DB2 z/OS, erro de modelagem vira dívida técnica de décadas.
Mainframe não perdoa definição mal pensada.


3️⃣ Rows – onde a vida acontece

Cada row é um fato real do negócio:

  • Um cliente

  • Uma conta

  • Uma transação às 14:32:10

No DB2:

  • Linhas são protegidas por locking avançado

  • Trabalham com commit, rollback e isolamento

  • Suportam milhares de acessos simultâneos

Comentário El Jefe
DB2 nasceu para concorrência massiva antes disso virar problema no mercado.


4️⃣ Keys & Relationships – a alma do modelo relacional

Aqui mora a inteligência:

  • Primary Key → identidade

  • Foreign Key → relacionamento

  • Indexes → performance

  • Constraints → integridade

🧠 Curiosidade histórica
Antes do DB2, muitos sistemas usavam arquivos hierárquicos (IMS).
O modelo relacional trouxe algo revolucionário:
👉 relacionar dados sem duplicar estrutura física.


DB2 Schema


🧱 O 5º elemento invisível (e essencial): SCHEMA

Se tabela é a casa…
Schema é o bairro inteiro.

📌 O que é Schema no DB2?

Schema é um namespace lógico que organiza objetos:

  • Tables

  • Views

  • Indexes

  • Procedures

  • Functions

ELJEFE.CLIENTE ELJEFE.CONTA ELJEFE.TRANSACAO

Sem schema, o DB2 seria como:

  • Dataset sem HLQ

  • PDS sem padrão

  • Ambiente pronto para desastre


⚙️ Funcionamento prático

  • Todo objeto pertence a um schema

  • Se não informado:

    • DB2 usa o CURRENT SQLID

SET CURRENT SQLID = 'ELJEFE'; SELECT * FROM CLIENTE;

Na prática:

SELECT * FROM ELJEFE.CLIENTE;

Comentário Bellacosa
Isso é HLQ de dataset aplicado ao mundo relacional.


🔐 Schema e Segurança

Schema também é governança:

  • Permissões por schema

  • Integração com RACF

  • Separação clara entre sistemas e times

🛡️ Dica El Jefe
Grande parte dos erros em produção não é SQL errado —
é schema errado.


🧠 Visão Jedi – tudo conectado

Agora o modelo completo:

SCHEMA └── TABLE ├── COLUMNS ├── ROWS └── KEYS / CONSTRAINTS
  • Schema organiza

  • Tabela estrutura

  • Coluna define

  • Linha materializa

  • Chave relaciona

Tudo isso sustentado por DB2 + z/OS + RACF.


🧪 Dicas práticas Bellacosa Mainframe

✔ Pense em volume e longevidade, não só no hoje
✔ Performance começa no CREATE TABLE
✔ DB2 é arquitetura, não só SQL
✔ Schema bem definido evita desastre silencioso
✔ Mainframe foi feito para não cair


🥚 Easter Eggs & Curiosidades finais

  • DB2 sobrevive a falhas que derrubariam qualquer stack moderna

  • Muitos padrões SQL nasceram no DB2

  • O otimizador do DB2 z/OS é referência mundial

  • COBOL + DB2 ainda move a maior parte do dinheiro do planeta


☕ Conclusão – DB2 é filosofia

Entender os componentes do modelo relacional é fácil.
Entender como o DB2 os executa em escala planetária é outra história.

No El Jefe, a regra é clara:

Quem domina DB2 no Big Iron, domina sistemas críticos de verdade.

Nos vemos no próximo café ☕
Bellacosa Mainframe


Sem comentários:

Enviar um comentário