Nó Warehouse

Finalidade

Utilize o nó Warehouse para interagir com um banco de dados na origem de dados ODBC especificada. O nó Warehouse é especializado em um formato de nó Database que armazena a mensagem inteira ou partes da mensagem, ou ambas, em uma tabela dentro do banco de dados. Você define o que será armazenado, definindo mapeamentos que utilizam os dados da mensagem de entrada para identificar a ação necessária.

Você pode utilizar o Warehouse de mensagens:

  • Para manter uma trilha de auditoria de mensagens que passam pelo intermediário.
  • Para processamento de mensagens off-line ou em batch que passaram pelo intermediário (extração de dados).
  • Como uma origem da qual reprocessar as mensagens selecionadas no intermediário.

Você pode recuperar mensagens que armazenou no armazém utilizando as técnicas de consulta e extração do banco de dados padrão. Nenhum suporte explícito é fornecido pelo WebSphere Message Broker.

Você deve ter criado (ou identificado, se outra pessoa o criou para você):

  • Dados de entrada no formato de um conjunto de mensagens e de uma mensagem.
  • Uma conexão ODBC com o banco de dados.
  • Um banco de dados e uma tabela do banco de dados para armazenar a mensagem.
  • Pelo menos duas colunas na tabela: uma para o objeto binário (a mensagem), uma para a data e hora.

O nó Warehouse é representado no workbench pelo seguinte ícone:

 Ícone do nó Warehouse

Utilizando este nó em um fluxo de mensagens

Quando utilizar o nó Warehouse, você pode escolher armazenar no banco de dados associado ao nó:

  • A mensagem inteira, opcionalmente, com uma data e hora associadas. A mensagem é armazenada como um objeto binário, com a data e hora em uma coluna separada. Há duas vantagens nisto:
    1. Não será necessário decidir antecipadamente como utilizará os dados do armazém; como você armazenou todos eles, poderá recuperar todos os dados e aplicar as ferramentas de extração de dados a eles posteriormente.
    2. Não é necessário definir um esquema de banco de dados específico para cada tipo de mensagem que pode passar pelo intermediário. Em um sistema completo, pode haver muitos tipos de mensagens diferentes e a sobrecarga de definição de um esquema exclusivo para cada tipo de mensagem pode se tornar proibida. Você pode preceder cada nó Warehouse com um nó Compute que converte cada mensagem em um formato de armazém canônico com um esquema comum ou pode armazenar toda a mensagem como um objeto binário.
  • Partes selecionadas da mensagem, opcionalmente, como uma data e hora associadas. Fazer isso requer um esquema do banco de dados definido para esse tipo de mensagem. A mensagem é mapeada para tipo true, portanto, por exemplo, uma cadeia de caracteres na mensagem é armazenada como uma cadeia de caracteres no banco de dados.

Configurando o Nó Warehouse

Quando tiver colocado uma instância do nó Warehouse em um fluxo de mensagens, será possível configurá-lo. Clique com o botão direito do mouse na visualização do editor clique em Propriedades. As propriedades básicas do nó são exibidas.

Todas as propriedades obrigatórias, para as quais é necessário inserir um valor (aquelas que não possuem um valor padrão definido) são marcadas com um asterisco no diálogo das propriedades.

Configure o nó Warehouse da seguinte forma:

  1. Especifique em Origem de Dados o nome através do qual o banco de dados apropriado será é conhecido no sistema no qual o fluxo de mensagens será executado. O intermediário conecta-se às informações de ID de usuário e senha especificadas no comandomqsicreatebroker, mqsichangebroker oumqsisetdbparms.

    Em sistemas z/OS, o intermediário utiliza o ID da tarefa iniciada ou o ID do usuário e a senha que foram especificados no comando JCL mqsisetdbparms de BIPSDBP, no conjunto de dados de customização <hlq>.SBIPPROC.

  2. No Mapeamento de Campo, identifique a rotina de mapeamento a ser executada nesse nó. Por padrão, o nome designado à rotina de mapeamento é idêntica ao nome do arquivo de mapeamentos no qual a rotina é definida e o nome padrão para o arquivo é o nome do fluxo de mensagens concatenado com o nome do nó quando você o inclui no fluxo de mensagens (por exemplo, MFlow1_Warehouse.mfmap para o primeiro nó Warehouse no fluxo de mensagens MFlow1). Você não pode especificar um valor que inclui espaços.

    Se você clicar em Procurar próximo ao campo de entrada,um diálogo é exibido, listando todas as rotinas de mapeamento disponíveis, acessíveis por esse nó. Selecione a rotina desejada e clique em OK. O nome da rotina é definida em Mapeamento de Campo.

    Para trabalhar com a rotina de mapeamentos associada a esse nó, clique com o botão direito do mouse no nó e selecione Abrir Mappings. Se a rotina de mapeamento não existir, ela será criada com o nome padrão no arquivo padrão. Se o arquivo já existir, você poderá abrir o arquivo <flow_name>_<node_name>.mfmap na visualização Navegador.

    O conteúdo da rotina de mapeamento determina o que é armazenado no banco de dados e em qual formato. Você pode escolher, por exemplo, armazenar toda ou apenas uma parte de cada mensagem. Também pode escolher por armazenar os dados como dados binários ou armazenar cada campo no mesmo formato que eles na mensagem (por exemplo, um campo de caracteres na mensagem é armazenado como um caractere no banco de dados).

    Uma rotina de mapeamento é específica para o tipo de nó com o qual está associada; não é possível utilizar uma rotina de mapeamento desenvolvida para um nó Warehouse com qualquer outro nó que use mapeamentos (por exemplo, um nó DataInsert). Se você criar uma rotina de mapeamento, não será possível chamá-la a partir de outra rotina de mapeamento, embora seja possível chamá-la a partir de uma rotina ESQL.

  3. Selecione a definição Transação no menu drop down. Os valores são:
    • Automático (o padrão).O fluxo de mensagens, do qual o nó Warehouse faz parte, será consolidado se for bem-sucedido. Ou seja, as ações definidas nos mapeamentos são executadas e a mensagem continua no fluxo de mensagens. Se o fluxo de mensagens falhar, ele será revertido. Portanto, escolher Automático significa que a capacidade de consolidar ou reverter a ação do nó Warehouse no banco de dados depende do sucesso ou da falha do fluxo de mensagens inteiro.
    • Consolidar. Se você desejar consolidar quaisquer ações não-consolidadas nesse fluxo de mensagens no banco de dados conectado a esse nó, independente do êxito ou falha do fluxo de mensagens como um todo, selecione Consolidar. As alterações no banco de dados serão consolidadas mesmo que o próprio fluxo de mensagens falhe.
  4. Selecione Básico no navegador do diálogo de propriedades e selecione ou limpe as duas caixas de opções:
    • Se quiser que mensagens de aviso do banco de dados sejam tratadas como erros e que o nó propague a mensagem de saída para o terminal de falha, selecione a caixa de opções Tratar Avisos como Erros. A caixa é inicialmente limpa.

      Quando selecionar a caixa, o nó tratará todos os códigos de retorno positivos no banco de dados como erros e gerará exceções da mesma forma que faria para os erros negativos ou mais sérios.

      Se você não selecionar a caixa, o nó tratará avisos como códigos de retorno normais e não gerará nenhuma exceção. O aviso mais significativo gerado é não-localizado, que pode ser tratado como um código de retorno normal de forma segura na maioria das circunstâncias.

    • Se desejar que o intermediário gere uma exceção quando for detectado um erro do banco de dados, selecione a caixa de opções Emitir Exceção nos Erros do Banco de Dados. A caixa é inicialmente selecionada.

      Se você limpar a caixa, deverá tratar o erro no fluxo de mensagens para assegurar a integridade do intermediário e do banco de dados: o erro será ignorado se você não tratá-lo pelo seu próprio processamento, porque escolheu não chamar o tratamento de erros padrão pelo intermediário. Por exemplo, você pode conectar o terminal failure a uma sub-rotina de processamento de erros.

  5. Selecione Descrição no navegador de diálogo de propriedades para inserir uma descrição breve, uma descrição longa, ou ambas.
  6. Clique em Aplicar para fazer as alterações no nó Warehouse sem fechar o diálogo de propriedades. Clique em OK para aplicar as alterações e fechar o diálogo de propriedades.

    Clique em Cancelar para fechar o diálogo e descartar todas as alterações feitas nas propriedades.

Terminais e Propriedades

Os Terminais do nó Armazém são descritos na tabela a seguir:

Terminal Descrição
Entrada O terminal de entrada que aceita a mensagem para processamento pelo nó.
Defeito O terminal de saía para qual a mensagem de entrada será propagada caso seja detectada uma falha durante o cálculo. Se você tiver selecionado Tratar Avisos como Erros, o nó propagará a mensagem para esse terminal mesmo se o processamento for concluído com êxito.
Saída O terminal de saída que exibe a mensagem após a execução da instrução do banco de dados.

As tabelas a seguir descrevem as propriedades do nó; a coluna com cabeçalho M indica se a propriedade é obrigatória (marcado com um asterisco no diálogo de propriedades caso seja necessário digitar um valor quando nenhum padrão for definido), a coluna com cabeçalho C indica se a propriedade é configurável (você poderá alterar o valor quando incluir o fluxo de mensagens no arquivo bar para implementá-lo).

As propriedades Básicas do nó Warehouse são descritas na tabela a seguir.

Propriedade M C Padrão Descrição
Fonte de Dados Não Sim   O nome da origem de dados ODBC do banco de dados que contém as tabelas as quais foram referidas nos mapeamentos associados a este nó (identificado pela propriedade Mapeamento de Campo).
Mapeamento de Campo Sim Não Warehouse O nome da rotina de mapeamento que contém as instruções que são executadas no banco de dados ou à árvore de mensagens. A rotina é exclusiva para esse tipo de nó.
Transação Sim Não Automático O modo de transação para o nó. Ele pode ser Automático ou Consolidação.
Tratar Avisos como Erros Sim Não Não selecionada Trata aviso SQL do banco de dados como erros. Se você selecionar a caixa de opções, a ação será executada.
Emitir Exceção em Erro do Banco de Dados Sim Não Selecionada Erros de banco de dados fazem com que o intermediário lance uma exceção. Se você selecionar a caixa de opções, a ação será executada.

As propriedades de Descrição do nó Armazém são descritas na tabela a seguir.

Propriedade M C Padrão Descrição
Descrição Breve Não Não   Uma breve descrição do nó.
Descrição Longa Não Não   Texto que descreve a finalidade do nó no fluxo de mensagens.
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
ac04730_