Salta al contenuto

Come posso migliorare la velocità di trasferimento quando copio dati tra il mio bucket Amazon S3 e la mia istanza Amazon EC2?

4 minuti di lettura
0

Desidero migliorare la velocità di trasferimento dei dati dalla mia istanza Amazon Elastic Compute Cloud (Amazon EC2) al mio bucket Amazon Simple Storage Service (Amazon S3).

Risoluzione

Nota: se ricevi errori quando esegui i comandi dell'Interfaccia della linea di comando AWS (AWS CLI), consulta Risoluzione degli errori per AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.

Utilizza reti avanzate per l'istanza EC2

Prerequisito: se utilizzi un Adattatore di rete avanzato (ENA), completa i prerequisiti dell'istanza per una rete avanzata. Se utilizzi l'interfaccia Intel 82599 VF, prepara l'istanza per una rete avanzata.

Rivedi le metriche dell'istanza con Amazon CloudWatch. Se il valore NetworkPacketsOut dell'istanza è maggiore del valore previsto, attiva una rete avanzata.

Utilizza carichi di lavoro paralleli per il trasferimento dei dati

Per migliorare il tempo necessario per completare il trasferimento dei dati, suddividi il trasferimento in più operazioni che si escludono a vicenda. Ad esempio, se utilizzi AWS CLI, esegui più comandi AWS CLI cp, mv o sync contemporaneamente.

Se distribuisci i dati su più prefissi, esegui più operazioni AWS CLI che eseguono sincronizzazioni separate contemporaneamente. Per istruzioni, consulta la sezione Esegui più operazioni in AWS CLI in Come posso migliorare le prestazioni di trasferimento dei dati quando utilizzo il comando sync di AWS CLI per Amazon S3?

Personalizza le configurazioni di caricamento in AWS CLI

Per velocizzare il trasferimento dei dati, personalizza i seguenti valori di configurazione di AWS CLI per Amazon S3:

  • Il valore multipart_chunksize imposta la dimensione di ogni parte che AWS CLI carica in un caricamento in più parti per un singolo file. Ottimizza questo valore per separare i file più grandi in parti più piccole per una maggiore velocità di caricamento.
    Nota: con un caricamento in più parti puoi caricare un singolo file in non più di 10.000 parti distinte. Assicurati che la dimensione impostata per il blocco sia equilibrata tenuto conto della dimensione del file da dividere in parti e il numero di parti.
  • Modifica il valore max_concurrent_requests in modo da aumentare il numero di richieste che puoi inviare ad Amazon S3 contemporaneamente. Il valore predefinito è 10. Dopo aver aumentato questo valore, puoi ricevere una risposta stagnante. Combina un valore max_concurrent_requests più elevato con carichi di lavoro paralleli per ottenere una migliore velocità di trasferimento complessiva. Per impostazione predefinita, AWS CLI supporta il multithreading.
    Nota: assicurati che il computer abbia risorse sufficienti per supportare il numero massimo di richieste concorrenti.

Utilizza un endpoint VPC per Amazon S3

Se l'istanza si trova nella stessa Regione AWS del bucket Amazon S3, utilizza un endpoint Amazon Virtual Private Cloud (Amazon VPC) gateway.

Puoi anche connetterti privatamente a un VPC senza un gateway Internet, un dispositivo NAT o una connessione VPN. Le istanze in un VPC non richiedono indirizzi IP pubblici per comunicare con il bucket Amazon S3. Quando utilizzi un endpoint Amazon VPC, il traffico di dati tra il VPC e Amazon S3 viene instradato sulla rete AWS.

Nota: gli endpoint Amazon VPC per Amazon S3 non supportano richieste tra diverse Regioni AWS.

Utilizza Accelerazione del trasferimento Amazon S3 tra Regioni geograficamente distanti

La velocità di trasferimento dei dati può aumentare quando l'istanza e il bucket Amazon S3 si trovano in Regioni geograficamente vicine. Se l'istanza e il bucket si trovano in Regioni geograficamente distanti, attiva Accelerazione del trasferimento Amazon S3. Prima di attivare Accelerazione del trasferimento Amazon S3, consulta i prezzi di Amazon S3.

Per determinare se Accelerazione del trasferimento migliora la velocità di trasferimento dei dati per l'istanza, utilizza lo strumento di confronto della velocità di Accelerazione del trasferimento Amazon S3.

Nota: quando utilizzi Accelerazione del trasferimento S3, non puoi utilizzare la chiamata API CopyObject tra le Regioni.

Aggiorna il tipo di istanza Amazon EC2

L'utilizzo elevato della CPU dell'istanza Amazon EC2 può influire sulla velocità di trasferimento dei dati. Puoi modificare l'istanza scegliendo un tipo di istanza che offra maggiori prestazioni di memoria e rete.

Nota: per garantire una connessione di rete affidabile tra l'istanza Amazon EC2 e Amazon S3, scegli un tipo di istanza con almeno 10 GiBps di connettività.

Utilizza trasferimenti in blocchi

Se trasferisci file di grandi dimensioni, utilizza caricamenti in più parti e richieste HTTP in più parti a intervalli.

Informazioni correlate

Best practice e modelli di progettazione: ottimizzazione delle prestazioni di Amazon S3

AWS UFFICIALEAggiornata 10 mesi fa