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à.
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 migri dai job di Python Shell senza modificare gli script, verrà effettivamente utilizzato solo un worker e gli altri worker rimarranno inattivi. Ciò aumenterà i costi.
Per renderlo efficiente, riscrivi lo script di lavoro in Python per utilizzare le funzionalità di Spark e distribuire il carico di lavoro tra più lavoratori. Se il tuo script Python è basato su Pandas, è facile migrare usando la New Pandas API 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 fornire o gestire server. Poiché AWS Lambda offre tempi di avvio inferiori e opzioni più flessibili per la capacità di elaborazione, puoi beneficiare di questi vantaggi. Per gestire librerie Python aggiuntive, i job Glue AWS Python Shell 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 una maggiore durata del lavoro, 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 esiste un timeout massimo su Amazon ECS e Fargate, quindi questa è una buona opzione per i lavori di lunga durata. Poiché hai il pieno controllo sull'immagine del contenitore, puoi portare lo script Python e le librerie Python aggiuntive nel contenitore e usarle. Tuttavia, è necessario containerizzare lo script Python per utilizzare questo approccio.
Migrazione del carico di lavoro verso Amazon Managed Workflows for Apache Airflow Python Operator
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 codice Python all'interno di un flusso di lavoro Airflow. Tuttavia, se non disponi di un ambiente MWAA esistente, ti consigliamo di esplorare 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 fare al caso tuo. Tuttavia, la latenza di avvio tende ad essere più lunga rispetto ai job di Glue AWS Python Shell. Per i lavori sensibili alla latenza, consigliamo di esplorare altre opzioni.