Você está na página 1de 46

TECHNO

TIVIT

Overview Oracle GoldenGate


Oracle GoldenGate

Prov captura de baixo impacto, roteamento, transformao e entrega da transao


de banco de dados em ambientes heterogneos praticamente em real-time.
um produto de middleware, desenhado para trabalhar em ambientes heterogneos e com
diferentes bancos de dados.

Transporta somente as transaes confirmadas existentes nos redo logs (archives), permitindo
assim uma latncia menor (menos de um segundo). Os dados podem ser filtrados para mover
somente alguns schemas, tabelas ou linhas. Replica comandos DDL tambm.

Utiliza uma rede TCP/IP comum.

Utiliza seu prprio CSN (Commit Sequence Number) para identificar a transao, que se baseia
no SCN (System Change Number) do Oracle Database.

Possui seu prprio sistema de arquivos de checkpoint para manter a integridade transacional.

Em ambientes que possuem solues de disaster recovery (standby database) ele transporta
as transaes, porm no tm a capacidade de realizar um automatic failover como um
Oracle DataGuard.
Topologias possveis Oracle GoldenGate
Solues do Oracle GoldenGate para o Oracle Database
Elimina o down-time em upgrades, migraes e manutenes de aplicaes
ou banco de dados.

Minimiza o risco com uma opo de fallback.


Melhora a performance de um sistema produtivo criando uma replica onde possvel
destinar consultas pesadas pra essa segunda plataforma.
Disponibilidade contnua em paradas planejadas ou no.
Componentes bsicos do Oracle GoldenGate

Manager
Extract
Trails ou Extract files
Data Pump
Replicat
Manager => Processo que controla as aes de start, stop, monitorao do status e restart
dos outros processos (extract e replicat); report de erros e eventos.

Exemplo: Voc pode iniciar o manager, usa-lo para iniciar o extract, e ento reinicia-lo
sem afetar a operao do processo de extract.
Extract => Transaes commitadas so capturadas (e podem ser filtradas)
atravs da leitura dos redo logs.
Trail => Depois de capturar, o Oracle GoldenGate converte as transaes em um arquivo.
(trail file). Usando trail files na origem e no destino, mantm a integridade de dados
mesmo em caso de alguma falha sistmica, do servidor, da rede...
Data Pump => um processo de extract usado para enviar os dados para o destino.
(opcional, mas altamente recomendvel)
O dado pode (ou no) ser comprimido e/ou criptografado para envio ao destino.
roteado do trail file via rede TCP/IP (IPv4 ou IPv6) no tendo limitao de distncia.
Replicat => Aplica os dados com integridade transacional, transformando o dado se solicitado.
As transaes enfileiradas no trail file so aplicadas atravs de chamadas SQL nativas.
GGSCI
(GoldenGate Software Command Interface)

Processos (Extract ou Replicat) so adicionados e iniciados usando essa console.

usada para editarmos comandos para monitorar, configurar e controlar os grupos de processo.
Process Groups

o conjunto formado pelo processo (Extract ou Replicat), seu arquivo de parmetros


(*.prm), seu arquivo de checkpoint e qualquer outro arquivo associado ao processo. Tais como:
Report (*.rpt), Discard (*.dsc) e Column Definition (*.def) .

Criamos grupos atravs da console GGSCI, editando os comandos Add Extract e Add Replicat.
Parameter files
A maior parte das funcionalidades do Oracle GoldenGate controlada pelo uso de parmetros
mantidos em arquivos texto. Existem dois tipos:
GLOBALS (nico) armazena parmetros relacionados a instncia do OGG como um todo.
Localiza-se no <OGG_HOME>/GLOBALS.
Runtime parameter files (vrios) diretamente ligados aos processos Extract e Replicat. Sobrepe
as configuraes do arquivo GLOBALS.

Por padro, os arquivos so mantidos no diretrio dirprm, localizado no home da instalao .

Os arquivos *.prm possibilitam o controle de vrios aspectos da sincronizao do GoldenGate,


como seleo e mapeamento dos dados, DDL, resoluo de erros, logging entre outros.
Exemplo de arquivo de parmetro
Checkpoints
Os processos (extract e replicat) salvam as informaes de sincronizao em um arquivo
(checkpoint file), que armazena a ltima posio de leitura e gravao daquele processo.

Assegura que os dados marcados para serem sincronizados so extrados, prevenindo uma
extrao redundante. Tambm garante que os dados sejam processados no destino na mesma
ordem de atualizao ocorrida na origem.

Previne a perda de dados caso o sistema, a rede, ou algum processo do Oracle GoldenGate
precise ser reiniciado.

Os arquivos de checkpoint so mantidos no subdiretrio dirchk, abaixo do home da instalao.


Commit Sequence Number (CSN)

Identificador criado para o Oracle GoldenGate reconhecer a transao de origem, com o


propsito de manter a consistncia da operao e a integridade dos dados.

Cada SGBD gera o seu identificador para determinar a efetivao da transao no database.

O CSN pega essa mesma informao e representa internamente como uma srie de bytes.

Diferente dos SGBDs, o CSN processado de maneira independente do database.


Pr-requisitos para a Instalao do Oracle GoldenGate

Memria => Depende da quantidade de processos rodando concorrentemente.


Pra cada processo (extract e replicat) so necessrios de 25 a 55 MB.
Obs.: Cada instalao do OGG 12c suporta at 5000 processos.

Disco => De 450 a 800MB.


Para os trail files recomendvel que seja designado um disco separado.
O tamanho padro de cada trail file de 100MB, mas para otimizar espao podemos
utilizar o parmetro PurgeOldExtracts definido no processo Manager.

Rede => Configurar para usar o TCP/IP, incluindo DNS. (suporta IPv6 por padro)
Configurar uma porta para a comunicao entre o Manager e os outros processos.
Configurar um range de portas para a comunicao local do OGG.

Sistema operacional => Em sistemas Unix/Linux importante criar um usurio pra ser o dono
da instalao. Ex.: oggusr
Pr-requisitos para a Instalao do Oracle GoldenGate

Banco de dados => recomendvel a criao de um schema especfico para o OGG tanto na
origem como no destino.
Pr-requisitos para a Instalao do Oracle GoldenGate
Que possua as permisses listadas abaixo:

Alm de executar a procedure GRANT_ADMIN_PRIVILEGE, tornando-o administrador .


Pr-requisitos para a Instalao do Oracle GoldenGate
Na verso 12c do OGG, podemos setar o parmetro ENABLE_GOLDENGATE_REPLICATION no init.ora.
Obs.: Responsvel por habilitar alguns servios do RDBMS utilizados pelo OGG.
Ex.: Servio de leitura dos redos utilizado pelo Extract.

Aumentar o tempo de reteno da UNDO.

Habilitar o SUPPLEMENTAL LOG e FORCE LOGGING no mbito do database.


Obs.: O supplemental log adiciona uma coluna dentro do redo log file para identificar unicamente
uma linha que sofre um update, por exemplo. (Habilita o log das chaves) O force logging assegura
que todas as mudanas feitas no banco sero capturadas e disponibilizadas para recuperao nos
redo logs. Sobrepondo qualquer configurao de usurio ou clasula de storage.
Instalando o Oracle GoldenGate 12c
1. Realizar o download do OGG no site http://edelivery.oracle.com
2. Descompactar o arquivo .zip em um diretrio.
3. Executar o ./runInstaller .

Na tela de instalao sero solicitadas somente trs informaes:


1. Verso do Oracle que ser utilizado (11g ou 12c).
2. O diretrio destino da instalao (OGG_HOME).
(Definir a varivel OGG_HOME no profile do usurio)
3. Opo de iniciar o processo Manager aps a instalao. (Desmarcar essa opo)
Configurando o Oracle GoldenGate
Preparando o ambiente

Aps a instalao criamos os subdiretrios necessrios ao OGG usando a console GGSCI.


Preparando o ambiente
Habilitar o supplemental logging no nvel da tabela via GGSCI.

GGSCI > dblogin userid oggusr password ora123cle


Successfully logged into database.

GGSCI > ADD TRANDATA SCHEMA.TABELA ALLCOLS

GGSCI > ADD TRANDATA SCHEMA2.TABELA ALLCOLS

GGSCI > ADD TRANDATA SCHEMA2.TABELA2 ALLCOLS

Habilitar o archive logging no database como uma segunda opo de fonte das
informaes, no caso dos redo logs reciclarem antes do Extract finalizar a captura.
Configurando o Manager
Como visto anteriormente, processo responsvel por iniciar, parar, monitorar status , gerenciar
recursos, configurar parmetros, report de erros, gerenciar trail files...
Os parmetros do Manager so configurados no arquivo mgr.prm no diretrio dirprm.
Criar o arquivo de parmetros usando o GGSCI:
Iniciar o Manager:

Verificar qual porta o Manager est usando:


Configurando o Extract

Captura todas as mudanas efetuadas nos objetos em que foi habilitado o sincronismo.
Armazena as alteraes at que receba o commit ou rollback. Caso receba o rollback, o Extract
descarta os dados. Quando o commit recebido, envia os dados da transao para o trail para ser
enviado ao destino. Todos os registros de log da transao so gravados no trail como uma unidade
sequencial organizada. Esse desenho assegura velocidade e integridade de dados.
Adicionando um Extract - Exemplos

1. Na primeira instruo, criamos um Extract group chamado finance que extrai alteraes dos
transaction logs (redo logs). Inicia a extrao dos registros gerados a partir do momento
que adicionamos o Extract.

2. Na segunda, criamos o Extract group chamado atms que extra as alteraes dos transaction logs.
Inicia a extrao com registros gerados a partir das 8:00 da manh de 31 de janeiro de 2013.

3. Na terceira, criamos um Data pump Extract group chamado pump que l os arquivos de trail
gerados no caminho c:\ggs\dirdat\lt .
Editando Parmetros - Extract
Para editarmos o arquivo de parmetro de um Extract group, digitamos o seguinte comando:

Ento podemos modificar os parmetros no arquivo.


Obs.: No Linux, o editor padro o vi.
Data Pump

um processo Extract que envia/grava as transaes para um nico ou mltiplos arquivos de trail
remoto. (No confundir com Oracle Data Pump)

O Data Pump :
- L de um Local Trail.
- Pode manipular os dados caso seja necessrio.
- Envia os dados para um ou mais alvos.

Ele vantajoso para :


- Garantir contra falhas na rede ou nos servidores destino.
- Dividir o processo de filtragem e transformao dos dados.
- Consolidar dados de mltiplas fontes para um destino central.
- Sincronizar uma fonte de dados com mltiplos destinos.
Overview Trails

So usados no OGG para suportar a extrao e replicao contnuas.

O trail pode existir no sistema de origem e no destino tambm.

Somente um processo Extract pode gravar para um trail file.

Trail files so armazenados no subdiretrio dirdat

Processos que lem o trail file:


Data pump Extract
Replicat
Initial Load
(primeira carga)
Initial Load
(primeira carga)

Utilizando o database (Oracle) :

Export / Import , Oracle Data Pump, RMAN (duplicate).

Utilizando OGG :

File to replicat : Extract grava para um arquivo e ento o Replicat carrega via SQL.
File to database utility : Extract grava para um arquivo em formato ASCII para ento o utilitrio
efetuar a carga.
Direct load : Extract grava diretamente para o Replicat, que carrega via SQL.
Direct bulk load : (Somente Oracle) Extract grava diretamente para o Replicat, que carrega atravs
da API do SQL*Loader.

Obs.: Essas caractersticas so interessantes para tabelas relativamente pequenas e para ambientes
heterogneos. (Ex.: Oracle => DB2)
Configurando o Replicat
Overview Replicat

O processo Replicat roda no sistema de destino da atualizao.

Mltiplos processos Replicat podem ser utilizados com mltiplos Extract em paralelo
para aumentar a produtividade.

O Replicat pode:
Ler dados dos trails do OGG.
Realizar a filtragem dos dados pela tabela, por linha ou operao.
Realizar a transformao dos dados.
Linha de produtos Oracle GoldenGate

Oracle GoldenGate Veridata => Add-on capaz de validar dados entre sistemas replicados.

Management Pack for Oracle GoldenGate:

Oracle GoldenGate Director => Ferramenta que prov de forma visual uma maneira de
definir, configurar e gerenciar os processos do Oracle GoldenGate.

Oracle GoldenGate Monitor => Ferramenta Web que mostra as configuraes, estatsticas,
histrico e alertas dos processos do Oracle GoldenGate.
PARA UM MUNDO COMPLEXO, SOLUES NICAS

Você também pode gostar