Divisão de Arquivo

Se o adaptador estiver recuperando de forma rotineira grandes arquivos do sistema de arquivos de informações corporativas, você poderá escolher dividir os arquivos em partes menores utilizando a funcionalidade de divisão de arquivo do adaptador. Quando a divisão de arquivo for ativada, os arquivos de eventos serão divididos em várias partes e colocados no terminal separadamente. O adaptador não remonta as partes no terminal, entretanto, ele fornece as informações necessárias no gráfico de negócios para remontar as partes.

O arquivo é dividido pelo adaptador com base no valor especificado na propriedade Critérios de Divisão. Este valor pode ser um delimitador ou um tamanho de arquivo. Como a divisão de arquivo é um recurso opcional, ela pode ser desativada deixando os valores da propriedade SplitCriteria e a propriedade SplittingFunctionClassName vazios ao configurar as propriedades de especificação de ativação com o assistente Enterprise Service Discovery ou configurando a propriedade SplitCriteria como zero.
Nota: Se o valor para EventContentType for nulo, então, a propriedade SplitCriteria é configurada automaticamente para dividir arquivos com base no tamanho.

Divisão de Arquivo por Delimitador

Quando um ou mais caracteres como vírgulas (,), ponto e vírgula (;), aspas ( ", ' ), chaves ({}) ou barras ( / \ ) são utilizados para separar um objeto de negócios, o adaptador pode utilizar estas informações para dividir arquivos em partes menores. Estas partes são redirecionadas ao servidor separadamente e, em seguida, remontadas pelo recurso Seqüenciamento de Eventos do WebSphere Process Server. Isto é chamado de divisão do arquivo do delimitador e pode ser ativado utilizando a propriedade de especificação de ativação SplitCriteria.

Quando arquivos de eventos são divididos em partes, é importante lembrar que cada parte cria um objeto de negócios. Isso significa que o valor especificado para a propriedade PollQuantity e o número de objetos de negócios obtidos no terminal podem ser diferentes. Quando a divisão de arquivo baseada em um delimitador é ativada, a propriedade PollQuantity especifica o número de arquivos de eventos que estão presentes no Armazenamento de Eventos e a classe utilizada para dividir o arquivo de evento é configurada na propriedade de especificação de ativação Nome da Classe da Função de Divisão.

Para demonstrar como o valor de PollQuantity funciona com a divisão de arquivo do delimitador, considere dois arquivos de eventos. O primeiro contém um objeto de negócios e o segundo arquivo contém dois objetos de negócios. Se o valor de PollQuantity for 2, o primeiro objeto de negócios do primeiro arquivo de evento e o próximo registro de negócio do segundo arquivo de evento serão enviados no primeiro ciclo de consulta. O segundo objeto de negócios do segundo arquivo é enviado no próximo ciclo de poll.

As regras a seguir se aplicam à utilização dos delimitadores:
  • Todas as novas linhas do delimitador são representadas como \n. O adaptador converte \n para o novo caractere de linha específico da plataforma.
  • Se houver mais de um delimitador, cada delimitador deverá ser separado por um ponto e vírgula (;). Se o ponto e vírgula (;) for parte do delimitador, ele (;) deverá ser escapado como \;. Por exemplo, se o delimitador for ##\;##, ele será processado como ##;##, o que significa que o ponto e vírgula (;) faz parte do delimitador.
  • Para ignorar conteúdo que faz parte do delimitador, especifique um ponto e vírgula duplo (;;), de forma que o conteúdo entre os delimitadores seja ignorado. Por exemplo, se o arquivo de evento contiver um objeto de negócios no formato abaixo e o delimitador for ##;;$$, então:

    Name=Smith

    Company=IBM

    ##este é o conteúdo que será ignorado pelo adaptador$$

    O adaptador irá considerar o delimitador como ##$$ e irá ignorar "este é o conteúdo que será ignorado pelo adaptador".

  • O delimitador aceita qualquer valor e não há nenhuma restrição. É uma combinação de \n e um ponto e vírgula (;) se houver mais de um delimitador. Um delimitador não precisa sempre ser uma composição de \n e ;. \n é utilizado somente quando uma nova linha deve ser considerada na divisão do conteúdo do arquivo. Os delimitadores a seguir são válidos:
    • ####;\n;\n
    • ####;$$$$;\n;####
    • %%%%;$$$$$;#####
    • \n;\n;$$$$
    • ####\;####;\n;$$$$$
    • \n;\n;\n
    • ####;;$$$$
  • Se o delimitador estiver localizado no final do arquivo, SplitCriteria utiliza END_OF_FILE, o que significa que o objeto de negócios é o final físico do arquivo.

Divisão de Arquivo por Tamanho

A divisão de arquivo por tamanho é executada com base no valor especificado na propriedade SplitCriteria. Se o tamanho do arquivo de evento for maior que o valor especificado na propriedade SplitCriteria, os arquivos serão divididos em partes e cada parte será colocada no terminal separadamente. Se o tamanho do arquivo de evento for inferior ao valor de SplitCriteria, então, todo o arquivo de evento é postado no terminal. Quando os arquivos de eventos são divididos em partes, é importante lembrar que cada parte cria um objeto de negócios. Isso significa que o valor especificado para a propriedade PollQuantity e o número de objetos de negócios obtidos no terminal podem ser diferentes. Apesar de o adaptador efetuar poll com base no valor de PollQuantity, o adaptador processa efetivamente o número de objetos de negócios do arquivo um por vez. Por exemplo, se um arquivo de evento for dividido em três partes, em seguida, um arquivo será consultado e três objetos de negócios serão recebidos pelo terminal (já que cada parte cria um único objeto de negócios).

No terminal, o adaptador não remonta dados divididos em um único arquivo. Em vez disso, esta funcionalidade é manipulada pelo recurso Seqüenciamento de Eventos do WebSphere Process Server. No entanto, o adaptador Flat Files não fornece informações sobre uma parte que permita o WebSphere Process Server remontar as partes em um único arquivo. As informações sobre as partes são incluídas na propriedade chunkFileName do objeto de negócios do wrapper FlatFile. As informações sobre a parte incluem o seu tamanho em bytes e o ID de evento. O ID de evento de uma parte utiliza o seguinte formato: eventFileLocation_/_timestampStr_/_MofN, onde M é o número da parte atual e N é o número total de partes. Um exemplo de ID de evento seria como o seguinte: C:\flatfile\eventdir\eventfile.in_/_2005_01_10_10_17_49_864_/_3of5, onde timestampStr tem o seguinte formato: year_month_day_hour_minutes_seconds_milliseconds.


Termos de Utilização |


(c) Copyright IBM Corporation 2005, 2006.
Este centro de informações é desenvolvido com a tecnologia Eclipse (http://www.eclipse.org)