Migrazione dai job della AWS shell Glue Python - AWS Glue

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à.

Migrazione dai job della AWS shell Glue Python

AWS ha lanciato i job della shell AWS Glue Python nel 2018 AWS ha lanciato i lavori della shell Glue AWS Python nel 2018 per offrire ai clienti un modo semplice per eseguire script Python per lavori ETL di small-to-medium grandi dimensioni e per attivare query SQL. Tuttavia, ora esistono opzioni più moderne e flessibili per affrontare i carichi di lavoro attualmente in esecuzione. PythonShell Questo argomento spiega come migrare i carichi di lavoro dai job della shell Glue AWS Python a una di queste opzioni alternative per sfruttare le nuove funzionalità disponibili.

Questo argomento spiega come migrare dai job della shell AWS Glue Python a opzioni alternative.

Migrazione del carico di lavoro verso i job AWS Glue Spark

AWS Glue Spark e PySpark jobs ti consentono di eseguire i tuoi carichi di lavoro in modo distribuito. Poiché sia i job AWS Glue Python Shell che i job AWS Glue Spark vengono eseguiti sulla stessa piattaforma, la migrazione è facile e puoi continuare a utilizzare le funzionalità di Glue esistenti che usi con i job di Python Shell, come AWS Glue AWS Workflows, Glue AWS Triggers, l' Amazon EventBridge integrazione di Glue, l'installazione di pacchetti basata su\ PIP e così via. AWS

Tuttavia, i job AWS Glue Spark sono progettati per eseguire carichi di lavoro Spark e il numero minimo di lavoratori è 2. Se si effettua la migrazione dai processi shell di Python senza modificare gli script, verrà effettivamente utilizzato solo un worker e gli altri worker rimarranno inattivi. Questa operazione aumenterà i costi.

Per aumentare l'efficienza, occorre riscrivere lo script del processo di Python per utilizzare le funzionalità di Spark e distribuire il carico di lavoro tra più worker. Se lo script di Python si basa su Pandas, è facile eseguire la migrazione usando la nuova API Pandas su Spark. Scopri di più su questo argomento nel blog AWS Big Data: approfondisci la conoscenza di AWS Glue 4.0 for Apache Spark.

Migrazione del carico di lavoro a AWS Lambda

AWS Lambda è un servizio di elaborazione serverless che consente di eseguire codice senza effettuare il provisioning o la gestione di server. Poiché AWS Lambda offre tempi di startup inferiori e opzioni più flessibili per la capacità di elaborazione, è possibile beneficiare di questi vantaggi. Per gestire librerie Python aggiuntive, i processi shell di AWS Glue Python utilizzano l'installazione basata su PIP. Tuttavia, per AWS Lambda, devi scegliere una delle seguenti opzioni: un archivio zip, un'immagine del contenitore o Lambda Layers.

D'altra parte, il timeout massimo AWS Lambdaè di 900 secondi (15 minuti). Se la durata del tuo attuale carico di lavoro di AWS Glue Python Shell è superiore a quella, o se il tuo carico di lavoro presenta uno schema a picchi che può causare durate di lavoro più lunghe, ti consigliamo di esplorare altre opzioni invece di. AWS Lambda

Migrazione del carico di lavoro su Amazon ECS/Fargate

Amazon Elastic Container Service (Amazon ECS) è un servizio completamente gestito che semplifica la distribuzione, la gestione e la scalabilità delle applicazioni containerizzate. AWS Fargate è un motore di elaborazione serverless per carichi di lavoro containerizzati in esecuzione su Amazon ECS e Amazon Elastic Kubernetes Service (Amazon EKS). Non è previsto un timeout massimo su Amazon ECS e Fargate, quindi questa è una buona opzione per i processi di lunga durata. Poiché si ha il pieno controllo sull'immagine del container, è possibile portare lo script Python e librerie Python supplementari nel container e usarle. Tuttavia, è necessario containerizzare lo script Python per utilizzare questo approccio.

Migrazione del carico di lavoro verso Flussi di lavoro gestiti da Amazon per operatore Python di Apache Airflow

Amazon Managed Workflows for Apache Airflow (Managed Workflows for Apache Airflow) è un servizio di orchestrazione gestito per Apache Airflow che semplifica la configurazione e la gestione di pipeline di dati nel cloud su larga scala. end-to-end Se disponi già di un ambiente MWAA, sarà semplice utilizzare l'operatore Python anziché i job AWS Glue Python Shell. L'operatore Python è un operatore che esegue il codice Python all'interno di un flusso di lavoro Airflow. Tuttavia, se non si dispone di un ambiente MWAA esistente, consigliamo di valutare altre opzioni.

Migrazione del carico di lavoro verso i lavori di formazione sull'intelligenza artificiale Amazon SageMaker AI

Amazon SageMaker AI La formazione è un servizio di machine learning (ML) completamente gestito offerto da Amazon SageMaker AI che consente di addestrare in modo efficiente un'ampia gamma di modelli di machine learning su larga scala. Il fulcro dei lavori di Amazon SageMaker AI intelligenza artificiale è la containerizzazione dei carichi di lavoro ML e la capacità di gestire AWS le risorse di elaborazione. Se preferisci un ambiente serverless in cui non è previsto un timeout massimo, i lavori di formazione sull' Amazon SageMaker AI intelligenza artificiale potrebbero essere la soluzione giusta per te. Tuttavia, la latenza di avvio tende ad essere più lunga rispetto ai job di Glue AWS Python Shell. Per i processi sensibili alla latenza, consigliamo di valutare altre opzioni.