

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

# Caricamento dei dati su Amazon S3
<a name="emr-plan-upload-s3"></a>

Per istruzioni su come caricare oggetti su Amazon S3, consulta [ Aggiunta di un oggetto a un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/PuttingAnObjectInABucket.html) nella *Guida per l'utente di Amazon Simple Storage Service*. Per ulteriori informazioni sull'utilizzo di Amazon S3 con Hadoop, consulta. [http://wiki.apache.org/hadoop/AmazonS3](http://wiki.apache.org/hadoop2/AmazonS3) 

**Topics**
+ [Creazione e configurazione di un bucket Amazon S3](#create-s3-bucket-input)
+ [Configurazione del caricamento in più parti per Amazon S3](#Config_Multipart)
+ [Best practice](#emr-bucket-bestpractices)
+ [Caricamento dei dati in Amazon S3 Express One Zone](emr-express-one-zone.md)

## Creazione e configurazione di un bucket Amazon S3
<a name="create-s3-bucket-input"></a>

Amazon EMR utilizza il AWS SDK per Java con Amazon S3 per archiviare dati di input, file di log e dati di output. Amazon S3 fa riferimento a questi percorsi di archiviazione come *bucket*. I bucket presentano determinate restrizioni e limitazioni in conformità con i requisiti di Amazon S3 e DNS. Per ulteriori informazioni, consulta [Restrizioni e limitazioni dei bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/BucketRestrictions.html) nella *Guida per l'utente di Amazon Simple Storage Service*.

Questa sezione mostra come utilizzare Amazon S3 per creare e quindi impostare Console di gestione AWS le autorizzazioni per un bucket Amazon S3. È anche possibile creare e impostare autorizzazioni per un bucket Amazon S3 utilizzando l'API Amazon S3 o la AWS CLI. È anche possibile utilizzare Curl insieme a una modifica per passare i parametri di autenticazione appropriati per Amazon S3.

Consulta le seguenti risorse:
+ Per creare un bucket utilizzando la console, consultare [Creare un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket.html) nella *Guida per l'utente di Amazon S3*.
+ Per creare e lavorare con i bucket utilizzando il AWS CLI, consulta [Usare i comandi S3 di alto livello con la AWS Command Line Interface](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-s3-commands.html) nella *Amazon* S3 User Guide.
+ Per creare un bucket tramite un SDK, consulta [Esempi di creazione di un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-get-location-example.html) nella *Guida per l'utente di Amazon Simple Storage Service*.
+ Per utilizzare i bucket mediante Curl, consulta [Strumento di autenticazione Amazon S3 per Curl](https://aws.amazon.com/code/amazon-s3-authentication-tool-for-curl/).
+ Per ulteriori informazioni sulla specificazione dei Region-specific bucket, consulta [Accedere a un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingBucket.html#access-bucket-intro) nella *Amazon Simple Storage Service* User Guide.
+ Per lavorare con bucket utilizzando Amazon S3 Access Points, consulta [Utilizzo di un alias in stile bucket per il punto di accesso](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-alias.html) nella *Guida per l'utente di Amazon S3*. Puoi utilizzare facilmente Amazon S3 Access Points con l'alias di Access Point di Amazon S3 anziché il nome del bucket Amazon S3. Puoi utilizzare l'alias di Access Point di Amazon S3 per applicazioni esistenti e nuove, tra cui Spark, Hive, Presto e altre.

**Nota**  
Se si abilita la registrazione per un bucket, saranno abilitati solo i log di accesso al bucket e non i log del cluster Amazon EMR. 

Durante o dopo la creazione del bucket, è possibile impostare le autorizzazioni appropriate per accedere al bucket a seconda dell'applicazione. In genere, consenti a te stesso (il proprietario) l'accesso in lettura e scrittura e il solo accesso in lettura agli utenti autenticati.

Per poter creare un cluster, sono necessari i bucket Amazon S3 richiesti. È necessario caricare in Amazon S3 tutti gli script e i dati a cui viene fatto riferimento nel cluster. 

## Configurazione del caricamento in più parti per Amazon S3
<a name="Config_Multipart"></a>

Amazon EMR supporta il caricamento multiparte di Amazon S3 tramite l'SDK AWS for Java. Il caricamento in più parti consente di caricare un singolo oggetto come un insieme di parti. È possibile caricare queste parti dell'oggetto in modo indipendente e in qualsiasi ordine. Se la trasmissione di una parte non riesce, è possibile ritrasmettere tale parte senza influire sulle altre. Una volta caricate tutte le parti dell'oggetto, Amazon S3 le assembla e crea l'oggetto.

Per ulteriori informazioni, consulta [Panoramica del caricamento in più parti](https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html) nella *Guida per l'utente di Amazon Simple Storage Service*.

Inoltre, Amazon EMR include proprietà che consentono di controllare con maggiore precisione il cleanup delle parti di un caricamento in più parti.

Nella tabella seguente vengono descritte le proprietà di configurazione di Amazon EMR per il caricamento in più parti. Per la configurazione, utilizza la classificazione di configurazione `core-site`. Per ulteriori informazioni, consulta [Configurazione delle applicazioni](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/configure-apps.html) nella *Guida ai rilasci di Amazon EMR*.


| Nome del parametro di configurazione | Valore predefinito | Description | 
| --- | --- | --- | 
| fs.s3n.multipart.uploads.enabled | true | Un tipo booleano che indica se abilitare il caricamento in più parti. Quando la visualizzazione coerente EMRFS è abilitata, i caricamenti in più parti sono abilitati per impostazione predefinita e l'impostazione di questo valore su false viene ignorata. | 
| fs.s3n.multipart.uploads.split.size | 134217728 | Specifica la dimensione massima di una parte, in byte, prima che EMRFS avvii il caricamento di una nuova parte quando è abilitato il caricamento in più parti. Il valore minimo è `5242880` (5 MB). Se viene specificato un valore più basso, viene utilizzato `5242880`. Il valore massimo è `5368709120` (5 GB). Se viene specificato un valore più alto, viene utilizzato `5368709120`.<br />Se la crittografia lato client di EMRFS è disattivata e il committer ottimizzato Amazon S3 è disabilitato, questo valore controlla anche la dimensione massima di un file di dati che può aumentare finché EMRFS utilizza i caricamenti in più parti, anziché una richiesta `PutObject` per caricare il file. Per ulteriori informazioni, consulta  | 
| fs.s3n.ssl.enabled | true | Un tipo booleano che indica se utilizzare http o https.  | 
| fs.s3.buckets.create.enabled | false | Un tipo booleano che indica se è necessario creare un bucket in caso non esista. L'impostazione su false causa un'eccezione nelle operazioni CreateBucket. | 
| fs.s3.multipart.clean.enabled | false | Un tipo booleano che indica se abilitare il cleanup periodico in background dei caricamenti in più parti incompleti. | 
| fs.s3.multipart.clean.age.threshold | 604800 | Un tipo long che specifica la durata minima, in secondi, di un caricamento in più parti, prima che venga considerato idonea per il cleanup. Il valore predefinito è una settimana. | 
| fs.s3.multipart.clean.jitter.max | 10000 | Un numero intero che specifica il ritardo massimo, in secondi, nel jitter casuale aggiunto al ritardo fisso di 15 minuti prima di pianificare la fase successiva di cleanup. | 

### Disabilitazione dei caricamenti in più parti
<a name="emr-dev-multipart-upload"></a>

------
#### [ Console ]

**Per disabilitare i caricamenti in più parti con la console**

1. Accedi a e apri Console di gestione AWS la console Amazon EMR all'indirizzo. [https://console.aws.amazon.com/emr](https://console.aws.amazon.com/emr)

1. In **EMR on EC2** (EMR su EC2), nel riquadro di navigazione a sinistra, scegli **Clusters** (Cluster) e seleziona **Create cluster** (Crea cluster).

1. In **Software Settings** (Modifica delle impostazioni), inserisci la seguente configurazione: `classification=core-site,properties=[fs.s3n.multipart.uploads.enabled=false]`.

1. Scegli qualsiasi altra opzione applicabile al cluster. 

1. Per avviare il cluster, scegli **Create cluster** (Crea cluster).

------
#### [ CLI ]

**Per disabilitare il caricamento in più parti utilizzando il AWS CLI**

Questa procedura illustra come disabilitare il caricamento in più parti utilizzando la AWS CLI. Per disabilitare il caricamento in più parti, digitare il comando `create-cluster` con il parametri `--bootstrap-actions`. 

1. Crea un file, `myConfig.json`, con il seguente contenuto e salvalo nella stessa directory in cui esegui il comando:

   ```
   [
     {
       "Classification": "core-site",
       "Properties": {
         "fs.s3n.multipart.uploads.enabled": "false"
       }
     }
   ]
   ```

1. Digita il comando seguente e sostituisci {{myKey}} con il nome della coppia di chiavi EC2.
**Nota**  
I caratteri di continuazione della riga Linux (\\) sono inclusi per questioni di leggibilità. Possono essere rimossi o utilizzati nei comandi Linux. Per Windows, rimuovili o sostituiscili con un accento circonflesso (^).

   ```
   1. aws emr create-cluster --name "{{Test cluster}}" \
   2. --release-label {{emr-7.13.0}} --applications Name={{Hive}} Name={{Pig}} \
   3. --use-default-roles --ec2-attributes KeyName={{myKey}} --instance-type {{m5.xlarge}} \
   4. --instance-count {{3}} --configurations file://myConfig.json
   ```

------
#### [ API ]

**Disabilitazione dei caricamento in più parti con l'API**
+ Per informazioni sull'utilizzo dei caricamenti in più parti di Amazon S3 a livello di programmazione, consulta [Utilizzo dell'SDK AWS per Java per il caricamento in più parti](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMPDotJavaAPI.html) nella *Guida per l'utente di Amazon Simple Storage Service*.

  Per ulteriori informazioni sull' AWS SDK per Java, [AWS consulta SDK](https://aws.amazon.com/sdkforjava/) for Java.

------

## Best practice
<a name="emr-bucket-bestpractices"></a>

Di seguito sono riportate le raccomandazioni per l'utilizzo di bucket Amazon S3 con cluster EMR.

### Abilita il controllo delle versioni
<a name="emr-enable-versioning"></a>

La funzione Versioni multiple è una configurazione consigliata per il bucket Amazon S3. Abilitando la funzione Versioni multiple, si garantisce che anche se i dati vengono eliminati o sovrascritti involontariamente, possono essere ripristinati. Per ulteriori informazioni, consulta [Utilizzo del controllo delle versioni](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html) nella Guida per l'utente di Amazon Simple Storage Service.

### Eliminazione dei caricamenti in più parti non riusciti
<a name="emr-multipart-cleanup"></a>

Per impostazione predefinita, i componenti del cluster EMR utilizzano caricamenti multiparte tramite l'SDK for AWS Java con le API di Amazon S3 per scrivere file di log e inviare dati in uscita su Amazon S3. Per ulteriori informazioni sulla modifica delle proprietà relative a questa configurazione utilizzando Amazon EMR, consulta [Configurazione del caricamento in più parti per Amazon S3](#Config_Multipart). A volte il caricamento di un file di grandi dimensioni può risultare in un caricamento in più parti incompleto Amazon S3. Quando un caricamento in più parti non riesce a essere completato con successo, il caricamento in più parti in corso continua a occupare il bucket e comporta costi di storage. Per evitare lo storage eccessivo dei dati, consigliamo le seguenti opzioni:
+ Per i bucket utilizzati con Amazon EMR, utilizza una regola di configurazione del ciclo di vita in Amazon S3 per rimuovere i caricamenti in più parti incompleti tre giorni dopo la data di inizio del caricamento. Le regole di configurazione del ciclo di vita consentono di controllare la classe di storage e la durata degli oggetti. Per ulteriori informazioni, consulta [Gestione del ciclo di vita degli oggetti](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html) e [Interruzione dei caricamenti in più parti incompleti utilizzando una policy per il ciclo di vita del bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config).
+ Abilita la funzione di eliminazione in più parti di Amazon EMR impostando `fs.s3.multipart.clean.enabled` su `true` e l'ottimizzazione di altri parametri di eliminazione. Questa funzione è utile in caso di volume elevato, su larga scala e con cluster con tempi di attività limitati. In questo caso, il parametro `DaysAfterIntitiation` di una regola di configurazione del ciclo di vita potrebbe essere troppo lungo, anche se impostato sul valore minimo, causando picchi di archiviazione in Amazon S3. L'eliminazione multiparte di Amazon EMR consente un controllo più preciso. Per ulteriori informazioni, consulta [Configurazione del caricamento in più parti per Amazon S3](#Config_Multipart). 

### Gestione dei contrassegni di versione
<a name="w2aac28c11c17c11b7c11b9"></a>

Consigliamo di abilitare una regola di configurazione del ciclo di vita in Amazon S3 per rimuovere i contrassegni di eliminazione dell'oggetto scaduto per i bucket con versione utilizzati con Amazon EMR. Quando si elimina un oggetto in un bucket con versione, viene creato un contrassegno di eliminazione. Se tutte le versioni precedenti dell'oggetto scadono successivamente, nel bucket viene lasciato un contrassegno di eliminazione dell'oggetto scaduto. Sebbene non sia previsto alcun costo per questi contrassegni di eliminazione, la loro rimozione può migliorare le prestazioni delle richieste di LIST. Per ulteriori informazioni, consulta [Configurazione del ciclo di vita per un bucket con controllo delle versioni](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-configuration-bucket-with-versioning.html) nella Guida per l'utente di Amazon Simple Storage Service.

### Best practice sulle prestazioni
<a name="w2aac28c11c17c11b7c11c11"></a>

A seconda dei carichi di lavoro, tipi specifici di utilizzo dei cluster EMR e delle applicazioni su di essi possono portare a un elevato numero di richieste contro una bucket. Per maggiori informazioni, consulta [Considerazioni sulla percentuale di richieste e sulle prestazioni](https://docs.aws.amazon.com/AmazonS3/latest/userguide/request-rate-perf-considerations.html) nella *Guida per l'utente di Amazon Simple Storage Service*. 