Améliorations des performances S3fs ou alternative?

11

J'ai essayé d'utiliser s3fs sur un serveur EC2 mais il est vraiment lent. J'ai passé les 5 dernières heures à télécharger 100 Mo de petits fichiers.

Puis-je faire quelque chose pour améliorer les performances ou est-ce lié à S3fs? Sinon, quelle alternative pourrais-je utiliser?

MB.
la source
définir de petits fichiers, 1K? 500 octets? 1 Mo?
Thinice
environ ~ 200K ...
Mo.
En fonction de vos besoins de stockage, vous pouvez simplement utiliser EBS, sauf si vous avez besoin d'accéder à d'autres systèmes simultanément, auquel cas la configuration d'un nas virtuel avec EBS peut toujours être une meilleure option.
Tracker1

Réponses:

7

S3FS n'est peut-être pas le meilleur choix pour une grande quantité de fichiers plus petits. Les frais généraux avec S3FS sont également assez élevés. Je suggère d'utiliser quelque chose comme S3Curl

Vous pouvez même lancer des transferts parallèles. N'oubliez pas qu'il ne sera jamais rapide comme EBS / stockage local.

Si vous devez l'avoir comme stockage «montable», la seule alternative à S3FS que je connaisse est S3Backer ou s3ql

mince
la source
1
Je cherche quelque chose que je peux monter en tant que système de fichiers.
MB.
Des réflexions s3ql?
ewwhite
Je vais essayer S3Backer et S3Sql. Merci.
MB.
5 heures est vraiment lent pour ~ 500, 200 Ko de fichiers même avec S3FS. Quelque chose d'autre pourrait être pris en compte, je ne suis au courant d'aucun accordable S3FS qui pourrait aider
Thinice
6

Je viens de comparer les riof par rapport aux s3fs. Mon cas de test était un script bash relativement simple qui exécutait pngquant sur chaque .png trouvé. Sur un testbucket avec ~ 70 images dont ~ 20 où png (réparti sur beaucoup de sous-répertoires, ce qui ralentit les choses) les résultats où:

s3fs: 3m54
riofs: 15.9s

Donc, pour ce riof de test, c'est 15 fois plus rapide! La configuration a également été très simple, bien que les documents soient quelque peu laconiques.

En ce qui concerne le fait que le script prenait encore 15,9 secondes: ce n'est pas très efficace, également exécuter pngquant sur png est un processus intensif en processeur.

Milo de Vries
la source
Malheureusement, les riofs échouent avecAWS message: The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.
lrkwz
2

Il suffit d'ajouter des riofs au mélange. Je ne pouvais pas voir de référence pour l'instant mais il y a un problème / demande que n'importe qui peut faire.

f01
la source
2

Je viens de publier la v0.0.1 de https://github.com/kahing/goofys qui était en partie motivée par des problèmes de performances dans s3fs. L'accélération de la création de fichiers est de 3 à 6 fois et le temps jusqu'au premier octet est de 58 fois. Bienvenue!

khc
la source
2
À partir de 2019 - Goofys est le choix recommandé. Riotfs n'a pas été mis à jour depuis longtemps.
timofey.com
1

J'ai utilisé [1] et c'est très bon. C'est beaucoup de commandes et facilite l'accès à aws et s3.

  1. http://timkay.com/aws/
Amit
la source
1
Bienvenue dans Server Fault! Bien que cela puisse théoriquement répondre à la question, il serait préférable d'inclure ici les parties essentielles de la réponse et de fournir le lien de référence.
Scott Pack
1

J'ai comparé le s3fs avec les riofs et j'ai presque changé en raison de performances sensiblement meilleures. Le problème est que les riofs ne sont toujours pas mis à jour vers les signatures v4, ce qui signifie qu'il ne fonctionnera pas avec les compartiments s3 de Francfort ou de Chine. Selon le propriétaire, une mise à jour est en cours. Si vous n'utilisez pas Francfort ou la Chine, les riofs sont de loin une meilleure option.

Steve
la source
Ne fonctionne pas non plus depuis eu-central-1
lrkwz
1

C'est un peu vieux mais ça peut aider qui arrive ici.

J'utilise aws cli et son très bon fonctionnement (3 Mb / s)

pip install awscli --upgrade --user
nano ~/.bash_profile
export PATH="~/.local/bin:$PATH"
aws s3 sync /sourcedir/ s3://bucketname/destdir/
mariomol
la source