DB2 UDB for z/OS Vers - PowerPoint PPT Presentation

1 / 64
About This Presentation
Title:

DB2 UDB for z/OS Vers

Description:

Title: DB2 UDB for z/OS Vers o 8 Rompendo Limites Author: Jelson Jos Bottega Carvalho Last modified by: Jelson Jos Bottega Carvalho Created Date – PowerPoint PPT presentation

Number of Views:69
Avg rating:3.0/5.0
Slides: 65
Provided by: Jels
Category:
Tags: udb | db2 | vers

less

Transcript and Presenter's Notes

Title: DB2 UDB for z/OS Vers


1
DB2 UDB for z/OS Versão 8Rompendo Limites
  • Jelson Carvalho

2
Objetivos
  • Apresentar algumas melhorias do DB2 for OS/390
    Versão 8 em relação a versões anteriores
  • Introduzir conceitos utilizados na nova versão
  • Formar base de conhecimento para as demais
    apresentações do evento
  • Orientação principal para aspectos da
    administração de banco de dados

3
Principais aspectos
  • Escalabilidade
  • Disponibilidade
  • Desempenho
  • Funcionalidade
  • Instalação e migração
  • Conclusões

4
Escalabilidade
5
Escalabilidade
  • Removendo inibidores de crescimento
  • Explorando arquitetura de 64 bits
  • Mais partições
  • Mais arquivos log
  • Aumentando limites no SQL

6
Removendo inibidores de crescimento
  • Limites do DB2 for z/OS

  • V7 V8
  • Memória Virtual 231 264
  • Logs Ativas 31
    93
  • Logs Arquivadas 1000 10,000
  • Partições 254 4096
  • Tamanho do SQL 32 KB 2 MB
  • Tabelas no join 15 225

7
Explorando arquitetura de 64 bits
  • Suporte para endereçamento real fornecido pela
    z/Architecture do OS/390 V2R10
  • Sistema Operacional suportando aplicações de
    24-bit, 31-bit e 64-bit
  • 128GB (64GB máximo atual no z900) de memória
    central
  • Registradores de 64 bits, etc...

8
Evolução de 64 bit
  • Suporte de hardware para 64 bit zSeries,
    z/Architecture (z800, z900, z990)
  • Suporte do sistema operacional
  • Suporte de 64 bit para Memória Real (OS/390 V2R10
    ESAME mode )
  • Grandes quantidades de memória real (para
    performance)
  • Melhoria em todas as versões do DB2
  • Vantagens do data space na V6 (melhor que
    hiperpool)
  • Suporte de 64 bit para Memória Virtual (z/OS V1.2
    )
  • Explorado pelo DB2 V8 (requer z/OS 1.3)
  • Move grandes áreas de memória para acima da barra
  • Explorado pelo IRLM V2.2 (parte do DB2 V8)
  • Bloqueios sempre na memória privada acima da
    barra
  • Melhora escalabilidade, disponibilidade e
    facilidade
  • Não necessita mais de hiperpool ou data space

9
Utilização de 64 bit pelo DB2 - movimentação
acima da barra
16 EB
DBM1
Buffer pool
EDM pool
(DSCDBD)
RID lists
Sort pool
Compression
dictionary
Barra
2 GB
16 M
0
10
Suporte para 4096 partitions
  • Número máximo de partições aumentado de 254 para
    4096
  • Table spaces e índices
  • Table space usa DSSIZE para ir além de 254
    partições
  • ALTER TS ADD PARTITION acrescenta partições ao
    final
  • Tamanho máximo da tabela continua 16 TB para
    páginas de 4 KB
  • Convenção para nomes de arquivos expandida
  • 'A001 - 'A999' partições 1-999
  • 'B000' - 'B999' partições 1000-1999
  • 'C000' - 'C999' partições 2000-2999
  • 'D000' - 'D999' partições 3000-3999
  • 'E000' - 'E096' partições 4000-4096
  • Número máximo de partições permitidas depende do
    tamanho da página e do DSSIZE
  • Páginas de 4 KB, DSSIZE1 GB gt 4096 partições, 4
    TB tamanho máximo da tabela
  • Páginas de 4 KB, DSSIZE64 GB gt 256 partições,
    16 TB tamanho máximo da tabela

11
Suporte para mais arquivos log
  • Aumento no número de logs ativas de 31 para 93
  • Aumento no número de logs arquivadas que podem
    ser registradas no BSDS de 1000 para 10000
  • Ambos requerem conversão prévia do BSDS para
    acomodar informação adicional
  • Executar job DSNJCNVB para converter o BSDS
  • Tem que estar em Modo de Novas Funções antes que
    a conversão seja permitida

12
Aumentando limites no SQL
  • Limites do DB2 for z/OS

  • V7 V8
  • Nome da tabela() 18
    128
  • Nome da coluna 18
    30
  • Chave de índice 255 2000
  • Literais em caráter 255 32704
  • Tamanho de predicados 55 32704
  • Tamanho do SQL 32 KB
    2MB
  • Tabelas no join 15
    225
  • () Idem views, alias, índices, triggers,
    sinônimos

13
Disponibilidade
14
Disponibilidade
  • Evolução online de esquema
  • ALTER ao invés de DROP / CREATE
  • Data Partitioned Secondary Indexes (DPSI)
  • Recuperação a nível de sistema para um ponto no
    tempo
  • Alteração online de mais parâmetros do DSNZPARM

15
Evolução online de esquema
  • Mudança de partições
  • Adicionar uma partição ao final da tabela
  • Rodar partições
  • Redistribuir partições
  • Desvinculação entre particionamento e clustering
  • Possibilidade de fazer drop do partitioning index
  • Data Partitioned Secondary Indexes
  • Possibilidade de alterar o índice clustering
  • Aplicável também a tabelas não particionadas
  • Alteração de índices
  • Adicionar colunas a índices
  • Alteração de tabelas
  • Possibilidade de alterar tipos de dados e
    tamanhos (aumentos)
  • Inclui tipos de dados de colunas referenciadas em
    views
  • Inclui alteração de colunas usadas em índices

16
Adição de partição ao final da tabela
  • ALTER TABLE ... ADD PARTITION ENDING AT
    ("31-12-2003")

ts
npsi
pi
dpsi
Partição 1
1999 Jan
1999 Jan

1999 Fev
Partição 2
1999 Feb
2003 Out
Partição 58
2003 Oct
2003 Nov
Partição 59
2003 Nov
2003 Dez
Partição 60
2003 Dec
17
Rotação de partições (1)
18
Rotação de partições (2)
  • ALTER TABLE ... ROTATE FIRST TO LAST
    ENDING AT ("31-01-2004") RESET

19
Particionamento controlado pela tabela
  • CREATE TABLE CUSTOMER (
  • ACCOUNT_NUM INTEGER,
  • CUST_LAST_NM CHAR(30),
  • . . .
  • LAST_ACTIVITY_DT DATE,
  • STATE_CD CHAR(2))
  • PARTITION BY ( ACCOUNT_NUM ASC )
  • ( PARTITION 1 ENDING AT (199),
  • PARTITION 2 ENDING AT (299),
  • PARTITION 3 ENDING AT (399),
  • PARTITION 4 ENDING AT (499) )

101 102 103 104 105 106
201 202 203 204 205 206
401 402 403 404 405 406
301 302 303 304 305 306
20
Classificação dos índices na Versão 8
  • Um índice pode estar ou não correlacionado às
    colunas de particionamento de uma tabela
  • Partitioning index (PI)
  • Secondary index
  • Um índice pode ser ou não fisicamente
    particionado
  • Partitioned
  • Non-partitioned
  • Índice clustering
  • Qualquer índice pode ser o clustering
  • O índice clustering pode ser de chave não única

21
Partitioned index and non-partitioned index
Índice particionado - 1 partição por partição
de dados
101 102 103 104 105 106
201 202 203 204 205 206
401 402 403 404 405 406
301 302 303 304 305 306
TB
Tabela particionada
IX
Índice não particionado
22
Partitioning indexes (Partitioned and
Non-Partitioned)
Partitioned Partitioning index - part_ix_1
101 102 103 104 105 106
201 202 203 204 205 206
401 402 403 404 405 406
301 302 303 304 305 306
101,JAN,MG 102,FEV,AL 103,MAR,RS 104,ABR,ES 105,NO
V,GO 106,DEZ,BA
201,JAN,SP 202,FEV,RN 203,JUL,CE 204,AGO,RJ 205,OU
T,PE 206,DEZ,SC
301,ABR,PR 302,MAI,MT 303,JUN,PA 304,JUL,SE 305,SE
T,TO 306,NOV,AC
401,FEV,AM 402,MAR,PI 403,JUN,RO 404,SET,PB 405,OU
T,MS 406,NOV,MA
Tabela particionada
101,MG 102,AL 103,RS 104,ES 105,GO 106,BA
201,SP 202,RN 203,CE 204,RJ 205,PE 206,SC
301,PR 302,MT 303,PA 304,SE 305,TO 306,AC
401,AM 402,PI 403,RO 404,PB 405,MS 406,MA
Non-partitioned Partitioning index - part_ix_2
23
Secondary indexes (Partitioned and
Non-Partitioned)
Data Partitioned Secondary Index (DPSI) -
data_part_si_1
FEV MAR JUN SET OUT NOV
JAN FEV MAR ABR NOV DEZ
JAN FEV JUL AGO OUT DEZ
ABR MAI JUN JUL SET NOV
AC AL AM BA CE ES GO MA MG MS MT PA PB PE PI PR RJ
RN RO RS SC SE SP TO
106,JAN,BA 101,FEV,MG 102,MAR,AL 105,ABR,GO 104,NO
V,ES 103,DEZ,RS
205,JAN,PE 206,FEV,SC 201,JUL,SP 202,AGO,RN 203,OU
T,CE 204,DEZ,RJ
304,ABR,SE 303,MAI,PA 306,JUN,AC 302,JUL,MT 305,SE
T,TO 301,NOV,PR
404,FEV,PB 403,MAR,RO 405,JUN,MS 401,SET,AM 406,OU
T,MA 402,NOV,PI
Tabela particionada
Non-Partitioned Secondary Index (NPSI) -
non_part_si_2
24
Benefícios do DPSI
  • Online REORG
  • Não executa a fase de BUILD2 com DPSIs
  • Carga de partições (LOAD PART)
  • Sem páginas compartilhadas
  • Remove contenção de páginas e problemas de
    sobrecarga do GPB
  • Permite uso de estratégia mais eficiente para
    extensão de tabelas (APPEND)
  • Operações mais fáceis a nível de partição
  • Tornam mais fácil e eficiente a inclusão e
    exclusão de novas partições
  • Falha de armazenamento
  • Recuperação a nível de partição
  • Sobrecarga em data sharing
  • Designação por afinidade membro ? ? partição é
    efetiva no DPSI
  • Permite paralelismo de query

25
Outras melhorias de índices
  • ALTER INDEX ADD COLUMN
  • ALTER INDEX PADDED / NOT PADDED
  • Chaves de índices com tamanhos variáveis (NOT
    PADDED)
  • ALTER clustering index
  • Para tabelas particionadas e não particionadas
  • Efetivo imediatamente
  • REORG necessário para reordenar todas as linhas
    existentes na sequência do novo índice clustering
  • Outras melhorias na área de desempenho

26
ALTER TABLE data types suportados na V8
  • Dentro do mesmo tipo de grupo de dados
  • (caráter ou numérico)
  • Tamanho menor ? maior
  • ALTER TABLE tab1
  • ALTER COLUMN cola
  • SET DATA TYPE CHAR(20)
  • Para tipos de dados decimais, a mais b tem
    que ser maior do que zero ou não ocorre mudança
  • Para tipos de dados caráter, x tem que ser
    maior ou igual a zero

27
Que acontece à tabela e aos dados
  • Tabela
  • Nova definição registrada no catálogo e no
    diretório
  • Máximo de 255 ALTERS por table space antes que o
    REORG seja requerido
  • Table space é colocado em advisory
    reorg-pending (AREO)
  • Planos, packages e solicitações de SQL dinâmico
    guardadas na memória que referenciem a coluna
    alterada são invalidados
  • Valores do RUNSTATS para as colunas são
    invalidados e tratados como se fossem -1 (mesmo
    tratamento dado no aumento de colunas varchar na
    Versão 7)
  • Dados
  • Dados existentes permanecem inalterados
  • No SELECT, os dados são materializados no novo
    formato
  • INSERT e UPDATE alteram a linha inteira para o
    formato mais recente
  • REORG altera todas as linhas para a versão atual
    (mais recente) e melhora a performance (em muitos
    casos o REORG online pode ser usado)

28
Recuperação a nível de sistema para um ponto no
tempo
  • Mais fácil, flexível e permitindo recuperação
    mais rápida
  • Manuseia grande número de table spaces e índices
    (na V8 só suporta o subsistema DB2 inteiro ou o
    data sharing group)
  • Dois novos utilitários criados
  • BACKUP SYSTEM Cópia rápida por volume
  • DB2 databases (e logs)
  • Escopo de data sharing group
  • z/OS V1R5 requerido (DFSMShsm, DFSMSdss, DFSMS)
  • DASD que suporte o Flashcopy API
  • RESTORE SYSTEM
  • Para um ponto arbitrário no tempo
  • Manuseia eventos de creates, drops, LOG NO

29
Parâmetros de sistema já existentes na V7,
alteráveis online na V8
Parameter Panel Panel Field
CHGDC DSNTIPO DPROP Support
EDPROP DSNTIPO DPROP Support
SYSADM DSNTIPP System Admin 1
SYSADM2 DSNTIPP System Admin 2
SYSOPR1 DSNTIPP System Operator 1
SYSOPR2 DSNTIPP System Operator 2
CACHEDYN DSNTIP4 Cache Dynamic SQL
SRTPOOL DSNTIPC Sort Pool Size
XLKUPDLT DSNTIPI X Lock for Searched U/D
MAXKEEPD DSNTIPE Max Kept Dyn Stmts
PARTKEYU DSNTIP4 Update Part Key Cols
RESYNC DSNTIPR Resync Interval
IDTHTOIN DSNTIPR Idle Thread Timeout
MAXTYPE1 DSNTIPR Max Inactive DBATs
POOLINAC DSNTIP5 Pool Thread Timeout
TCPKPALV DSNTIP5 TCP/IP Keepalive
TCPALVER DSNTIP5 TCP/IP Already Verified
30
Desempenho
31
Desempenho
  • Habilidade de usar índices mais frequentemente
  • Mais predicados indexáveis
  • Varredura reversa de índices (backward scan)
  • Índices NOT PADDED (acesso IX-only para dados
    tipo VARCHAR)
  • Materialized Query Tables
  • Suporte para tabelas voláteis
  • Melhoria no EXPLAIN
  • Visual Explain inteligente

32
Predicados estágio 1 indexáveis com tipos de
dados diferentes
  • DB2 foi melhorado para permitir acesso via índice
    quando a variável de programa e a coluna da
    tabela não têm o mesmo tipo de dados ou tamanho
  • Atende linguagens de programação que não suportam
    todo o conjunto de tipos de dados do DB2
  • C/C não possui tipo de dados DECIMAL
  • Java não tem tipo de dados CHAR de tamanho fixo
  • Alguns exemplos
  • Coluna é decimal variável de programa é float
  • Coluna é char(3) Literal ou variável de programa
    é char(4)
  • Melhoria significante de performance para muitas
    aplicações
  • Pode ser usado com transitive closure
  • Existem ainda algumas restrições para estágio 1,
    indexável
  • Simplifica tarefas do programador de aplicações e
    do DBA

33
Predicado estágio 1 na Versão 8 - exemplos
salary
dec (12,2)
hv_float
floating
SELECT FROM employee WHERE salary gt
hv_float

Antes da V8
V8
  • Predicado estágio 1
  • Pode usar índice
  • pela coluna salário
  • Predicado estágio 2
  • Table space scan

34
Exemplo de Transitive Closure
SELECT DEPT.NAME, EMP.NAME FROM EMP, DEPT WHERE
EMP.DEPTID ? AND EMP.DEPTID DEPT.ID
AND DEPT.ID ?
CHAR(4)
CHAR(3)
Gerado
Antes da V8
A partir da V8
  • Predicado estágio 1
  • Pode usar índice pela
  • coluna DEPTID
  • Predicado estágio 2
  • Varredura do table space

35
Materialized Query Tables (MQT)
  • Previamente conhecida como "Automatic Summary
    Tables"
  • Otimizador é capaz de reescrever a solicitação
    para acessar a MQT em lugar da tabela ou view (se
    MQT for habilitada para otimização da query)
  • Melhoria significante de performance
  • Dois tipos de MQTs
  • Mantida pelo sistema (através da solicitação SQL
    REFRESH)
  • Mantida pelo usuário (através de triggers,
    atualizações batch, LOAD, etc.)

36
Sem Materialized Query Tables
Cada query é recomputado !
Q11, Q12, ...
Q21, Q22, ...
Agregação
Agregação
Join
Join
CLIENTE
VENDA
PRODUTO
TEMPO
LOCAL
Database
Warehouse
37
Com Materialized Query Tables
Reusa muitas vezes
Q11, Q12, ...
Q21, Q22, ...
MQT
MQT
Pré-computa uma vez
Armazena na MQT
Agregação
Agregação
Join
Join
CLIENTE
VENDA
PRODUTO
TEMPO
LOCAL
Database
Warehouse
38
Melhorias em índices
  • Índice de real tamanho variável
  • Acesso IX-only
  • Redução de espaço para o índice
  • ALTER INDEX PADDED / NOT PADDED REBUILD
  • Tamanho máximo da chave aumentado de 255 para
    2000 bytes
  • Chaves em Unicode podem se tornar maiores
  • DB2 em plataformas de LUW pode ter chaves gt 255
  • Suporte para varredura reversa do índice
  • Usada por scrollable cursors
  • Pode definir apenas um índice quando necessita
    ordem ASC e DESC para as mesmas colunas
  • Otimizador usa a varredura para frente se ambos
    os índices estiverem disponíveis (varredura
    reversa do índice só pode ser usada com dynamic
    prefetch

39
Varredura reversa de índice
  • DB2 pode selecionar um índice ascendente e usar a
    varredura reversa para evitar um sort em ordem
    descendente
  • Para ser capaz de usar um índice para varredura
    reversa
  • O índice tem que ser definido sobre as mesmas
    colunas usadas no ORDER BY e
  • A ordenação tem que ser exatamente oposta à
    requerida no ORDER BY
  • Se o índice for definido como DATE DESC, TIME
    ASC, pode fazer
  • Varredura direta para ORDER BY DATE DESC, TIME
    ASC
  • Varredura reversa para ORDER BY DATE ASC, TIME
    DESC
  • Mas tem que usar o sort para
  • ORDER BY DATE ASC, TIME ASC ou
  • ORDER BY DATE DESC, TIME DESC

40
Suporte para tabelas voláteis
  • Tabelas cujo conteúdo pode variar de vazio a
    muito grande em tempo de execução
  • Favorece o acesso através de índice para tabelas
    que possuem cardinalidade imprevisível
  • Melhoria significativa de performance para
    algumas aplicações SAP (cluster tables)
  • Pode evitar conflitos de bloqueio causados por
    caminhos de acesso diferentes para consultas
    diversas, acessando a mesma tabela

CREATE TABLE T1 ..... VOLATILE
41
Melhoria no EXPLAIN
  • Melhorias na solicitação EXPLAIN permitem obter
    informação de EXPLAIN para entradas no DB2
    global statement cache
  • Visual Explain melhorado para explorar esta nova
    função

42
Visual Explain inteligente
  • Melhorias significativas na ferramenta de Visual
    Explain
  • Informação muito mais detalhada sobre o caminho
    de acesso
  • Estatísticas mais detalhadas para cada nó no
    gráfico
  • Documento XML descrevendo o caminho de acesso
    escolhido para a query
  • Mais fácil para coletar informações para análise

43
Funcionalidade
44
Funcionalidade
  • Entrada e saída delimitadas no LOAD e no UNLOAD
  • Melhorias no RUNSTATS
  • Redistribuição de partições
  • Melhorias no Online REORG
  • Mudanças para suportar DPSIs
  • Novos padrões para melhoria de performance

45
Entrada e saída delimitadas no LOAD e no UNLOAD
  • Utilitários LOAD / UNLOAD aceitam / produzem
    arquivos delimitados
  • Benefícios
  • Facilita a importação / exportação de (grandes
    quantidades de) dados do DB2 for z/OS para
    sistemas operacionais em outras plataformas e
    vice versa
  • Elimina necessidade de escrever programas para
    converter dados de plataforma não z/OS no formato
    posicional para usar o utilitário LOAD do DB2 for
    z/OS ou para inclusão utilizando o INSERT
  • Descarregar / exportar dados de outro DBMS no
    formato delimitado e carregá-los no DB2 for z/OS

46
Melhorias no RUNSTATS
  • Coleta de estatísticas de distribuição não
    uniforme para colunas não indexadas
  • Técnica na V7 é usar programa separado - DSTATS
  • RUNSTATS da V8 permite coletar frequências e
    estatísticas de distribuição não uniforme para
    colunas ou grupo de colunas que não fazem parte
    de um índice
  • Usadas pelo otimizador e podem conduzir a
    melhoria significativa de performance de certas
    consultas
  • Não é suportada para estatísticas em linha
  • Pode também coletar os valores menos frequentes
    (LEAST)
  • RUNSTATS com UPDATE NONE REPORT NO
  • Invalida comandos existentes no Dynamic
    Statements Cache que referenciam objeto
    especificado
  • RUNSTATS com UPDATE NONE HISTORY ALL só atualiza
    as tabelas HISTORY

47
Redistribuição de partições
Partitioning
Part 1
Part 3
Part 4
Part 2
Index
Data
Part 2
Part 1
Part 4
Partitions
Part 3
LK'50000'
LK'80000'
Partitioning
Index
Part 2
Part 1
Part 3
Part 4
Data
Partitions
Part 1
Part 2
Part 3
Part 4
LK'30000'
LK'80000'
48
Etapas da redistribuição
  • Faz unload das linhas do table space ou de uma
    faixa de partições
  • Classifica as linhas pela(s) coluna(s) de
    particionamento e distribui pelo número de
    partições
  • A divisão não é perfeita se existirem muitas
    duplicatas de chaves
  • Recarrega os dados
  • Atualiza o valor da chave limite de cada partição
    no catálogo
  • Invalida planos, packages e o dynamic statement
    cache
  • Quando a ordem de clustering não casa com a chave
    de particionamento rodar o REORG duas vezes
  • Na primeira para mover as linhas para a partição
    correta
  • Na segunda para classificar na sequência de
    clustering

49
Melhorias no Online REORG
  • Não possui a fase de BUILD2 no REORG PART quando
    usando DPSIs
  • Suporte para processo de DISCARD com Online REORG
    SHRLEVEL CHANGE
  • Suporte para fazer Online REORG SHRLEVEL
    REFERENCE de todas as tabelas do catálogo
    (incluindo as que possuem links)
  • Permite especificar SCOPE PENDING para
    reorganizar somente as partições que estiverem em
    estado de reorg pending (REORP) ou em estado de
    advisory reorg pending (AREO) para um table space
    específico ou faixa de partições

50
Mudanças para suportar DPSIs
  • CHECK INDEX
  • Permite usar a opção PART para especificar a
    partição do DPSI a ser verificada
  • COPY
  • DSNUM pode especificar uma partição do DPSI
  • LISTDEF
  • PARTLEVEL permite especificar granularidade para
    DPSIs
  • TEMPLATE
  • Templates criadas para DPSIs podem fazer uso da
    variável PA

51
Novos padrões para melhoria de performance
  • RESTART é o novo padrão para Utilitários
  • SORTKEYS para LOAD, REORG e REBUILD
  • SORTDATA para REORG
  • SORTDATA agora permitido para registros de 32k
  • REORG usa índice clustering implícito
  • Se não tem índice clustering, usa o primeiro
    índice definido
  • Se o table space não possui índices, SORTDATA
    funciona como nas versões anteriores à V8

52
Instalação e migração
53
Instalação e migração
  • Características gerais
  • Caminhos para migração
  • Migração para a versão 8
  • Modos de operação
  • Processo de migração
  • Verificação da instalação (IVP)
  • Mudanças no catálogo

54
Características gerais
  • DB2 e IRLM são exclusivamente 64-bit
  • Pré-requisitos básicos
  • zSeries z800, z900 ou posterior
  • z/OS V1R3 ou posterior (algumas funções
    necessitam a V1R4 ou V1R5)
  • Principais mudanças no catálogo
  • Nomes longos
  • Unicode
  • Processo de migração
  • Somente partindo da Versão 7
  • Processo em várias etapas
  • Suporta coexistência das versões 7 e 8 em data
    sharing somente no modo de compatibilidade

55
Caminhos para migração
Suspenso em 30/06/2002
  • Migrar para o DB2 for z/OS V7
  • Migrar para o z/OS V1R3 ou posterior
  • Requer WLM em goal mode
  • Migrar para o IBM COBOL V2 or V3
  • Sem suporte para OS/VS COBOL or VS COBOL II
  • Pode continuar a executar módulos antigos de
    COBOL sob LE, mas sem garantia
  • IMS V7, CICS TS V1.3 ou V2.2, IRLM 2.2

56
Migração para a versão 8
Coexistência das Versões 7 e 8 em data sharing
DB2 Versão 7
Retorno possível com sucesso do CATMAINT
V8 Modo de Compatibilidade (CM)
Habilitação do Modo de Novas Funções (ENFM)
Sem retorno para V7 ou CM depois de passar para
ENFM ou NFM
V8 Modo de Novas Funções (NFM)
57
Modos de operação
DSNTIJTC - Atualização do CATMAINT
DSNTIJNE - Início do CATENFM
DSNTIJNF - Fim do CATENFM
V7
V8 CM
V8 ENFM
V8 NFM
- Módulos da V7 - Funções da V7 - Fallback SPE
- Módulos da V8
- Módulos da V8
- Módulos da V8
Módulos
- Algumas funções da V8
- Algumas funções da V8
- Funções da V8
Restaurar módulos V7
DSNTIJNE
Catálogo V8 - EBCDIC/ Unicode - nomes
curtos/longos - mixed IXs
Catálogo V8 - Unicode - nomes longos - not-padded
IXs (C/D)
Catálogo e diretório
  • Catálogo V8
  • EBCDIC
  • nomes curtos
  • padded IXs

- Catálogo e diretório da V7
58
Processo de migração (1)
  • Aplicar fallback SPE (PQ48486) a todos os membros
  • Existência da PTF é mandatória
  • Iniciar todos os membros no mesmo nível de SPE
  • Migrar para o código da nova versão sem novas
    funções (modo de compatibilidade)
  • Usar CATMAINT para migrar o catálogo e diretório
  • Esteja atento para sobrecargas
  • Testar ambiente com novo código

59
Processo de migração (2)
  • Habilitar modo de novas funções
  • Todos os membros do data sharing group devem
    estar em V8 CM
  • Executar conversão das tabelas do catálogo para
    nomes longos e Unicode
  • Um table space de cada vez numa ordem obrigatória
  • Usando online REORG com SHRLEVEL CHANGE
  • Pode ser interrompido e reiniciado a qualquer
    tempo
  • Depois da conversão de todos os objetos do
    catálogo mudar para modo de novas funções

60
Verificação da instalação (IVP)
  • Importante não é possível executar os jobs de
    IVP da Versão 8 até que o DB2 esteja no Modo de
    Novas Funções da Versão 8
  • Executar jobs da IVP da Versão 7 para verificar o
    sucesso da migração para a Versão 8 Modo de
    Compatibilidade
  • Na migração é recomendado executar partes das
    aplicações exemplo da Versão 7 no Modo de Novas
    Funções da Versão 8
  • Verificar a migração
  • Garantir que os jobs antigos funcionam no Modo de
    Novas Funções da Versão 8
  • Os jobs da IVP da Versão 8 são criados pela CLIST
    de instalação como parte da Habilitação do Modo
    de Novas Funções no processo de migração

61
Mudanças no catálogo
  • Nomes longos (128 byte varchar Unicode)
  • Table, view and alias
  • Column (30)
  • Schema
  • UDF, stored procedures, triggers, packages
  • Alguns tamanhos de página maiores do que 4 KB
  • Páginas de 4K, 8K, 16K, 32K no catálogo do DB2
  • DB2 cria buffer pools para estes novos tamanhos
    de página
  • Quando usando data sharing, o usuário tem que
    criar os GBPs para estes buffer pools
  • Índices maiores do que 255 bytes
  • Contem dados em Unicode

62
Conclusões
63
Vantagens da Versão 8
  • Permite uso mais eficiente dos recursos de
    hardware e software disponíveis
  • Voltado para ambientes com grandes volumes de
    acessos
  • OLTP
  • E-Business
  • Queries
  • OLAP
  • Data Mining

64
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com