IM Centro de Informações do Relationship Resolution, Versão 4.2

Transportes do Banco de Dados

Os transportes de banco de dados permitem mover dados de um banco de dados para um pipeline. Para utilizar o transporte de banco de dados, digite um transporte de banco de dados utilizando um URI (Universal Resource Identifier).

Nota: O transporte de banco de dados não é suportado no IBM DB2 no z/OS.

O formato para o transporte de banco de dados é:

"type://username:password@database/?table=tablename&order=table&timeout=seconds&concurrency=N"

Nota: Como alguns dos caracteres utilizados neste transporte são especiais para ambientes de linha de comandos (especificamente os caracteres ? e &), se você especificar este transporte em uma linha de comandos, será necessário colocar o transporte inteiro entre aspas. Por exemplo: pipeline -d -t "db2://up@db/?table=tn_source&order=table"
type://
Parâmetro necessário que indica que o método de transporte é um banco de dados e especifica o tipo de banco de dados.
Valores válidos são:
  • oci:// para bancos de dados Oracle
  • mssql:// para bancos de dados Microsoft SQL
  • db2:// para bancos de dados DB2
username:password@database_name
Este parâmetro de fato representa vários parâmetros: username:password e @database_name.
  • username:password: Parâmetro que especifica o nome de login do usuário e a senha correspondente para o banco de dados denominado. Se seu sistema não estiver configurado para utilizar autenticação de banco de dados ou de sistema operacional confiável, será necessário digitar estes parâmetros com o parâmetro de nome do banco de dados.
  • @database_name: Parâmetro necessário que especifica o nome do banco de dados do qual estão sendo transportados dados. Se seu sistema estiver configurado para utilizar autenticação de banco de dados confiável, será necessário digitar apenas o parâmetro de nome do banco de dados.
Exemplos por banco de dados:
  • Bancos de dados Oracle configurados para utilizar autenticação confiável: :@relres_sid (Não é necessário digitar os parâmetros username:password.)
  • Bancos de dados Oracle não configurados para utilizar autenticação confiável: rr:passw0rd@relres_sid
  • Bancos de dados Microsoft SQL que utilizam conexões confiáveis: @relres_dsn (Não é necessário digitar os parâmetros username:password.)
  • Bancos de dados Microsoft SQL não configurados para utilizar conexões confiáveis: rr:passw0rd@relres
  • Bancos de dados DB2 configurados para utilizar autenticação confiável: @relres (Não é necessário digitar os parâmetros username:password.)
  • Bancos de dados DB2 não configurados para utilizar autenticação confiável: rr:passw0rd@relres
/?table=tablename
Parâmetro necessário que indica a tabela no banco de dados (o banco de dados denominado no parâmetro @database_name) para leitura e gravação.
&order=tablename
Parâmetro opcional para indicar a ordem para recuperar e processar os dados da tabela denominada.
Esta opção pode ser utilizada quando não houver requisitos de priorização nos dados que precisam ser carregados. Em alguns sistemas de banco de dados, você pode aprimorar o desempenho quando a ordem na qual os registros são removidos da tabela é a ordem natural selecionada pelo banco de dados. Utilizar esta opção permite que o banco de dados retorne os registros da maneira mais eficiente, que, geralmente, é a ordem na qual os registros foram inseridos.
Para que as tabelas sejam compatíveis com o transporte de banco de dados, elas precisam estar de acordo com o seguinte layout da coluna:
Tabela 1. Mapeamento da ordem de colunas em tabelas de banco de dados como parte da URI de transporte de banco de dados
Coluna Tipo Descrição/Valor Índice
LOAD_SEQ INTEIRO, NÃO NULO Indica a prioridade da mensagem. Os valores válidos são 0, 1, 2 e 3:
  • 0 indica prioridade crítica
  • 1 indica prioridade alta
  • 2 indica prioridade normal
  • 3 indica prioridade baixa
Não exclusivo em LOAD_SEQ, apenas se não estiver especificando o parâmetro &order=tablename
OWNER VARCHAR 256 O pipeline configura esta coluna como um identificador exclusivo durante o processamento para evitar que outros pipelines dupliquem o trabalho. Não-exclusivo
LOCK_TIME INTEGER 64-BIT Configure esta opção para indica a hora (em milissegundos de época) em que o registro foi bloqueado. (Nenhum)
MSG BLOB ou VARCHAR (se for o tamanho máximo de XML, este será sempre menor do que o tamanho de VARCHAR) Mensagem UMF de entrada. (Nenhum)
&schema=schema_name
Esse parâmetro opcional do DB2 permite que você especifique o nome de um esquema customizado do DB2.
Nota: O recurso de esquema customizado do DB2 não é compatível com o gerador de relatórios no Visualizador e no Console de Configuração. Se você especificar um esquema customizado do DB2, os relatórios do Visualizador e do Console de Configuração não funcionarão.
&timeout=n
Este parâmetro opcional indica o número de segundos que o pipeline espera uma resposta do banco de dados antes de exceder o tempo limite.
Se este parâmetro não for especificado, o transporte tentará três vezes obter uma resposta antes de exceder o tempo limite.
&concurrency=n
Este parâmetro opcional permite especificar o número de registros de entrada (um inteiro positivo maior ou igual a 0) que o transporte de banco de dados obtém de cada vez para processamento de pipelines. Quanto mais alto o número, mais registros são obtidos para processamento.
Por exemplo, uma simultaneidade de 0 indica o não processamento dos registros. Uma simultaneidade de 1 indica registros de processo um a cada vez. Se este parâmetro não for especificado, o número padrão de registros de entrada obtidos de cada vez será 5, a menos que seja especificado de outra maneira.
Você deve coordenar esta configuração com o número de encadeamentos de processamentos de pipeline distribuídos pela configuração de simultaneidade no arquivo de configuração de pipeline ou no grupo de parâmetros do sistema DEFAULT_CONCURRENCY no Console de Configuração. A configuração da simultaneidade do pipeline determina o número de encadeamentos de processamentos de pipeline simultâneos que iniciam quando um pipeline é iniciado. Se seu sistema estiver configurado para distribuir vários encadeamentos de processamentos de pipeline para cada pipeline iniciado, você pode querer aumentar esta configuração de simultaneidade de transporte de modo que os encadeamentos de pipeline não fiquem aguardando registros para processar.

Exemplos de Transportes de Banco de Dados

db2://CCadmin:passw0rd@Customers/?table=table2

Utilizando este exemplo de transporte de banco de dados, o sistema lê registros de entrada a partir do banco de dados DB2 denominado "Customers" e a tabela denominada "table2", em que o nome de login é "CCadmin" e a senha correspondente é "passw0rd".

Conceitos relacionados
Transportes
Referências relacionadas
Transportes de Arquivos
Transportes HTTP
Transportes de Filas de Mensagens


Feedback

Última atualização: 2007