Quale è più veloce per l'accesso in lettura su EC2; unità locale o EBS?


11

Quale è più veloce per l'accesso in lettura su un'istanza EC2; l'unità "locale" o un volume EBS collegato?

Ho alcuni dati che devono essere mantenuti, quindi li ho inseriti in un volume EBS. Sto usando OpenSolaris, quindi questo volume è stato collegato come pool ZFS. Tuttavia, ho una grande porzione di spazio su disco EC2 che non verrà utilizzata, quindi sto considerando di riutilizzare questo come volume della cache ZFS, ma non voglio farlo se l'accesso al disco sarà più lento di quello del volume EBS in quanto avrebbe potenzialmente un effetto dannoso.

Risposte:


13

Solo per aggiungere un po 'al consenso che è più veloce EBS ...

Un punto importante da capire qui è che la velocità di archiviazione delle istanze è imprevedibile : Amazon non offre garanzie al riguardo.

Questa informazione proviene dal libro Cloud Application Architectures di George Reese (che sembra abbastanza buono da quello che ho scremato finora.) Include una tabella intitolata Confronto delle opzioni di archiviazione dei dati EC2 (p. 41); ecco un frammento di quella tabella (nel libro ci sono molte altre caratteristiche a confronto):

               S3              Instance          EBS

Speed          Low             Unpredictable     High
Reliability    Medium          High              High
Durability     Super high      Super low         High

Pertanto, a volte l'archiviazione delle istanze potrebbe superare EBS nell'accesso in lettura, ma se si desidera una velocità elevata costante , è necessario utilizzare EBS. Come dice Reese nel suo libro:

Un altro problema è l'imprevedibilità delle prestazioni nell'archiviazione dell'istanza. Potresti effettivamente pensare che dovrebbe essere più veloce delle altre opzioni, e talvolta lo è. A volte, tuttavia, è incredibilmente lento - più lento di un innesto NFS su una connessione Ethernet 10bT. EBS, d'altra parte, offre costantemente le prestazioni di una SAN su una connessione Ethernet GB.


4
Ho avuto l'esperienza esattamente opposta. Le prestazioni di EBS sono imprevedibili. Tutti i principali tempi di inattività di EC2 hanno coinvolto EBS. Lo storage delle istanze ha sempre avuto prestazioni prevedibili.
Joe Van Dyk,

3
Poiché è controintuitivo che il disco locale sia più lento (specialmente se si utilizzano SSD), sarebbe bello avere più informazioni di "qualcuno dice che è più veloce"
L. Blanc

8

Abbiamo incassato circa $ 1000 in spese AWS in un'esplorazione sistematica di questo e domande correlate e abbiamo pubblicato un'analisi approfondita .

Per letture casuali (piccole), abbiamo riscontrato che lo storage "locale" (istanza EC2) e EBS hanno prestazioni simili, ma lo storage locale ha una coda di latenza migliore.

Per letture sequenziali (in blocco), EBS è più veloce su m1.small, ma local è più veloce su m1.large. Non abbiamo confrontato direttamente locale con EBS su altri tipi di istanza, ma abbiamo riscontrato che l'aumento delle dimensioni dell'istanza ha un effetto molto maggiore sulle prestazioni del negozio locale rispetto alle prestazioni di EBS.

C'è anche una domanda di costo. Spostando l'I / O da EBS sul disco locale, ridurrete le commissioni AWS.


2

Se stai cercando le prestazioni del database in Amazon, potresti trovare utile questo articolo: http://www.mysqlperformanceblog.com/2009/08/06/ec2ebs-single-and-raid-volumes-io-bencmark/

L'atmosfera generale della mia ricerca (ho letto su questo per alcune settimane) è che EBS è l'opzione più veloce.


Ho sentito delle segnalazioni che dovresti scrivere sull'unità una volta, poiché la scrittura iniziale in una posizione ha un sovraccarico elevato. Inoltre, a volte puoi ottenere un controller EBS difettoso, quindi sarebbe meglio controllare la loro velocità prima di fare qualcosa di critico. Ho visto un numero limitato di unità con questo problema. Nacque quando stavo eseguendo un'istantanea di 4 unità da 500 GB, e 1 di esse impiegava 4-5 volte più a lungo, anche con gli stessi dati.
Flashman

1

Amazon ha affermato vagamente che EBS in genere supererà la partizione scratch "locale" su un'istanza EC2. So di aver sperimentato un throughput più elevato su un volume EBS per uso personale, ma non mi ero preoccupato di misurare la latenza.

Se sei curioso di conoscere le prestazioni in un uso particolare, la soluzione migliore è probabilmente quella di creare un'istanza di prova. So che lo farei.


1

Ho eseguito istanze MySQL su volumi EBS e sono rimasto soddisfatto delle loro prestazioni. Non ho nemmeno dati concreti su di esso, ma ha funzionato bene.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.