Db2 LUW: Tipos de Dados, Objetos e Operações Suportados
Estas seções contêm informações sobre tipos de dados, objetos e operações suportados para o Oracle GoldenGate no LUW Db2.
Tipos de Dados LUW Db2 Suportados
O Oracle GoldenGate suporta todos os tipos de dados LUW Db2, exceto os listados em Tipos de Dados LUW Db2 Não Suportados.
Limitações do Suporte
O Oracle GoldenGate tem as seguintes limitações para suportar tipos de dados LUW Db2:
-
O Oracle GoldenGate suporta tipos de dados de caracteres de vários bytes e dados de vários bytes armazenados em colunas de caracteres. Os dados de vários bytes só são suportados em uma configuração semelhante a semelhante. Transformação, filtragem e outros tipos de manipulação não são suportados para dados de caracteres de vários bytes.
-
As colunas
BLOBeCLOBdevem ter uma cláusulaLOGGEDem suas definições. -
Devido a limitações na interface IBM DB2READLOG, o Oracle GoldenGate não suporta a coordenação de transações entre nós em um ambiente DPF (Database Partitioning Feature) Db2. Em DPF, uma transação pode abranger vários nós, dependendo de como os dados são particionados.
No entanto, se você precisar capturá-lo, poderá fazê-lo com certas limitações. Verifique a observação do Suporte Técnico da Oracle O Oracle GoldenGate Support DB2 LUW Data Partitioning Feature (DPF)? (DocID 2763006.1).
-
As colunas
GRAPHICeVARGRAPHICdevem estar em um banco de dados, no qual o conjunto de caracteres é UTF16. Qualquer outro conjunto de caracteres faz com que o Oracle GoldenGate seja encerrado. -
O suporte de alcance e precisão para números de ponto flutuante depende da máquina host. Em geral, a precisão é precisa para 16 dígitos significativos, mas você deve revisar a documentação do banco de dados para determinar as aproximações esperadas. O Oracle GoldenGate arredonda ou trunca valores que excedem a precisão suportada.
-
O Extract suporta totalmente a captura e aplicação de
TIMESTAMP(0)por meio deTIMESTAMP(12)quando o formato da trilha de saída é 19.1 ou superior. Caso contrário, o Extract trunca dados deTIMESTAMP(10)aTIMESTAMP(12)para nanossegundos (máximo de nove dígitos de tempo fracionário) e emite um aviso para o arquivo de relatório. -
O Oracle GoldenGate suporta dados de timestamp de 0001/01/03:00:00:00 para 9999/12/31:23:59:59. Se um timestamp for convertido de GMT para hora local, esses limites também se aplicarão ao timestamp resultante. Dependendo do fuso horário, a conversão pode adicionar ou subtrair horas, o que pode fazer com que o timestamp exceda o limite inferior ou superior suportado.
-
O Oracle GoldenGate não suporta a filtragem, o mapeamento de colunas ou a manipulação de objetos grandes maiores que 4K. Você pode usar a funcionalidade completa do Oracle GoldenGate para objetos que sejam 4K ou menores.
-
A replicação de colunas XML entre bancos de dados de origem e de destino com o mesmo conjunto de caracteres é suportada. Se os conjuntos de caracteres do banco de dados de origem e de destino forem diferentes, a replicação XML poderá falhar com um erro de banco de dados porque alguns caracteres podem não ser reconhecidos (ou válidos) no conjunto de caracteres do banco de dados de destino.
-
O Oracle GoldenGate não certifica a captura de alterações das tabelas organizadas por coluna LUW do Db2.
-
O tipo de dados
DECFLOATsuporta os valores numéricos especiaisNaN,sNaNeInfinity/-Infinity.Para obter mais informações sobre tipos de dados por bancos de dados que suportam valores especiais, consulte Valores Especiais Suportados por Tipos de Dados de Banco de Dados.
Tipos de Dados LUW Db2 Não Suportados
Os tipos de dados LUW Db2 não suportados são:
-
XMLType(Capturar) -
Tipos definidos pelo usuário
-
Datas negativas
Objetos e Operações Suportados para o LUW Db2
O objeto e as operações que são suportados para o LUW Db2 são:
-
O Oracle GoldenGate Extract suporta captura interendian em que o banco de dados e o Oracle GoldenGate estão em execução em diferentes servidores de ordem de bytes. A ordem de byte é detectada automaticamente para o Db2 LUW versão 10.5 ou superior. Se a detecção automática do banco de dados Db2 no banco de dados Db2 LUW 10.5 não for necessária, você poderá substituí-lo especificando o parâmetro
TRANLOGOPTIONS MIXEDENDIAN [ON|OFF]. Para o LUW versão 10.1 do Db2, esse parâmetro deve ser usado no arquivo de parâmetros de Extract para captura de cross-endian. Para obter mais informações, consulte TRANLOGOPÇÕES. -
O ambiente Db2 pureScale é suportado.
-
O Oracle GoldenGate suporta o número máximo de colunas e o tamanho da coluna por tabela suportado pelo banco de dados.
-
TRUNCATE TABLE. -
Tabelas Multidimensionais Clusterizadas (MDC).
-
Tabelas de Consultas Materializadas O Oracle GoldenGate não replica o próprio MQT, mas apenas as tabelas básicas. O banco de dados de destino mantém automaticamente o conteúdo do MQT com base nas alterações aplicadas às tabelas base pelo Replicat.
-
Tabelas com
ROW COMPRESSION. No Db2 LUW versão 10.1 e posterior, oCOMPRESS YES STATICé suportado e oCOMPRESS YES ADAPTIVEé suportado. -
O recurso de tamanho de linha estendido é ativado por padrão. Ele é suportado com uma solução alternativa usando
FETCHCOLS. Para quaisquer valores de coluna que sejam tipos de dadosVARCHARouVARGRAPHICe sejam armazenados fora de linha no banco de dados, você deve extrair essas linhas estendidas especificando essas colunas usando a opçãoFETCHCOLSno parâmetroTABLEno arquivo de parâmetros de extração. Com essa opção definida, quando os valores da coluna estiverem fora da linha, o Oracle GoldenGate extrairá seu valor. Se o valor estiver fora eFETCHCOLSnão for especificado, o processo Extract será interrompido para evitar qualquer perda de dados. Se você não quiser usar esse recurso, defina o parâmetroextended_row_sizecomoDISABLE.Por padrão, o recurso de tamanho de linha estendido é ativado. Ele é suportado com uma solução alternativa usando
FETCHCOLSpara Db2 LUW 10.1. Para quaisquer valores de coluna que sejam tipos de dadosVARCHARouVARGRAPHICe sejam armazenados fora de linha no banco de dados, você deve extrair essas linhas estendidas especificando essas colunas usando a opçãoFETCHCOLSno parâmetroTABLEno arquivo de parâmetros Extract. Com essa opção definida, quando os valores de coluna estão fora da linha, o Oracle GoldenGate extrai seu valor. Se o valor estiver fora eFETCHCOLSnão for especificado, o processo Extract será interrompido para evitar qualquer perda de dados. Se não quiser usar esse recurso, defina oextended_row_size parametercomoDISABLE. Para Db2, os valores LUW 10.5 e posteriores são capturados perfeitamente pelo processo Extract.FETCHCOLSnão é mais necessário para capturar colunas fora de linha dessas versões de banco de dados. -
Tabelas temporais com Db2 LUW 10.1 FixPack 2 e superior são suportadas. Este é o padrão para Replicat.
-
A replicação entre tabelas temporais de período do sistema e tabelas temporais de período do aplicativo não é suportada.
-
Não há suporte para a replicação de uma tabela não temporal para uma tabela temporal.
-
Não há suporte para a replicação de tabelas temporais com o parâmetro
INSERTALLRECORDS. -
A replicação bidirecional só é suportada com a replicação padrão.
-
O CDR na replicação bidirecional não é suportado.
-
CDR em tabelas temporais de período do aplicativo é suportado.
-
-
As opções suportadas com o comando
SEND EXTRACT SHOWTRANS\SKIPTRANS\FORCETRANSsão:Opções suportadas com o comando
SHOWTRANSSHOWTRANS [transaction_ID] [COUNT n] [DURATION duration unit] [TABULAR][FILE file_name] |Opções com
SKIPTRANSeFORCETRANS.SKIPTRANS transaction_ID [FORCE] FORCETRANS transaction_ID [FORCE] -
As limitações no suporte automático da tabela de pulsação são as seguintes:
-
[THREAD n][DETAIL]não é suportado. -
A frequência e a frequência de expurgação dos parâmetros de integridade do Oracle GoldenGate são aceitas em segundos e dias. No entanto, o programador de tarefas LUW Db2 só aceita sua programação no formato cron para que o valor de entrada do Oracle GoldenGate para o formato cron possa resultar em alguma perda de precisão. Por exemplo:
-
ADD HEARTBEATTABLE, FREQUENCY 150, PURGE_FREQUENCY 20
This example sets the `FREQUENCY` to 150 seconds, which is converted to the closest minute value of 2 minutes, so the heartbeat table is updated every 120 seconds instead of every 150 seconds. Setting `PURGE_FREQUENCY` to 20 means that the history table is purged at midnight on every 20th day.
-
Estas são as etapas necessárias para que as tarefas agendadas de pulsação sejam executadas:
-
Defina a variável de registro
DB2_ATS_ENABLEcomodb2set DB2_ATS_ENABLE=YES. -
Crie o tablespace
SYSTOOLSPACEse ele ainda não existir:
CREATE TABLESPACE SYSTOOLSPACE IN IBMCATGROUP MANAGED BY AUTOMATIC STORAGE EXTENTSIZE 4-
Certifique-se de que o proprietário da instância tenha autoridade de administração do Banco de Dados (DBADM):
GRANT DBADM ON DATABASE TOinstance_owner_name
-
Objetos e Operações Não Suportados para o LUW Db2
Os objetos e as operações do LUW Db2 que não são suportados pelo Oracle GoldenGate são:
-
Nomes de esquema, tabela ou coluna com espaços à direita
-
Várias instâncias de um banco de dados
-
Extração ou replicação de operações DDL (data definition language)
-
Colunas geradas (cláusula
GENERATE ALWAYS) -
DB2 O Recurso de Particionamento de Dados (DPF) não é suportado. O DPF não fornece uma maneira de ler os registros de log de forma coordenada em todos os nós em uma partição. Portanto, não há como garantir que, mesmo que todos os nós estejam sendo replicados com Extracts separados, seria possível garantir que todos os registros de todas as transações sejam aplicados na ordem temporal correta. Isso pode ocorrer devido a uma série de fatores, incluindo armazenamento em cache no banco de dados e no sistema operacional subjacente, que não permitem que os Extracts tenham visibilidade sobre se há entradas em cache e ainda não visíveis que possam afetar a ordem das operações de registro em todas as partições. Devido a essa incerteza, não é possível garantir que as transações que abrangem partições ou atualizações de chave primária possam ser replicadas de maneira consistente.
Esquemas do Sistema
Os esquemas ou objetos a seguir não são replicados automaticamente pelo Oracle GoldenGate, a menos que sejam especificados explicitamente sem um curinga.
-
"SYSIBM" -
"SYSCAT" -
"SYSSTAT" -
"SYSPROC" -
"SYSFUN" -
"SYSIBMADMIN" -
"SYSTOOLS" -
"SYSPUBLIC"
Nomes de Objeto Suportados
Para obter uma lista de caracteres suportados em nomes de objetos, consulte Nomes de Objetos de Banco de Dados Suportados.