View a markdown version of this page

Eseguire un processo Processing con Apache Spark - Amazon SageMaker AI

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

Eseguire un processo Processing con Apache Spark

Apache Spark è un motore di analisi unificato per l'elaborazione di dati su larga scala. Amazon SageMaker AI fornisce immagini Docker predefinite che includono Apache Spark e altre dipendenze necessarie per eseguire processi di elaborazione dati distribuiti. Di seguito viene fornito un esempio su come eseguire un processo di Amazon SageMaker Processing utilizzando Apache Spark.

Con l'SDK Amazon SageMaker Python, puoi applicare facilmente trasformazioni di dati ed estrarre funzionalità (ingegneria delle funzionalità) utilizzando il framework Spark. Per informazioni sull'utilizzo dell'SDK SageMaker Python per eseguire i processi di elaborazione di Spark, consulta Data Processing with Spark nell'SDK Amazon Python. SageMaker

Un repository di codice che contiene il codice sorgente e i Dockerfile per le immagini Spark è disponibile su. GitHub

Puoi usare la classe sagemaker.spark.PySparkProcessor o sagemaker.spark.SparkJarProcessor per eseguire l'applicazione Spark all'interno di un processo di elaborazione. Nota: puoi impostare un limite massimo MaxRuntimeInSeconds di durata di 5 giorni. Per quanto riguarda il tempo di esecuzione e il numero di istanze utilizzate, i carichi di lavoro Simple Spark vedono una relazione quasi lineare tra il numero di istanze e il tempo di completamento.

L'esempio di codice seguente mostra come eseguire un processo di elaborazione che richiama PySpark lo scriptpreprocess.py.

from sagemaker.core.spark.processing import PySparkProcessor spark_processor = PySparkProcessor( base_job_name="spark-preprocessor", framework_version="2.4", role=role, instance_count=2, instance_type="ml.m5.xlarge", max_runtime_in_seconds=1200, ) spark_processor.run( submit_app="preprocess.py", arguments=['s3_input_bucket', bucket, 's3_input_key_prefix', input_prefix, 's3_output_bucket', bucket, 's3_output_key_prefix', output_prefix], )

Per uno sguardo approfondito, consultate il taccuino di esempio per l'elaborazione distribuita dei dati con Apache Spark and SageMaker Processing.

Se non stai utilizzando Amazon SageMaker AI Python SDK e una delle sue classi di processori per recuperare le immagini predefinite, puoi recuperarle tu stesso. Le immagini Docker SageMaker predefinite sono archiviate in Amazon Elastic Container Registry (Amazon ECR). Per un elenco completo delle immagini Docker predefinite disponibili, consulta il documento delle immagini disponibili.

Per ulteriori informazioni sull'utilizzo dell'SDK SageMaker Python con i contenitori Processing, consulta Amazon AI Python SDK. SageMaker