

# Usar FindMatches em um trabalho visual
<a name="find-matches-visual-job"></a>

 Para usar a transformação **FindMatches** no AWS Glue Studio, você pode usar o nó **Transformação personalizada** que invoca a API FindMatches. Para obter mais informações sobre como usar uma transformação personalizada, consulte [Criar uma transformação personalizada](https://docs.aws.amazon.com/glue/latest/ug/transforms-custom.html) 

**nota**  
 Atualmente, a API FindMatches só funciona com o `Glue 2.0`. **Para executar um trabalho com a transformação personalizada que invoca a API FindMatches, verifique se a versao do AWS Glue é `Glue 2.0` na guia Detalhes do trabalho**. Se a versão do AWS Glue não for `Glue 2.0`, o trabalho falhará no runtime com a seguinte mensagem de erro: “não é possível importar o nome 'FindMatches' de 'awsglueml.transforms'”. 

## Pré-requisitos
<a name="adding-find-matches-to-a-visual-job-prerequisites"></a>
+  Para usar a transformação **Find Matches**, abra o console do AWS Glue Studio no [https://console.aws.amazon.com/gluestudio/](https://console.aws.amazon.com/gluestudio/). 
+  Cria uma transformação de machine learning. Quando criada, um transformId é gerado. Você precisará desse ID nas etapas abaixo. Para obter mais informações sobre como criar uma transformação de machine learning, consulte [Adicionar e editar transformações de machine learning](https://docs.aws.amazon.com/glue/latest/dg/console-machine-learning-transforms.html#console-machine-learning-transforms-actions). 

## Adicionar uma transformação FindMatches
<a name="adding-find-matches-to-a-visual-job"></a>

**Para adicionar uma transformação FindMatches:**

1.  No editor de trabalho do AWS Glue Studio, abra o painel Recurso clicando no símbolo de cruz no canto superior esquerdo do gráfico visual do trabalho e escolha uma fonte de dados selecionando a guia **Dados**. Essa é a fonte de dados na qual você deseja verificar se há correspondências.   
![A captura de tela mostra um símbolo de cruz dentro de um círculo. Quando você clica nesse símbolo no editor de trabalho visual, o painel de recursos é aberto.](http://docs.aws.amazon.com/pt_br/glue/latest/dg/images/resource-panel-blank-canvas.png)

1.  Escolha o nó da fonte de dados e abra o painel Recurso clicando no símbolo de cruz no canto superior esquerdo do gráfico visual do trabalho e procure “transformação personalizada”. Escolha o nó **Transformação personalizada** para adicioná-lo ao gráfico. A **transformação personalizada** é vinculada ao nó da fonte de dados. Caso contrário, você pode clicar no nó **Transformação personalizada** e escolher a guia **Propriedades do nó** e, em **Superiores do nó**, escolher a fonte de dados. 

1.  Clique no nó **Transformação personalizada** no gráfico visual, depois escolha a guia **Propriedades do nó** e dê um nome para a transformação personalizada. É recomendável renomear a transformação para que o nome da transformação seja facilmente identificável no gráfico visual. 

1.  Escolha a guia **Transformar**, na qual você pode editar o bloco de código. É aqui que o código para invocar a API FindMatches pode ser adicionado.   
![A captura de tela mostra o bloco de código na guia Transformar quando o nó Transformação personalizada é selecionado.](http://docs.aws.amazon.com/pt_br/glue/latest/dg/images/custom-transform-code-block.png)

    O bloco de código contém código já preenchido para você começar. Substitua o código já preenchido pelo modelo abaixo. O modelo tem um espaço reservado para o **transformId**, o qual você pode fornecer. 

   ```
   def MyTransform (glueContext, dfc) -> DynamicFrameCollection:
       dynf = dfc.select(list(dfc.keys())[0])
       from awsglueml.transforms import FindMatches
       findmatches = FindMatches.apply(frame = dynf, transformId = "<your id>")
       return(DynamicFrameCollection({"FindMatches": findmatches}, glueContext))
   ```

1.  Clique no nó **Transformação personalizada** no gráfico visual, abra o painel Recurso clicando no símbolo de cruz no canto superior esquerdo do gráfico visual do trabalho e procure “transformação personalizada”. Não há necessidade de alterar a seleção padrão, pois há somente um DynamicFrame no conjunto. 

1.  Você pode continuar adicionando transformações ou armazenar o resultado, que agora está enriquecido com as colunas adicionais de descoberta de correspondências. Se você quiser referenciar essas novas colunas em transformações posteriores, precisará adicioná-las ao esquema de saída da transformação. A maneira mais fácil de fazer isso é escolher a guia **Visualização de dados** e, na guia Esquema, escolher “Usar esquema de visualização de dados”. 

1.  Para personalizar findMatches, você pode adicionar outros parâmetros para passar para o método 'aplicar'. Consulte [Classe FindMatches](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-pyspark-transforms-findmatches.html). 

## Adicionar uma transformação incremental FindMatches
<a name="find-matches-incrementally-visual-job"></a>

 No caso de correspondências incrementais, o processo é o mesmo que **Adicionar uma transformação FindMatches** com as seguintes diferenças: 
+  Em vez de um nó superior para a transformação personalizada, você precisará de dois nós superiores. 
+  O primeiro nó superior deve ser o conjunto de dados. 
+  O segundo nó superior deve ser o conjunto de dados incrementais. 

   Substitua o `transformId` pelo seu `transformId` no bloco de código do modelo: 

  ```
  def MyTransform (glueContext, dfc) -> DynamicFrameCollection:
      dfs = list(dfc.values())
      dynf = dfs[0]
      inc_dynf = dfs[1]
      from awsglueml.transforms import FindIncrementalMatches
      findmatches = FindIncrementalMatches.apply(existingFrame = dynf, incrementalFrame = inc_dynf,
                                      transformId = "<your id>")
      return(DynamicFrameCollection({"FindMatches": findmatches}, glueContext))
  ```
+  Para obter parâmetros opcionais, consulte a classe [FindIncrementalMatches](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-pyspark-transforms-findincrementalmatches.html). 