Melhorias no desempenho do S3fs ou alternativa?


11

Eu tenho tentado usar s3fs em um servidor EC2, mas é muito lento. Passei as últimas 5 horas carregando 100 MB de arquivos pequenos.

Existe algo que eu possa fazer para melhorar o desempenho ou algo relacionado ao S3fs? Caso contrário, qual alternativa eu ​​poderia usar?


definir arquivos pequenos, 1K? 500 bytes? 1MB?
#

cerca de ~ 200K ...
MB.

Dependendo das necessidades de armazenamento, convém usar o EBS, a menos que precise acessar de outros sistemas simultaneamente; nesse caso, a configuração de um NAS virtual com o EBS ainda pode ser uma opção melhor.
precisa

Respostas:


7

O S3FS pode não ser a melhor opção para uma grande quantidade de arquivos menores. A sobrecarga do S3FS também é bastante alta. Eu sugiro usar algo como S3Curl

Você pode até obter transferências paralelas. Lembre-se de que nunca será rápido como o EBS / armazenamento local.

Se você precisar tê-lo como um armazenamento 'montável', as únicas alternativas ao S3FS que eu conheço são o S3Backer ou o s3ql


1
Estou procurando por algo que possa montar como um sistema de arquivos.
MB.

Alguma idéia s3ql?
ewwhite

Vou tentar o S3Backer e o S3Sql. Obrigado.
MB.

5 horas são realmente lentas para ~ 500, 200 KB de arquivos, mesmo com o S3FS. Algo mais poderia ser factoring, eu não estou ciente de qualquer sintonizável S3FS que iria ajudar
thinice

6

Acabei de comparar os riofs em comparação com o s3fs. Meu caso de teste foi um script bash relativamente simples que executava pngquant em cada arquivo .png encontrado. Em um testbucket com ~ 70 imagens das quais ~ 20 em que png (espalhadas por muitos subdiretórios, o que provavelmente torna as coisas mais lentas), os resultados são os seguintes:

s3fs: 3m54
riofs: 15.9s

Portanto, para este teste, os riofs são ~ 15x mais rápidos! A instalação também foi muito direta, embora os documentos sejam um pouco concisos.

Em relação ao fato de o script ainda ter 15,9 anos: não é muito eficiente, também a execução de pngquant em png é um processo intensivo de CPU.


Infelizmente riofs falha comAWS message: The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.
lrkwz


2

Acabei de lançar a v0.0.1 de https://github.com/kahing/goofys, que foi parcialmente motivada por problemas de desempenho no s3fs. A velocidade de criação do arquivo é de 3-6x e o tempo do primeiro byte é de 58x. Feedback bem-vindo!


2
A partir de 2019 - Goofys é a escolha recomendada. O Riotfs não é atualizado há um tempo.
timofey.com

1

Eu usei [1] e é muito bom. É um monte de comandos e facilita o acesso a aws e s3.

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

1
Bem-vindo à falha do servidor! Embora isso possa teoricamente responder à pergunta, seria preferível incluir aqui as partes essenciais da resposta e fornecer o link para referência.
Scott Pack

1

Comparei s3fs com riofs e quase mudei por causa do desempenho visivelmente melhor. O problema é que o riofs ainda não é atualizado para assinaturas v4, o que significa que não funcionará com os buckets de Frankfurt ou China s3. Segundo o proprietário, uma atualização está a caminho. Se você não usa Frankfurt ou China, o riofs é uma opção melhor.



1

Isso é meio velho, mas pode ajudar quem chega aqui.

Estou usando o aws cli e está funcionando muito bem (3 Mb / s)

pip install awscli --upgrade --user
nano ~/.bash_profile
export PATH="~/.local/bin:$PATH"
aws s3 sync /sourcedir/ s3://bucketname/destdir/
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.