SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
March 11




                               2012
ODI
Series
Este tutorial demonstra os passos necessários para cria um
projeto e uma interface no Oracle Data Integrator (ODI)      Importando
para importar um arquivo texto para uma tabela do banco
de dados relacional.
                                                             Tabelas
Visão Geral
Uma tarefa comum realizada com o Oracle Data Integrator é importar dados de um
arquito texto e atualizar uma tabela do banco de dados relacional. Esta tarefa é
comum quando temos sistemas que precisam ser alimentados mas não possuem
conectores, ou esses conectores tem um custo muito elevado e a solução de
integração se resume em gerar um arquivo texto para que ele seja utilizado na carga
dos dados.

Este tutorial tem como missão principal guiar o leitor através dos passos necessários
para importar esses dados. No post anterior caminhamos pelos passos para gerar um
arquivo texto e iremos utilizar essa mesma estrutura para realizar a tarefa de hoje.

Serão utilizados os módulos Designer e Operator. Com o Designer iremos criar o
projeto e as interfaces necessárias, assim como parametrizar todo o ambiente para a
leitura do arquivo texto e geração da tabela e o módulo Operator para validar a
execução do processo.




Cenário de Trabalho
Imagine-se trabalhando como DBA (Database Administrator) para uma empresa de
Telecomunicações. Nesta empresa, você é responsável por gerenciar os bancos de
dados e suprir as necessidades de integração de dados com outros sistemas. Em
particular você é responsável por todas as atividades de Carga, transformação e
validação dos dados.

Para começar esse projeto você precisa criar ou ter um ambiente de trabalho
(repositórios Master e Work no ODI), caso queira criar um novo ambiente no ODI e
não sabe como leia o artigo - http://idcube.blogspot.com/2012/02/odi-tutorial-
iniciando-um-projeto.html, neste artigo você irá encontrar todo o necessário para a
criação de um novo ambiente de trabalho.

Com o ambiente criado será necessário criar um projeto e um interface para exportar
os dados da tabela relacional para o arquivo texto e lembre-se sempre ORGANIZE SEU
PROJETO NO INÍCIO.
Pré-requisitos
Antes de iniciar as atividades do projeto, garanta que seu ambiente contempla os pré-
requisitos abaixo mencionados:

   1.   Ter instalado o banco de dados Oracle Database 10g ou posterior
   2.   Ter iniciado os serviços e componentes do banco de dados
   3.   Ter instalado o Oracle Data Integrator 10g
   4.   Ter criado o ambiente de trabalho do ODI, repositórios, usuários e etc.
   5.   Ter feito o tutorial ODI Series – Exportar Tabelas para Arquivo Texto -
        http://idcube.blogspot.com/2012/03/odi-series-exportar-tabelas-para.html,
        neste artigo você irá encontrar as parametrizações necessárias para a
        manipulação de arquivo texto.
ODI - Configuração do Projeto
Para criar um novo projeto com o Oracle Data Integrator, siga os seguintes passos:

   1. Inicie o ODI Designer: Start > Programs > Oracle > Oracle Data
      Integrator > Designer. Selecione OracleDI Tutorial Series Work
      Repository na tela de Login (campo Login Name). Entre o usuário e senha de
      acesso, DW_DBA no campo user e DW_DBA no campo password. Clique OK
      para efetuar o Login.




   2.   Dentro do módulo Designer, na pasta Projects, clique no ícone Insert

        Project     .




   3. Uma nova tela aparecerá, configure o campo Name com Import-Texto-
      Tabela, este campo é o nome do novo projeto que estamos criando para este
      artigo. Veja que o campo Code é carregado automaticamente. Quando
      terminar clique no botão OK. Observe que ao lado esquerdo da tela de Projetos
      irá aparecer o nome do Projeto que acabamos de criar conforme as figuras
      abaixo.
4. Vamos parametrizar os Knowledge Modules necessários para importar o
   arquivo texto para dentro da nossa tabela de Cidades. Precisamos do IKM SQL
   Incremental Update, LKM File to SQL e CKM SQL. Para importar um KM,
   expanda a pasta de Projetos no painel direito, encontre o diretório Knowledge
   Modules e clique com o botão direito, selecione a opção Import Knowledge
   Modules.
5. Na próxima tela iremos selecionar os KMs que vamos utilizar, clique no Loading
   (LKM) e com o botão direito escolha Import KM e após essa seleção encontre
   na tela o KM a ser importado LKM File to SQL, depois repita o procedimento
   para o Integration (IKM) e selecione o KM IKM SQL Incremental Update e o
   último passo é para o Check (CKH) e selecione o KM CKM SQL conforme a
   figura abaixo demonstra, após as seleções clique OK.
6. Após importar os KMs a visão da pasta, a estrutura de projeto deverá   ser
   idêntica a que apresento na figura abaixo:
ODI – Criação da Interface para Importação
Podemos perceber que não fizemos a configuração de Modelo de Dados tão pouco de
Topologia, isto devido ao fato que iremos utilizar a mesma tabela criada no artigo
anterior (SRC_CITIES) e também iremos utilizar o mesmo Arquivo Texto
(EXP_CIDADES.TXT).

Faça um backup do arquivo EXP_CIDADES.TXT, e em seguida preencha o arquivo de
acordo com a figura abaixo:
Para criar a nossa interface siga os passos abaixo:

   1. No módulo ODI Designer, clique na aba Project. Expanda nosso projeto
      Import- Texto-Tabelas, então expanda a pasta Import-Txt-Tbl. Clique
      com o botão direito no componente Interfaces e selecione Insert Interface.




   2. Na próxima tela, configure os parâmetros da aba Definition de acordo com a
      tabela abaixo:

                    Parâmetro                                Valor
       Name                                     Imp-ArqTxt-Tbl
       Optimization Contexto                    Global
       Staging Area Different From Target       Marcar
                                                Selecione LOGICAL_DW_ORIGEM
3. Clique na aba Diagram, no painel esquerdo da tela clique na aba Models para
   selecionar os modelos de dados de origem e destino. Arraste o modelo
   SRC_CITIES para a janela Target DataStore e o modelo CITIES
   (EXP_CIDADES.TXT) para a janela Sources.




4. No momento em que você arrastou o modelo SRC_CITIES para a janela
   Target Datastore apareceu uma mensagem igual a figura abaixo, essa
   mensagem indica que no modelo de origem e no modelo de destino tem alguns
   campos e/ou todos com o mesmo nome, logo é possível fazer o mapeamento
   dos campos automaticamente e é isso que iremos fazer. Clique no botão Yes.




5.    Se você ver bem o único campo preenchido automaticamente foi o campo
     STATE. Conforme explicamos anteriormente.
6. Para mapear os demais campos clique no campo Mapping e uma tela igual a
   que é mostrada abaixo irá aparecer, basta selecionar e arrastar o campo
   contido na tabela na janela Sources. Outra forma também é digitando o
   conteúdo dos campos.

                Field Name                            Mapping
   CD_CITY (null)                        CIT.CD_CITIES
   NM_CITY (null)                        CIT.NM_CITIES
   STATE (null)                          CIT.STATE




7. Com a configuração da aba Diagram finalizada, clique na aba Flow. A
   primeira visão que teremos e a mesma da figura abaixo:




8. Clique sobre cada uma das caixas, perceba que a primeira caixa representa o
   ambiente origem ou Source, a caixa do meio é a área de transição ou Staging
   Area e a última caixa é o ambiente destino ou Target. Ao clicar sobre cada
   uma das caixas teremos as visões mostradas nas figuras abaixo:
Na caixa Source devemos selecionar o LKM que definimos no primeiro passo
deste artigo, LKM File to SQL.




Na caixa Target + Staging Area, devemos selecionar o IKM correto, IKM SQL
Incremental Update e marcar as opções da caixa Option como Yes de
acordo com o demonstrado na tabela abaixo:

               Option                                Value
INSERT                                 YES
UPDATE                                 YES
COMMIT                                 YES
DELETE_TEMPORARY_OBJECTS               YES
9. Com a configuração da aba Flow finalizada, clique na aba Control. E selecione
   o KM correpondente, neste caso é o CKM SQL.




10. Terminada essas configurações clique no botão Apply e a partir deste instante
    você poderá clicar no botão OK e sair da interface ou clicar no botão Execute
    e submeter a interface, ou seja, executar o código que acabamos de criar.
    Vamos optar pela segunda opção, clique no botão Executar. Selecione o
    Contexto Global e clique no botão OK. Em seguida clique no botão OK
    novamente.




11. Agora que a interface Imp-ArqTxt-Tbl foi executa devemos verificar se foi
    executada com sucesso e em seguida validar a carga dos dados na tabela. Abra
    o módulo Operator e no painel de sessões procure a execução da sua
interface, neste caso fiz a pesquisa em All Executions e como podem ver na
   figura abaixo a interface foi executada com sucesso.




12. Agora vamos verificar se a tabela foi carregada corretamente.




   Abra o SQL Developr e monte um código SQL para listar apenas o Estado do
   Rio de Janeiro conforme a figura acima. Veja que a cidade com o código 9608
   está com o nome de AMERICANA, mas deveria ser NITEROI, o arquivo que
acabamos de carregar está com este pequeno erro. Para corrigir edite o arquivo
texto e altere AMERICANA por NITEROI e execute a interface novamente.




Após a correção do arquivo e re-execução da interface, veja que a tabela foi
corrigida, isso se deve ao fato de sido utilizado um IKM que permitiu a Inserção
de registros quando os mesmos não existiam e quando existiam permitiu a
Atualização do mesmo. Sempre quando for começar uma interface planeje
sempre toda a execução do código e as necessidade de comandos e
permissões dentro do banco de dados.

Weitere ähnliche Inhalte

Was ist angesagt?

Anjos e Demônios, os Nephilins
Anjos e Demônios, os NephilinsAnjos e Demônios, os Nephilins
Anjos e Demônios, os NephilinsBiblioteca Virtual
 
As dez pragas o deus de israel x os deuses do egito
As dez pragas o deus de israel x os deuses do egitoAs dez pragas o deus de israel x os deuses do egito
As dez pragas o deus de israel x os deuses do egitoAntonio Marcio da Silva
 
1ªAula_Jesus o caminho
1ªAula_Jesus o caminho1ªAula_Jesus o caminho
1ªAula_Jesus o caminhoObra De Valor
 
2 reis 6 8 23 vivendo e aprendendo
2 reis 6 8 23 vivendo e aprendendo2 reis 6 8 23 vivendo e aprendendo
2 reis 6 8 23 vivendo e aprendendoiceanapolis
 
Lição 03 - A Salvação e o Advento do Salvador
Lição 03 - A Salvação e o Advento do SalvadorLição 03 - A Salvação e o Advento do Salvador
Lição 03 - A Salvação e o Advento do SalvadorÉder Tomé
 
Slide Lição 03 - A maravilhosa e inefável graça de Deus
Slide Lição 03 - A maravilhosa e inefável graça de DeusSlide Lição 03 - A maravilhosa e inefável graça de Deus
Slide Lição 03 - A maravilhosa e inefável graça de DeusÉder Tomé
 
3 - Aprendendo com as portas de Jerusalém
3 - Aprendendo com as portas de Jerusalém3 - Aprendendo com as portas de Jerusalém
3 - Aprendendo com as portas de JerusalémAilton da Silva
 
Lição 5 - Zorobabel recomeça a construção do Templo
Lição 5 - Zorobabel recomeça a construção do TemploLição 5 - Zorobabel recomeça a construção do Templo
Lição 5 - Zorobabel recomeça a construção do TemploÉder Tomé
 
Lição 01- Conhecendo o Livro de Isaías
Lição 01- Conhecendo o Livro de IsaíasLição 01- Conhecendo o Livro de Isaías
Lição 01- Conhecendo o Livro de IsaíasMaxsuel Aquino
 
Estudo Bíblico - Profecias de Daniel
Estudo Bíblico - Profecias de DanielEstudo Bíblico - Profecias de Daniel
Estudo Bíblico - Profecias de DanielFlávio Conca
 
Comentário bíblico moody
Comentário bíblico moodyComentário bíblico moody
Comentário bíblico moodyUilson Oliveira
 
APOSTILA-TEONTOLOGIA a doutrina de Deus.pdf
APOSTILA-TEONTOLOGIA a doutrina de Deus.pdfAPOSTILA-TEONTOLOGIA a doutrina de Deus.pdf
APOSTILA-TEONTOLOGIA a doutrina de Deus.pdfDivinoHenriqueSantan
 
A ação do Espírito Santo na evangelização.
A ação do Espírito Santo na evangelização.A ação do Espírito Santo na evangelização.
A ação do Espírito Santo na evangelização.Quenia Damata
 
Lição 7 - Missões no Antigo Testamento
Lição 7 - Missões no Antigo TestamentoLição 7 - Missões no Antigo Testamento
Lição 7 - Missões no Antigo TestamentoErberson Pinheiro
 

Was ist angesagt? (20)

O Mundo Vindouro.
O Mundo Vindouro.O Mundo Vindouro.
O Mundo Vindouro.
 
32. O Profeta Ezequiel
32. O Profeta Ezequiel32. O Profeta Ezequiel
32. O Profeta Ezequiel
 
LIÇÃO 02 - SINAIS QUE ANTECEDEM A VOLTA DE CRISTO
LIÇÃO 02 - SINAIS QUE ANTECEDEM A VOLTA DE CRISTOLIÇÃO 02 - SINAIS QUE ANTECEDEM A VOLTA DE CRISTO
LIÇÃO 02 - SINAIS QUE ANTECEDEM A VOLTA DE CRISTO
 
Anjos e Demônios, os Nephilins
Anjos e Demônios, os NephilinsAnjos e Demônios, os Nephilins
Anjos e Demônios, os Nephilins
 
As dez pragas o deus de israel x os deuses do egito
As dez pragas o deus de israel x os deuses do egitoAs dez pragas o deus de israel x os deuses do egito
As dez pragas o deus de israel x os deuses do egito
 
1ªAula_Jesus o caminho
1ªAula_Jesus o caminho1ªAula_Jesus o caminho
1ªAula_Jesus o caminho
 
O papel do cristão
O papel do cristão O papel do cristão
O papel do cristão
 
2 reis 6 8 23 vivendo e aprendendo
2 reis 6 8 23 vivendo e aprendendo2 reis 6 8 23 vivendo e aprendendo
2 reis 6 8 23 vivendo e aprendendo
 
As provações de jó
As provações de jóAs provações de jó
As provações de jó
 
Lição 03 - A Salvação e o Advento do Salvador
Lição 03 - A Salvação e o Advento do SalvadorLição 03 - A Salvação e o Advento do Salvador
Lição 03 - A Salvação e o Advento do Salvador
 
Slide Lição 03 - A maravilhosa e inefável graça de Deus
Slide Lição 03 - A maravilhosa e inefável graça de DeusSlide Lição 03 - A maravilhosa e inefável graça de Deus
Slide Lição 03 - A maravilhosa e inefável graça de Deus
 
3 - Aprendendo com as portas de Jerusalém
3 - Aprendendo com as portas de Jerusalém3 - Aprendendo com as portas de Jerusalém
3 - Aprendendo com as portas de Jerusalém
 
Lição 5 - Zorobabel recomeça a construção do Templo
Lição 5 - Zorobabel recomeça a construção do TemploLição 5 - Zorobabel recomeça a construção do Templo
Lição 5 - Zorobabel recomeça a construção do Templo
 
Lição 01- Conhecendo o Livro de Isaías
Lição 01- Conhecendo o Livro de IsaíasLição 01- Conhecendo o Livro de Isaías
Lição 01- Conhecendo o Livro de Isaías
 
Estudo Bíblico - Profecias de Daniel
Estudo Bíblico - Profecias de DanielEstudo Bíblico - Profecias de Daniel
Estudo Bíblico - Profecias de Daniel
 
Comentário bíblico moody
Comentário bíblico moodyComentário bíblico moody
Comentário bíblico moody
 
APOSTILA-TEONTOLOGIA a doutrina de Deus.pdf
APOSTILA-TEONTOLOGIA a doutrina de Deus.pdfAPOSTILA-TEONTOLOGIA a doutrina de Deus.pdf
APOSTILA-TEONTOLOGIA a doutrina de Deus.pdf
 
A ação do Espírito Santo na evangelização.
A ação do Espírito Santo na evangelização.A ação do Espírito Santo na evangelização.
A ação do Espírito Santo na evangelização.
 
Lição 7 - Missões no Antigo Testamento
Lição 7 - Missões no Antigo TestamentoLição 7 - Missões no Antigo Testamento
Lição 7 - Missões no Antigo Testamento
 
39. O Profeta Miquéias
39. O Profeta Miquéias39. O Profeta Miquéias
39. O Profeta Miquéias
 

Andere mochten auch

ODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração TopologiaODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração TopologiaCaio Lima
 
Odi tutorial configuração repositórios mestre e trabalho
Odi tutorial   configuração repositórios mestre e trabalhoOdi tutorial   configuração repositórios mestre e trabalho
Odi tutorial configuração repositórios mestre e trabalhoCaio Lima
 
ODI SERIES - Melhores Práticas
ODI SERIES - Melhores PráticasODI SERIES - Melhores Práticas
ODI SERIES - Melhores PráticasCaio Lima
 
ODI SERIES - Como mapear novos campos em modelos e interfaces
ODI SERIES - Como mapear novos campos em modelos e interfacesODI SERIES - Como mapear novos campos em modelos e interfaces
ODI SERIES - Como mapear novos campos em modelos e interfacesCaio Lima
 
ODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de DadosODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de DadosCaio Lima
 
ODI Series - Treinamento
ODI Series - TreinamentoODI Series - Treinamento
ODI Series - TreinamentoCaio Lima
 

Andere mochten auch (6)

ODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração TopologiaODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração Topologia
 
Odi tutorial configuração repositórios mestre e trabalho
Odi tutorial   configuração repositórios mestre e trabalhoOdi tutorial   configuração repositórios mestre e trabalho
Odi tutorial configuração repositórios mestre e trabalho
 
ODI SERIES - Melhores Práticas
ODI SERIES - Melhores PráticasODI SERIES - Melhores Práticas
ODI SERIES - Melhores Práticas
 
ODI SERIES - Como mapear novos campos em modelos e interfaces
ODI SERIES - Como mapear novos campos em modelos e interfacesODI SERIES - Como mapear novos campos em modelos e interfaces
ODI SERIES - Como mapear novos campos em modelos e interfaces
 
ODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de DadosODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de Dados
 
ODI Series - Treinamento
ODI Series - TreinamentoODI Series - Treinamento
ODI Series - Treinamento
 

Ähnlich wie ODI Series - Importar Arquivos Texto para Tabelas

ODI Series - Exportar Tabelas para Arquivo Texto
ODI Series -  Exportar Tabelas para Arquivo TextoODI Series -  Exportar Tabelas para Arquivo Texto
ODI Series - Exportar Tabelas para Arquivo TextoCaio Lima
 
Aplicações java com netbeans
Aplicações  java com  netbeansAplicações  java com  netbeans
Aplicações java com netbeansThalles Anderson
 
Interfaces windows em c sharp
Interfaces windows em c sharpInterfaces windows em c sharp
Interfaces windows em c sharpTiago
 
Android Core Aula 6 - Desenvolvimento de aplicações Android
Android Core Aula 6 -  Desenvolvimento de aplicações AndroidAndroid Core Aula 6 -  Desenvolvimento de aplicações Android
Android Core Aula 6 - Desenvolvimento de aplicações AndroidFelipe Silveira
 
Introdução ao IBM Data Studio
Introdução ao IBM Data StudioIntrodução ao IBM Data Studio
Introdução ao IBM Data StudioDevmedia
 
Como criar interfaces gráficas com android
Como criar interfaces gráficas com androidComo criar interfaces gráficas com android
Como criar interfaces gráficas com androidRicardo Ogliari
 
Apostila de programação visual netbeans
Apostila de programação visual   netbeansApostila de programação visual   netbeans
Apostila de programação visual netbeansPaulo Carvalho
 
Apostil ade programação visual netbeans
Apostil ade programação visual   netbeansApostil ade programação visual   netbeans
Apostil ade programação visual netbeansPaulo Carvalho
 
Data Binding Para Vinculo de Dados na UI Android
Data Binding Para Vinculo de Dados na UI AndroidData Binding Para Vinculo de Dados na UI Android
Data Binding Para Vinculo de Dados na UI AndroidVinícius Thiengo
 
Apostila de Crystal Report
Apostila de Crystal ReportApostila de Crystal Report
Apostila de Crystal ReportAndre Nascimento
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com AngularElmano Cavalcanti
 
Exercícios - Tutorial ETL com Pentaho Data Integration
Exercícios - Tutorial ETL com Pentaho Data IntegrationExercícios - Tutorial ETL com Pentaho Data Integration
Exercícios - Tutorial ETL com Pentaho Data IntegrationJarley Nóbrega
 

Ähnlich wie ODI Series - Importar Arquivos Texto para Tabelas (20)

ODI Series - Exportar Tabelas para Arquivo Texto
ODI Series -  Exportar Tabelas para Arquivo TextoODI Series -  Exportar Tabelas para Arquivo Texto
ODI Series - Exportar Tabelas para Arquivo Texto
 
Aplicações java com netbeans
Aplicações  java com  netbeansAplicações  java com  netbeans
Aplicações java com netbeans
 
Tutorial +login+mvc
Tutorial +login+mvcTutorial +login+mvc
Tutorial +login+mvc
 
Bada
BadaBada
Bada
 
Interfaces windows em c sharp
Interfaces windows em c sharpInterfaces windows em c sharp
Interfaces windows em c sharp
 
Apostila Android
Apostila AndroidApostila Android
Apostila Android
 
Android Core Aula 6 - Desenvolvimento de aplicações Android
Android Core Aula 6 -  Desenvolvimento de aplicações AndroidAndroid Core Aula 6 -  Desenvolvimento de aplicações Android
Android Core Aula 6 - Desenvolvimento de aplicações Android
 
CURSO JAVA 01
CURSO JAVA 01CURSO JAVA 01
CURSO JAVA 01
 
Introdução ao IBM Data Studio
Introdução ao IBM Data StudioIntrodução ao IBM Data Studio
Introdução ao IBM Data Studio
 
Como criar interfaces gráficas com android
Como criar interfaces gráficas com androidComo criar interfaces gráficas com android
Como criar interfaces gráficas com android
 
Apostila de programação visual netbeans
Apostila de programação visual   netbeansApostila de programação visual   netbeans
Apostila de programação visual netbeans
 
Apostil ade programação visual netbeans
Apostil ade programação visual   netbeansApostil ade programação visual   netbeans
Apostil ade programação visual netbeans
 
Data Binding Para Vinculo de Dados na UI Android
Data Binding Para Vinculo de Dados na UI AndroidData Binding Para Vinculo de Dados na UI Android
Data Binding Para Vinculo de Dados na UI Android
 
Java13
Java13Java13
Java13
 
Apostila de Power BI - Aula 1.pdf
Apostila de Power BI - Aula 1.pdfApostila de Power BI - Aula 1.pdf
Apostila de Power BI - Aula 1.pdf
 
Linguagem c
Linguagem cLinguagem c
Linguagem c
 
Apostila de Crystal Report
Apostila de Crystal ReportApostila de Crystal Report
Apostila de Crystal Report
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com Angular
 
Apostila Software Arena
Apostila Software ArenaApostila Software Arena
Apostila Software Arena
 
Exercícios - Tutorial ETL com Pentaho Data Integration
Exercícios - Tutorial ETL com Pentaho Data IntegrationExercícios - Tutorial ETL com Pentaho Data Integration
Exercícios - Tutorial ETL com Pentaho Data Integration
 

ODI Series - Importar Arquivos Texto para Tabelas

  • 1. March 11 2012 ODI Series Este tutorial demonstra os passos necessários para cria um projeto e uma interface no Oracle Data Integrator (ODI) Importando para importar um arquivo texto para uma tabela do banco de dados relacional. Tabelas
  • 2. Visão Geral Uma tarefa comum realizada com o Oracle Data Integrator é importar dados de um arquito texto e atualizar uma tabela do banco de dados relacional. Esta tarefa é comum quando temos sistemas que precisam ser alimentados mas não possuem conectores, ou esses conectores tem um custo muito elevado e a solução de integração se resume em gerar um arquivo texto para que ele seja utilizado na carga dos dados. Este tutorial tem como missão principal guiar o leitor através dos passos necessários para importar esses dados. No post anterior caminhamos pelos passos para gerar um arquivo texto e iremos utilizar essa mesma estrutura para realizar a tarefa de hoje. Serão utilizados os módulos Designer e Operator. Com o Designer iremos criar o projeto e as interfaces necessárias, assim como parametrizar todo o ambiente para a leitura do arquivo texto e geração da tabela e o módulo Operator para validar a execução do processo. Cenário de Trabalho Imagine-se trabalhando como DBA (Database Administrator) para uma empresa de Telecomunicações. Nesta empresa, você é responsável por gerenciar os bancos de dados e suprir as necessidades de integração de dados com outros sistemas. Em particular você é responsável por todas as atividades de Carga, transformação e validação dos dados. Para começar esse projeto você precisa criar ou ter um ambiente de trabalho (repositórios Master e Work no ODI), caso queira criar um novo ambiente no ODI e não sabe como leia o artigo - http://idcube.blogspot.com/2012/02/odi-tutorial- iniciando-um-projeto.html, neste artigo você irá encontrar todo o necessário para a criação de um novo ambiente de trabalho. Com o ambiente criado será necessário criar um projeto e um interface para exportar os dados da tabela relacional para o arquivo texto e lembre-se sempre ORGANIZE SEU PROJETO NO INÍCIO.
  • 3. Pré-requisitos Antes de iniciar as atividades do projeto, garanta que seu ambiente contempla os pré- requisitos abaixo mencionados: 1. Ter instalado o banco de dados Oracle Database 10g ou posterior 2. Ter iniciado os serviços e componentes do banco de dados 3. Ter instalado o Oracle Data Integrator 10g 4. Ter criado o ambiente de trabalho do ODI, repositórios, usuários e etc. 5. Ter feito o tutorial ODI Series – Exportar Tabelas para Arquivo Texto - http://idcube.blogspot.com/2012/03/odi-series-exportar-tabelas-para.html, neste artigo você irá encontrar as parametrizações necessárias para a manipulação de arquivo texto.
  • 4. ODI - Configuração do Projeto Para criar um novo projeto com o Oracle Data Integrator, siga os seguintes passos: 1. Inicie o ODI Designer: Start > Programs > Oracle > Oracle Data Integrator > Designer. Selecione OracleDI Tutorial Series Work Repository na tela de Login (campo Login Name). Entre o usuário e senha de acesso, DW_DBA no campo user e DW_DBA no campo password. Clique OK para efetuar o Login. 2. Dentro do módulo Designer, na pasta Projects, clique no ícone Insert Project . 3. Uma nova tela aparecerá, configure o campo Name com Import-Texto- Tabela, este campo é o nome do novo projeto que estamos criando para este artigo. Veja que o campo Code é carregado automaticamente. Quando terminar clique no botão OK. Observe que ao lado esquerdo da tela de Projetos irá aparecer o nome do Projeto que acabamos de criar conforme as figuras abaixo.
  • 5. 4. Vamos parametrizar os Knowledge Modules necessários para importar o arquivo texto para dentro da nossa tabela de Cidades. Precisamos do IKM SQL Incremental Update, LKM File to SQL e CKM SQL. Para importar um KM, expanda a pasta de Projetos no painel direito, encontre o diretório Knowledge Modules e clique com o botão direito, selecione a opção Import Knowledge Modules.
  • 6. 5. Na próxima tela iremos selecionar os KMs que vamos utilizar, clique no Loading (LKM) e com o botão direito escolha Import KM e após essa seleção encontre na tela o KM a ser importado LKM File to SQL, depois repita o procedimento para o Integration (IKM) e selecione o KM IKM SQL Incremental Update e o último passo é para o Check (CKH) e selecione o KM CKM SQL conforme a figura abaixo demonstra, após as seleções clique OK.
  • 7. 6. Após importar os KMs a visão da pasta, a estrutura de projeto deverá ser idêntica a que apresento na figura abaixo:
  • 8. ODI – Criação da Interface para Importação Podemos perceber que não fizemos a configuração de Modelo de Dados tão pouco de Topologia, isto devido ao fato que iremos utilizar a mesma tabela criada no artigo anterior (SRC_CITIES) e também iremos utilizar o mesmo Arquivo Texto (EXP_CIDADES.TXT). Faça um backup do arquivo EXP_CIDADES.TXT, e em seguida preencha o arquivo de acordo com a figura abaixo:
  • 9. Para criar a nossa interface siga os passos abaixo: 1. No módulo ODI Designer, clique na aba Project. Expanda nosso projeto Import- Texto-Tabelas, então expanda a pasta Import-Txt-Tbl. Clique com o botão direito no componente Interfaces e selecione Insert Interface. 2. Na próxima tela, configure os parâmetros da aba Definition de acordo com a tabela abaixo: Parâmetro Valor Name Imp-ArqTxt-Tbl Optimization Contexto Global Staging Area Different From Target Marcar Selecione LOGICAL_DW_ORIGEM
  • 10. 3. Clique na aba Diagram, no painel esquerdo da tela clique na aba Models para selecionar os modelos de dados de origem e destino. Arraste o modelo SRC_CITIES para a janela Target DataStore e o modelo CITIES (EXP_CIDADES.TXT) para a janela Sources. 4. No momento em que você arrastou o modelo SRC_CITIES para a janela Target Datastore apareceu uma mensagem igual a figura abaixo, essa mensagem indica que no modelo de origem e no modelo de destino tem alguns campos e/ou todos com o mesmo nome, logo é possível fazer o mapeamento dos campos automaticamente e é isso que iremos fazer. Clique no botão Yes. 5. Se você ver bem o único campo preenchido automaticamente foi o campo STATE. Conforme explicamos anteriormente.
  • 11. 6. Para mapear os demais campos clique no campo Mapping e uma tela igual a que é mostrada abaixo irá aparecer, basta selecionar e arrastar o campo contido na tabela na janela Sources. Outra forma também é digitando o conteúdo dos campos. Field Name Mapping CD_CITY (null) CIT.CD_CITIES NM_CITY (null) CIT.NM_CITIES STATE (null) CIT.STATE 7. Com a configuração da aba Diagram finalizada, clique na aba Flow. A primeira visão que teremos e a mesma da figura abaixo: 8. Clique sobre cada uma das caixas, perceba que a primeira caixa representa o ambiente origem ou Source, a caixa do meio é a área de transição ou Staging Area e a última caixa é o ambiente destino ou Target. Ao clicar sobre cada uma das caixas teremos as visões mostradas nas figuras abaixo:
  • 12. Na caixa Source devemos selecionar o LKM que definimos no primeiro passo deste artigo, LKM File to SQL. Na caixa Target + Staging Area, devemos selecionar o IKM correto, IKM SQL Incremental Update e marcar as opções da caixa Option como Yes de acordo com o demonstrado na tabela abaixo: Option Value INSERT YES UPDATE YES COMMIT YES DELETE_TEMPORARY_OBJECTS YES
  • 13. 9. Com a configuração da aba Flow finalizada, clique na aba Control. E selecione o KM correpondente, neste caso é o CKM SQL. 10. Terminada essas configurações clique no botão Apply e a partir deste instante você poderá clicar no botão OK e sair da interface ou clicar no botão Execute e submeter a interface, ou seja, executar o código que acabamos de criar. Vamos optar pela segunda opção, clique no botão Executar. Selecione o Contexto Global e clique no botão OK. Em seguida clique no botão OK novamente. 11. Agora que a interface Imp-ArqTxt-Tbl foi executa devemos verificar se foi executada com sucesso e em seguida validar a carga dos dados na tabela. Abra o módulo Operator e no painel de sessões procure a execução da sua
  • 14. interface, neste caso fiz a pesquisa em All Executions e como podem ver na figura abaixo a interface foi executada com sucesso. 12. Agora vamos verificar se a tabela foi carregada corretamente. Abra o SQL Developr e monte um código SQL para listar apenas o Estado do Rio de Janeiro conforme a figura acima. Veja que a cidade com o código 9608 está com o nome de AMERICANA, mas deveria ser NITEROI, o arquivo que
  • 15. acabamos de carregar está com este pequeno erro. Para corrigir edite o arquivo texto e altere AMERICANA por NITEROI e execute a interface novamente. Após a correção do arquivo e re-execução da interface, veja que a tabela foi corrigida, isso se deve ao fato de sido utilizado um IKM que permitiu a Inserção de registros quando os mesmos não existiam e quando existiam permitiu a Atualização do mesmo. Sempre quando for começar uma interface planeje sempre toda a execução do código e as necessidade de comandos e permissões dentro do banco de dados.