

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

# Elabora i dati in un bucket Amazon S3 con Distributed Map
<a name="sample-dist-map-s3data-process"></a>

Questo progetto di esempio dimostra come è possibile utilizzare [*lo stato della Mappa Distribuita*](state-map-distributed.md) per elaborare dati su larga scala, ad esempio analizzare dati meteorologici storici e identificare la stazione meteorologica con la temperatura media più alta del pianeta ogni mese. I dati meteorologici vengono registrati in oltre 12.000 file CSV, che a loro volta vengono archiviati in un bucket Amazon S3.

**Questo progetto di esempio include due *stati della mappa distribuita* denominati **Distributed S3 copy** NOA Data and Process. NOAAData** **Copia distribuita di S3 I dati NOA** eseguono iterazioni sui file CSV in un bucket Amazon S3 pubblico denominato e **noaa-gsod-pds**li copia in un bucket Amazon S3 del tuo. Account AWS Il **processo** esegue NOAAData un'iterazione sui file copiati e include una funzione Lambda che esegue l'analisi della temperatura.

Il progetto di esempio verifica innanzitutto il contenuto del bucket Amazon S3 con una chiamata all'azione API [ListObjectsV2](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html). In base al numero di [chiavi](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html#AmazonS3-ListObjectsV2-response-MaxKeys) restituite in risposta a questa chiamata, il progetto di esempio prende una delle seguenti decisioni: 
+ Se il conteggio delle chiavi è maggiore o uguale a 1, il progetto passa allo NOAAData stato **Processo**. Questo *stato della mappa distribuita* include una Lambda funzione denominata **TemperatureFunction**che trova la stazione meteorologica con la temperatura media più alta ogni mese. Questa funzione restituisce un dizionario con `year-month` come chiave e un dizionario che contiene informazioni sulla stazione meteorologica come valore.
+ Se il numero di chiavi restituito non supera 1, lo stato **dei dati NOA di Distributed S3 copy** elenca tutti gli oggetti dal bucket pubblico **noaa-gsod-pds**e copia iterativamente i singoli oggetti in un altro bucket dell'account in batch da 100. Una [mappa in linea](state-map-inline.md) esegue la copia iterativa degli oggetti.

  Dopo aver copiato tutti gli oggetti, il progetto passa NOAAData allo stato **Processo per l'elaborazione dei dati** meteorologici.

Il progetto di esempio passa infine a una Lambda funzione di riduzione che esegue un'aggregazione finale dei risultati restituiti dalla **TemperatureFunction**funzione e scrive i risultati in una tabella. Amazon DynamoDB

Con Distributed Map, puoi eseguire fino a 10.000 esecuzioni parallele di workflow secondari alla volta. In questo progetto di esempio, la concorrenza massima di **Process NOAAData** Distributed Map è impostata su 3000, il che la limita a 3000 esecuzioni parallele di flussi di lavoro secondari.

Questo progetto di esempio crea la macchina a stati, le AWS risorse di supporto e configura le relative autorizzazioni IAM. Esplora questo progetto di esempio per scoprire come utilizzare la Distributed Map per orchestrare carichi di lavoro paralleli su larga scala o usala come punto di partenza per i tuoi progetti.

**Importante**  
Questo progetto di esempio è disponibile solo nella regione Stati Uniti orientali (Virginia settentrionale).

## Fase 1: Creare la macchina a stati
<a name="sample-dist-map-s3data-create"></a>

1. Apri la [console Step Functions](https://console.aws.amazon.com/states/home?region=us-east-1#/) e scegli **Crea macchina a stati**.

1. Scegli **Crea da modello** e trova il modello iniziale correlato. Seleziona **Successivo** per continuare.

1. Scegli come usare il modello:

   1. **Esegui una demo**: crea una macchina a stati di sola lettura. Dopo la revisione, puoi creare il flusso di lavoro e tutte le risorse correlate.

   1. **Basati su di esso**: fornisce una definizione modificabile del flusso di lavoro che puoi rivedere, personalizzare e implementare con le tue risorse. (Le risorse correlate, come funzioni o code, **non** verranno create automaticamente.)

1. Scegliete **Usa modello** per continuare con la selezione.
**Nota**  
*Per i servizi distribuiti sul tuo account si applicano le tariffe standard.*

## Passaggio 2: Esegui la macchina a stati dimostrativa
<a name="sample-dist-map-s3data-run"></a>

Se hai scelto l'opzione **Esegui una demo**, tutte le risorse correlate verranno distribuite e pronte per l'esecuzione. Se hai scelto l'opzione **Crea su di esso**, potrebbe essere necessario impostare valori segnaposto e creare risorse aggiuntive prima di poter eseguire il flusso di lavoro personalizzato.

1. Scegli **Distribuisci ed esegui.**

1. Attendi che lo CloudFormation stack venga distribuito. Questa operazione può richiedere fino a 10 minuti.

1. Una volta visualizzata **l'opzione Avvia esecuzione**, esamina l'**input** e scegli **Avvia esecuzione**.

**Complimenti\$1**  
Ora dovresti avere una demo in esecuzione della tua macchina a stati. È possibile scegliere gli stati nella **vista Grafico** per esaminare input, output, variabili, definizione ed eventi.