LookupRows

A transformação LookupRows procura outras entradas de log com a mesma ID de rastreamento e define o valor do campo de saída para o valor de um campo designado na linha de entrada.

Como a transformação LookupRows executa sua pesquisa em entradas de log e não em arquivos de pesquisa, é muito semelhante à transformação CrossRows. Consulte CrossRows.

Para funcionar, a transformação LookupRows exige que os dados sejam solicitados no tempo e agrupados pela ID de rastreamento nos dados de origem. Portanto, LookupRows funciona somente quando definido no arquivo Transformation.cfg ou em um arquivo Transformation Dataset Include.

À medida que revisa as descrições dos parâmetros na tabela a seguir, lembre-se do seguinte:

  • A linha de saída é a linha de dados na qual a transformação está funcionando em um determinado ponto no tempo.
  • As linhas de entrada são todas as outras linhas de dados (antes, depois ou incluindo a linha de saída) cujos valores do campo de entrada servem como entradas para a transformação.
Parâmetro Descrição Padrão
Nome Nome descritivo da transformação. Você pode inserir qualquer nome aqui.
Comentários Opcional. Observações sobre a transformação.
Condição Limita a saída da transformação a determinadas entradas de log. Se a condição não for atendida para uma entrada de log específica, o campo no parâmetro Saída de valor da linha de saída permanecerá inalterado. A entrada ainda pode ser usada para afetar outras entradas de log.
Condição de entrada Aceita entrada para a transformação a partir de apenas determinadas linhas de entrada. Se a condição Input não for atendida para uma linha de entrada específica, o campo de entrada dessa linha será ignorado e não afetará outras linhas de saída. No entanto, o campo de saída dessa linha ainda será modificado de acordo com a Condição especificada.
Entrada da chave da linha de entrada O nome do campo a ser usado como a chave para as linhas de entrada.
Entrada do valor da linha de entrada O nome do campo na linha de entrada cujo valor é copiado para o campo no parâmetro Saída do valor da linha de saída se todas as condições forem atendidas.
Operação

Uma operação que, para cada linha de saída, é aplicada a todas as linhas de entrada que satisfaçam todas as condições definidas pelos parâmetros Input Condition e Input Row Key Input Input Input para produzir uma saída:

  • PRIMEIRO gera o valor do campo no parâmetro Entrada de valor da linha de entrada a partir da primeira linha de entrada correspondente nos dados (não a primeira linha correspondente após a linha de saída).
  • LAST gera o valor do campo no parâmetro Entrada de valor da linha de entrada a partir da última linha de entrada nos dados (não a última linha correspondente antes da linha de saída).

Entrada da chave da linha de saída O nome do campo a ser usado como a chave para a linha de saída.
Saída de valor da linha de saída O nome do campo na linha de saída cujo valor é copiado do campo no parâmetro Entrada de valor da linha de entrada se todas as condições forem satisfeitas. Todas as linhas de saída com os mesmos valores de entrada da chave de linha de saída e x-trackingid e têm o mesmo valor Saída de valor de linha de saída.

Os parâmetros Entrada da chave da linha de entrada, Entrada do valor da linha de entrada e Condição de entrada definem o arquivo de pesquisa para cada ID de rastreamento, enquanto os parâmetros Entrada da chave da linha de saída, Entrada do valor da linha de saída e Entrada da condição controlam o que é pesquisado no arquivo e qual valor é armazenado no campo especificado pela Saída do valor da linha de saída.

Para entender melhor a operação da transformação, considere o seguinte outline:

  • Para cada linha de saída que satisfaça a Condição e tenha uma Entrada de Chave de Linha de Saída não vazia:

    • Encontre a primeira ou a última linha de entrada de modo que

      • a linha de entrada satisfaz a condição de entrada e
      • o x-trackingid da linha de entrada é igual ao x-trackingid da linha de saída, e
      • a entrada da chave de linha de entrada da linha de entrada é igual à entrada da chave de linha de saída da linha de saída,
  • e defina a Saída do valor da linha de saída da linha de saída para a Entrada do valor da linha de entrada.

Considerações para LookupRows

  • Valores de chave em branco nunca correspondem a nada. Mesmo que haja linhas de entrada com chaves em branco e valores que não estejam em branco que correspondam a Input Condition, um Output Row Key Input de "" sempre produzirá um Output Row Value Output de "".

  • Se não for proibido pelo Input Condition, uma linha pode se pesquisar se seus valores Input Row Key Input e Output Row Key Input forem os mesmos.

Se você tiver vários valores principais, é possível combiná-los usando uma transformação Format (consulte Formatar) antes de aplicar uma transformação LookupRows.

Suponha que você tenha um site que tenha uma página de registro de animais de estimação, onde o nome e a raça são inseridos, e uma página posterior de "comprar brinquedo", onde somente o nome do animal de estimação é usado. Você gostaria de poder vincular o nome do animal de estimação à raça de estimação inserida na página de registro. Para fazer isso, você pode criar a seguinte transformação LookupRows:

Vamos analisar este exemplo usando o outline anterior:

  • Para cada linha de saída que satisfaça ter um valor não vazio de cs-uri-query(petname) :

    • Encontre a ÚLTIMA linha de entrada de modo que

      • a linha de entrada contém um valor não vazio de cs-uri-query(petrace) e
      • o x-trackingid da linha de entrada é igual ao x-trackingid da linha de saída, e
      • o valor de cs-uri-query(petname) da linha de entrada é igual ao valor de cs-uri-query(petname) da linha de saída,
  • e defina o valor de x-pet-range da linha de saída para o valor de cs-uri-query (petrange) da linha de entrada.

A transformação LookupRows usa o nome do animal de estimação (a chave) para garantir que a raça esteja vinculada ao registro do animal de estimação e compre páginas de brinquedos para que você possa analisar os brinquedos comprados para cada raça de animal de estimação, mesmo para visitantes com vários animais de estimação.

Nesta página