Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo FindMatches in un lavoro visivo
Per utilizzare la FindMatchestrasformazione in AWS Glue Studio, puoi utilizzare il nodo Custom Transform che richiama l' FindMatches API. Per ulteriori informazioni su come utilizzare una trasformazione personalizzata, consulta la pagina Creating a custom transformation
Nota
Attualmente, l' FindMatches API funziona solo con. Glue 2.0
Per eseguire un processo con la trasformazione personalizzata che richiama l' FindMatches API, assicurati che AWS Glue la versione è Glue 2.0
nella scheda Dettagli del lavoro. Se la versione di AWS Glue non lo èGlue 2.0
, il lavoro fallirà in fase di esecuzione con il seguente messaggio di errore: «impossibile importare il nome '' da FindMatches 'awsglueml.transforms'».
Prerequisiti
-
Per utilizzare la trasformazione Find Matches, apri il AWS Glue Studio console pressohttps://console.aws.amazon.com/gluestudio/
. -
Crea una trasformazione basata su machine learning. Una volta creata, viene generato un transformId. Avrai bisogno di questo ID per i passaggi successivi. Per ulteriori informazioni su come creare una trasformazione basata su machine learning, consulta la pagina Adding and editing machine learning transforms.
Aggiungere una FindMatches trasformazione
Per aggiungere una FindMatches trasformazione:
-
Nel AWS Glue Studio nell'editor dei lavori, apri il pannello Risorse facendo clic sul simbolo della croce nell'angolo in alto a sinistra del grafico visivo del lavoro e scegli una fonte di dati selezionando la scheda Dati. Questa è l'origine dati nella quale verificare la presenza di corrispondenze.
-
Scegli il nodo dell'origine dati, quindi apri il pannello Risorse facendo clic sul simbolo della croce nell'angolo in alto a sinistra del grafico visivo del processo e cerca "trasformazione personalizzata". Scegli il nodo Trasformazione personalizzata per aggiungerlo al grafico. La Trasformazione personalizzata è collegata al nodo dell'origine dati. In caso contrario, puoi fare clic sul nodo Trasformazione personalizzata e scegliere la scheda Proprietà del nodo, quindi, in Padri del nodo, scegli l'origine dati.
-
Fai clic sul nodo Trasformazione personalizzata nel grafico visivo, quindi scegli la scheda Proprietà del nodo e assegna un nome alla trasformazione personalizzata. Ti consigliamo di rinominare la trasformazione assegnandole un nome facilmente identificabile nel grafico visivo.
-
Scegli la scheda Trasforma, dove puoi modificare il blocco di codice. Qui è possibile aggiungere il codice per richiamare l' FindMatches API.
Il blocco di codice contiene codice precompilato per aiutarti a iniziare. Sovrascrivi il codice precompilato con il modello seguente. Il modello ha un segnaposto per transformId, che puoi sostituire con il tuo valore.
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))
-
Fai clic sul nodo Trasformazione personalizzata nel grafico visivo, quindi apri il pannello Risorse facendo clic sul simbolo della croce nell'angolo in alto a sinistra del grafico visivo del processo e cerca "Seleziona dalla raccolta". Non è necessario modificare la selezione predefinita poiché ce n'è solo una DynamicFrame nella raccolta.
-
È possibile continuare ad aggiungere trasformazioni o archiviare il risultato, che ora è arricchito con le colonne aggiuntive delle corrispondenze trovate. Se vuoi fare riferimento a quelle nuove colonne nelle trasformazioni a valle, devi aggiungerle allo schema di output della trasformazione. Il modo più semplice per farlo è scegliere la scheda Anteprima dati e quindi, nella scheda Schema, scegliere "Utilizza schema di anteprima dati".
-
Per personalizzare FindMatches, puoi aggiungere parametri aggiuntivi da passare al metodo 'applica'. Vedi FindMatches classe.
Aggiungere una trasformazione FindMatches incrementale
Nel caso di corrispondenze incrementali, il processo è lo stesso dell'aggiunta di una FindMatches trasformazione con le seguenti differenze:
-
Per la trasformazione personalizzata sono necessari due nodi padri anziché un solo nodo.
-
Il primo nodo padre dovrebbe essere il set di dati.
-
Il secondo nodo padre dovrebbe essere il set di dati incrementale.
Sostituisci il valore
transformId
con il tuotransformId
nel blocco di codice del modello: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))
-
Per i parametri opzionali, vedete FindIncrementalMatches class.