Classe ResolveChoice
Risolve un tipo di scelta all'interno di un DynamicFrame.
Esempio
Ti consigliamo di utilizzare il metodo DynamicFrame.resolveChoice() per gestire campi che contengono più tipi in un DynamicFrame. Per visualizzare un esempio di codice, consulta Esempio: utilizzare resolveChoice per gestire una colonna che contiene più tipi.
Metodi
__call__(frame, specs = none, choice = "", transformation_ctx = "", info = "", stageThreshold = 0, totalThreshold = 0)
Fornisce informazioni per risolvere tipi ambigui all'interno di un DynamicFrame. Restituisce il DynamicFrame risultante.
-
frame: ilDynamicFramein cui risolvere il tipo di scelta (obbligatorio). -
specs: elenco di ambiguità specifiche da risolvere, ognuna sotto forma di tupla:(path, action). Il valorepathidentifica un elemento ambiguo specifico e il valoreactionidentifica la soluzione corrispondente.Può essere utilizzato solo uno dei parametri
specechoice. Se il parametrospecnon èNone, allora il parametrochoicedeve essere una stringa vuota. Viceversa, sechoicenon è una stringa vuota, allora il parametrospecdeve essereNone. Se non viene fornito alcun parametro, AWS Glue cerca di analizzare lo schema e di usarlo per risolvere le ambiguità.La parte
actiondi una tuplaspecspuò specificare una delle quattro strategie di risoluzione possibili:-
cast: consente di specificare un tipo verso cui trasmettere (ad esempio,cast:int). -
make_cols: risolve una potenziale ambiguità appiattendo i dati. Ad esempio, secolumnAè uninto unastring, la soluzione consiste nel produrre due colonne denominatecolumnA_intecolumnA_stringnelDynamicFramerisultante. -
make_struct: risolve una potenziale ambiguità utilizzando una struttura per rappresentare i dati. Ad esempio, se i dati in una colonna sono uninto unastring, utilizzando l'operazionemake_structviene prodotta una colonna di strutture nelDynamicFramerisultante, ognuna contenente sia unintche unastring. -
project: risolve un potenziale ambiguità conservando solo i valori di un tipo specificato nelDynamicFramerisultante. Ad esempio, se i dati in una colonnaChoiceTypepossono essere di tipointostring, specificando un'operazioneproject:stringsi rimuovono i valori dalDynamicFramerisultante che non sono di tipostring.
Se il
pathidentifica un array, inserisci parentesi quadre vuote dopo il nome dell'array per evitare ambiguità. Ad esempio, supponiamo che tu stia lavorando con dati strutturati nel seguente modo:"myList": [ { "price": 100.00 }, { "price": "$100.00" } ]Puoi selezionare la versione numerica invece di quella di stringa del prezzo impostando il
pathsu"myList[].price"e laactionsu"cast:double". -
-
choice: l'operazione di risoluzione di default se il parametrospecsèNone. Se il parametrospecsnon èNone, allora deve essere impostato solo su una stringa vuota.Oltre alle operazioni elencate in precedenza per
specs, questo argomento supporta anche l'operazione seguente:-
MATCH_CATALOG: tenta di trasmettere ogniChoiceTypeal tipo corrispondente nella tabella del catalogo specificata.
-
-
database: il database AWS Glue Data Catalog da utilizzare con la sceltaMATCH_CATALOG(obbligatorio perMATCH_CATALOG). -
table_name: il nome della tabella AWS Glue Data Catalog da utilizzare con l’operazioneMATCH_CATALOG(obbligatorio perMATCH_CATALOG). -
transformation_ctx: una stringa univoca utilizzata per identificare informazioni sullo stato (opzionale). -
info: una stringa associata a errori nella trasformazione (opzionale). -
stageThreshold: il numero massimo di errori che si possono verificare nella trasformazione prima che venga arrestata (facoltativo). Il valore di default è zero. -
totalThreshold: il numero massimo di errori che si possono verificare in totale prima che l'elaborazione venga arrestata (facoltativo). Il valore di default è zero.
apply(cls, *args, **kwargs)
Ereditato da GlueTransform apply.
name(cls)
Ereditato da GlueTransform nome.
describeArgs(cls)
Ereditato da GlueTransform describeArgs.
describeReturn(cls)
Ereditato da GlueTransform describeReturn.
describeTransform(cls)
Ereditato da GlueTransform describeTransform.
describeErrors(cls)
Ereditato da GlueTransform describeErrors.
describe(cls)
Ereditato da GlueTransform describe.