Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Tutorial: scrivere uno script ETL AWS Glue per Ray

Modalità Focus
Tutorial: scrivere uno script ETL AWS Glue per Ray - 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à.

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

Ray ti dà la possibilità di scrivere e scalare attività distribuite in modo nativo in Python. AWS Glue for Ray offre ambienti Ray senza server a cui è possibile accedere sia dai job che dalle sessioni interattive (le sessioni interattive di Ray sono disponibili in anteprima). Il AWS Glue job system offre un modo coerente per gestire ed eseguire le attività, in base a una pianificazione, da un trigger o dalla console. AWS Glue

La combinazione di questi AWS Glue strumenti crea una potente toolchain che puoi usare per i carichi di lavoro di estrazione, trasformazione e caricamento (ETL), un caso d'uso comune per. AWS Glue Questo tutorial ti illustrerà le basi per creare questa soluzione.

Supportiamo anche l'utilizzo di Spark AWS Glue per i tuoi carichi di lavoro ETL. Per un tutorial sulla scrittura di uno script AWS Glue per Spark, consulta. Tutorial: Scrivere uno script di AWS Glue for Spark Per ulteriori informazioni sui motori disponibili, consulta la pagina AWS Glue per Spark e AWS Glue per Ray. Ray è in grado di affrontare vari tipi di attività nell'ambito dell'analisi, del machine learning (ML) e dello sviluppo di applicazioni.

In questo tutorial, estrarrai, trasformerai e caricherai un set di dati CSV ospitato in Amazon Simple Storage Service (Amazon S3). Inizierai con il set di dati dei dati di record di viaggio della New York City Taxi and Limousine Commission (TLC), archiviato in un bucket Amazon S3 pubblico. Per ulteriori informazioni su questo set di dati, consulta il Registry of Open Data su AWS.

Trasformerai i tuoi dati con le trasformazioni predefinite disponibili nella libreria Ray Data. Ray Data è una libreria per la preparazione di set di dati progettata da Ray e inclusa di default negli ambienti AWS Glue Ray. Per ulteriori informazioni sulle librerie incluse in modo predefinito, consulta la pagina Moduli disponibili con i processi Ray. Potrai quindi scrivere i dati trasformati in un bucket Amazon S3 da te controllato.

Prerequisiti: per questo tutorial, è necessario un AWS account con accesso ad AWS Glue Amazon S3.

Passaggio 1: creazione di un bucket in Amazon S3 per contenere i dati di output

Avrai bisogno di un bucket Amazon S3 da te controllato che funga da sink per i dati creati in questo tutorial. È possibile creare questo bucket con la procedura seguente.

Nota

Se desideri scrivere i tuoi dati in un bucket esistente sotto il tuo controllo, puoi saltare questo passaggio. Prendi nota del yourBucketName nome del bucket esistente, da utilizzare nei passaggi successivi.

Creazione di un bucket per l'output del processo Ray
  • Crea un bucket seguendo i passaggi descritti in Creating a bucket nella Guida per l'utente di Amazon S3.

    • Quando scegli il nome del bucket, prendi nota di yourBucketName ciò a cui farai riferimento nei passaggi successivi.

    • Per altre configurazioni, le impostazioni suggerite fornite nella console Amazon S3 dovrebbero funzionare correttamente in questo tutorial.

    Ad esempio, la finestra di dialogo per la creazione del bucket potrebbe avere questo aspetto nella console Amazon S3.

    Una finestra di dialogo nella console Amazon S3 utilizzata per configurare un nuovo bucket.

Passaggio 2: creazione di un ruolo e una policy IAM per il processo Ray

Il tuo lavoro richiederà un ruolo AWS Identity and Access Management (IAM) con quanto segue:

  • Autorizzazioni concesse dalla policy gestita da AWSGlueServiceRole. Queste sono le autorizzazioni di base necessarie per eseguire un AWS Glue lavoro.

  • Autorizzazioni Read a livello di accesso per la risorsa nyc-tlc/* Amazon S3.

  • Autorizzazioni Write a livello di accesso per la risorsa yourBucketName/* Amazon S3.

  • Una relazione di fiducia che consente al principale glue.amazonaws.com di assumere il ruolo.

È possibile creare questo ruolo con la procedura seguente.

Per creare un ruolo IAM per il tuo lavoro su AWS Glue for Ray
Nota

È possibile creare un ruolo IAM seguendo molte procedure diverse. Per ulteriori informazioni o opzioni su come effettuare il provisioning delle risorse IAM, consulta la documentazione di AWS Identity and Access Management.

  1. Crea una policy che definisca le autorizzazioni Amazon S3 precedentemente delineate seguendo i passaggi descritti in Creating IAM policies (console) with the visual editor nella Guida per l'utente di IAM.

    • Quando selezioni un servizio, scegli Amazon S3.

    • Quando selezioni le autorizzazioni per la tua policy, collega i seguenti set di operazioni per le seguenti risorse (menzionate in precedenza):

      • Autorizzazioni con livello di accesso di lettura per la risorsa nyc-tlc/* Amazon S3.

      • Autorizzazioni con livello di accesso di scrittura per la risorsa yourBucketName/* di Amazon S3.

    • Quando selezioni il nome della policy, prendi nota di YourPolicyName ciò a cui farai riferimento in un passaggio successivo.

  2. Crea un ruolo AWS Glue per il tuo lavoro su Ray seguendo i passaggi descritti nella sezione Creazione di un ruolo per un AWS servizio (console) nella Guida per l'utente IAM.

    • Quando selezioni un'entità AWS di servizio affidabile, scegliGlue. Questo creerà automaticamente la relazione di attendibilità necessaria per il processo.

    • Quando selezioni le policy per la policy delle autorizzazioni, collega le seguenti policy:

      • AWSGlueServiceRole

      • YourPolicyName

    • Quando selezionate il nome del ruolo, prendete nota di YourRoleName ciò a cui farete riferimento nei passaggi successivi.

Passaggio 3: crea ed esegui un job AWS Glue for Ray

In questo passaggio, si crea un AWS Glue lavoro utilizzando il AWS Management Console, si fornisce uno script di esempio e si esegue il lavoro. Quando crei un processo, nella console viene creato uno spazio in cui archiviare, configurare e modificare lo script Ray. Per informazioni su come creare i processi, consulta Effettuando l'accesso a AWS Glue console.

In questo tutorial, affrontiamo il seguente scenario ETL: vorresti leggere i record di gennaio 2022 dal set di dati New York City TLC Trip Record, aggiungere una nuova colonna (tip_rate) al set di dati combinando i dati nelle colonne esistenti, quindi rimuovere un numero di colonne che non sono rilevanti per la tua analisi attuale e quindi desideri scrivere i risultatiyourBucketName. Il seguente script Ray esegue questi passaggi:

import ray import pandas from ray import data ray.init('auto') ds = ray.data.read_csv("s3://nyc-tlc/opendata_repo/opendata_webconvert/yellow/yellow_tripdata_2022-01.csv") # Add the given new column to the dataset and show the sample record after adding a new column ds = ds.add_column( "tip_rate", lambda df: df["tip_amount"] / df["total_amount"]) # Dropping few columns from the underlying Dataset ds = ds.drop_columns(["payment_type", "fare_amount", "extra", "tolls_amount", "improvement_surcharge"]) ds.write_parquet("s3://yourBucketName/ray/tutorial/output/")
Per creare ed eseguire un job for Ray AWS Glue
  1. In AWS Management Console, vai alla pagina di AWS Glue destinazione.

  2. Nel riquadro di navigazione laterale, scegli Processi ETL.

  3. In Crea processo, scegli Ray script editor, quindi scegli Crea, come nella figura seguente.

    Una finestra di dialogo nella AWS Glue console utilizzata per creare un lavoro Ray.
  4. Incolla il testo completo dello script nel riquadro Script e sostituisci l'eventuale testo presente.

  5. Vai ai dettagli di Job e imposta la proprietà IAM Role suYourRoleName.

  6. Seleziona Salva, quindi scegli Esegui.

Passaggio 4: ispezione dell'output

Dopo aver eseguito il AWS Glue job, dovresti verificare che l'output corrisponda alle aspettative di questo scenario. È possibile farlo con la seguente procedura.

Verifica della corretta esecuzione del processo Ray
  1. Nella pagina dei dettagli del processo, vai a Esecuzioni.

  2. Dopo alcuni minuti, dovresti vedere un'esecuzione con lo Stato di esecuzione impostato su Operazione riuscita.

  3. Accedi alla console Amazon S3 all'indirizzo https://console.aws.amazon.com/s3/e ispeziona. yourBucketName Dovresti visualizzare i file scritti nel tuo bucket di output.

  4. Leggi i file Parquet e verificane il contenuto. Puoi farlo utilizzando gli strumenti esistenti. Se non disponi di un processo per la convalida dei file Parquet, puoi farlo nella AWS Glue console con una sessione AWS Glue interattiva, usando Spark o Ray (in anteprima).

    In una sessione interattiva, hai accesso alle librerie Ray Data, Spark o pandas, fornite per impostazione predefinita (in base al motore scelto). Per verificare i contenuti del tuo file, è possibile utilizzare i metodi di ispezione comuni disponibili in tali librerie, ad esempio count, schema e show. Per ulteriori informazioni sulle sessioni interattive nella console, consulta Uso dei notebook con Studio e. AWS Glue AWS Glue

    Poiché hai confermato che i file sono stati scritti nel bucket, puoi affermare con relativa certezza che se l'output presenta problemi, non sono correlati alla configurazione IAM. Configura la sessione con yourRoleName per avere accesso ai file pertinenti.

Se non vedi i risultati previsti, esamina i contenuti per la risoluzione dei problemi in questa guida per identificare e correggere l'origine dell'errore. Per interpretare gli stati di errore durante l'esecuzione del processo, consulta la pagina AWS Glue stati di esecuzione del processo. Puoi trovare i contenuti relativi alla risoluzione dei problemi nel capitolo Risoluzione dei problemi AWS Glue. Per errori specifici relativi ai processi Ray, consulta la sezione Risoluzione dei problemi relativi AWS Glue agli errori di Ray nei log nel capitolo sulla risoluzione dei problemi.

Passaggi successivi

Ora hai visto ed eseguito un processo ETL utilizzando AWS Glue for Ray dall'inizio alla fine. Puoi utilizzare le seguenti risorse per capire quali strumenti offre Ray AWS Glue per trasformare e interpretare i tuoi dati su larga scala.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.