S3fs miglioramenti delle prestazioni o alternativa?


11

Ho provato a usare s3fs su un server EC2 ma è molto lento. Ho trascorso le ultime 5 ore a caricare 100 MB di file di piccole dimensioni.

C'è qualcosa che posso fare per migliorare le prestazioni o è qualcosa legato a S3fs? In caso contrario, quale alternativa potrei usare?


definire piccoli file, 1K? 500bytes? 1MB?
thinice

circa ~ 200K ...
MB.

A seconda delle esigenze di archiviazione, potresti voler utilizzare EBS, a meno che tu non abbia bisogno dell'accesso da altri sistemi contemporaneamente, nel qual caso la configurazione di un nas virtuale con EBS potrebbe comunque essere un'opzione migliore.
Tracker 1

Risposte:


7

S3FS potrebbe non essere la scelta migliore per una grande quantità di file più piccoli. Anche l'overhead con S3FS è piuttosto elevato. Suggerirei di usare qualcosa come S3Curl

Puoi persino ottenere trasferimenti paralleli in corso. Basta ricordare che non sarà mai veloce come EBS / archiviazione locale.

Se è necessario averlo come memoria "montabile", le uniche alternative a S3FS che conosco sono S3Backer o s3ql


1
Sto cercando qualcosa che posso montare come filesystem.
MB.

Qualche idea su s3ql?
ewwhite,

Proverò S3Backer e S3Sql. Grazie.
MB.

5 ore sono davvero lente per ~ 500, 200 KB di file anche con S3FS. Qualcos'altro potrebbe essere factoring, non sono a conoscenza di alcun parametro sintonizzabile S3FS che possa aiutare
thinice

6

Ho appena confrontato riofs rispetto a s3fs. Il mio caso di test era uno script bash relativamente semplice che correva pngquant su ogni .png trovato. Su un testbucket con ~ 70 immagini di cui ~ 20 dove png (distribuito su molte sottodirectory, che probabilmente rallenta le cose) i risultati in cui:

s3fs: 3m54
riofs: 15.9s

Quindi per questo test riofs è ~ 15 volte più veloce! Anche l'installazione è stata molto semplice, sebbene i documenti siano piuttosto concisi.

Per quanto riguarda il fatto che lo script richiedesse ancora 15.9s: non è molto efficiente, anche eseguire pngquant su png è un processo ad alta intensità di CPU.


Sfortunatamente i riofs falliscono conAWS message: The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.
lrkwz il


2

Ho appena rilasciato la v0.0.1 di https://github.com/kahing/goofys che è stata in parte motivata da problemi di prestazioni in s3fs. La velocità di creazione del file è 3-6x e il tempo al primo byte è 58x. Feedback di benvenuto!


2
A partire dal 2019 - Goofys è la scelta consigliata. Riotfs non è stato aggiornato da un po '.
timofey.com

1

Ho usato [1] ed è molto buono. Ha molti comandi e rende molto più facile l'accesso a aws e s3.

  1. http://timkay.com/aws/

1
Benvenuti in Server Fault! Mentre questo può teoricamente rispondere alla domanda, sarebbe preferibile includere le parti essenziali del risposta qui, e fornire il link di riferimento.
Scott Pack

1

Ho confrontato s3fs con riofs e sono quasi passato a prestazioni notevolmente migliori. Il problema è che riofs non è ancora aggiornato alle firme v4, il che significa che non funzionerà con i secchi s3 di Francoforte o della Cina. Secondo il proprietario, è in arrivo un aggiornamento. Se non usi Francoforte o la Cina, riofs è sicuramente un'opzione migliore.


Non funziona neanche da eu-central-1
lrkwz,

1

Questo è un po 'vecchio ma può aiutare chi arriva qui.

Sto usando aws cli e funziona molto bene (3 Mb / s)

pip install awscli --upgrade --user
nano ~/.bash_profile
export PATH="~/.local/bin:$PATH"
aws s3 sync /sourcedir/ s3://bucketname/destdir/
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.