← Blog
September 1, 2025

Mova big data rapidamente: rclone + checksums (padrões práticos)

Mover conjuntos de dados é metade do trabalho. Faça isso uma vez, faça da maneira certa. Aqui está uma maneira limpa e reproduzível de obter grandes volumes de dados em e fora de seu serviço de computação de GPU com integridade cheques e transferências retomáveis.

O que isso cobre

  • Instalar e configurar rclone em um modelo pronto para CUDA
  • Copiar de/para Compatível com S3 armazenamento e SSH/SFTP servidores
  • Faça e verifique SHA‑256 manifesta
  • Retomar com segurança após as desconexões
  • Escolha tamanhos de pedaços, paralelismo, e compactação que importam

Opinião: uso rclone para armazenamento em nuvem/objetos; use rsync somente para cópias LAN/SSH quando ambas as extremidades são POSIX e você precisa de links fixos/permissões.

Start in seconds with the fastest, most affordable cloud GPU clusters.

Launch an instance in under a minute. Enjoy flexible pricing, powerful hardware, and 24/7 support. Scale as you grow—no long-term commitment needed.

Try Compute now

1) Instale o rclone (uma vez por modelo)

Dentro do seu contêiner em execução:

curl -fSSL https://rclone.org/install.sh | sudo bash
versão rclone

Mantenha o rclone em seu modelo personalizado para que você não repita isso.

2) Configurar um controle remoto (S3 ou SSH)

Inicie a configuração interativa:

configuração rclone

Adicione um controle remoto:

  • S3 (AWS, MiniO, Wasabi etc.): escolha s3, conjunto fornecedor, regiãoe chaves de acesso.
  • SFTP/SSH: escolha sftp, defina o host, a porta e o caminho da chave.

Não transforme segredos em imagens. Armazene as chaves de acesso na configuração do rclone ou defina env vars em tempo de execução.

Somente para ambiente (sem configuração interativa) — exemplo do S3

exportar RCLONE_CONFIG_MYREMOTE_TYPE=S3
exportar RCLONE_CONFIG_MYREMOTE_PROVIDER=aws
exportar RCLONE_CONFIG_MYREMOTE_ACCESS_KEY_ID=XXXX
exportar RCLONE_CONFIG_MYREMOTE_SECRET_ACCESS_KEY=YYYY
# opcional: endpoint personalizado
# exportar RClone_Config_MyRemote_Endpoint= https://s3.my-org.example

3) Copie os dados (e retome se eles quebrarem)

Para instância (S3 → NVMe)

# puxa um conjunto de dados para baixo até o local /data
mkdir -p /dados
rclone copy myRemote:datasets/projectA/data\
--progress --transfers 16 --checkers 8 --fast-list\
--s3-chunk-size 64M --s3-upload-simultaneidade 6

Da instância (NVMe → S3)

rclone copy /data/results MyRemote:results/projectA\
--progress --transfers 16 --checkers 8 --fast-list\
--s3-chunk-size 64M --s3-upload-simultaneidade 6

  • Retomável: rclone retoma as transferências interrompidas automaticamente.
  • Ajustando: comece com as configurações acima; aumente --transferências suavemente até que a largura de banda ou o IOPS se saturem. Objetos grandes como .tar.zst prefiro maior --tamanho do bloco s3 (128 M +).

Exemplo de SSH/SFTP

rclone copy /data/results sftpremote: /srv/results/projectA\
--progress --transfers 8 --checkers 4

4) Integridade: o SHA‑256 é um manifesto em que você pode confiar

Faça um manifesto no fonte, copiar dados e manifeste e, em seguida, verifique no destino.

Criar manifesto na fonte

cd /dados/resultados
rclone hashsum SHA-256. -> SHA256SUMS.txt

Copiar dados + manifesto

rclone copy /data/results myRemote:results/projecta --progress
rclone copy /data/results/SHA256SUMS.txt MyRemote:results/projectA

Verificar no destino (baixado)

# Opção A: verifique após o download novamente em outra máquina
rclone copy myRemote:results/projectA. /Projeto A
projeto cd A & sha256sum -c SHA256SUMS.txt

Verificação no local (listagem remota de hash)

# Se o controle remoto expõe o SHA-256/MD5, liste os hashes remotos e compare
rclone hashsum SHA-256 myRemote:results/projectA > REMOTE_SHA256.txt
# diff REMOTE_SHA256.txt com seu manifesto local (os caminhos devem corresponder)

Se o armazenamento de objetos não expor hashes fortes por peça (comum no S3 multipart), confie no fluxo de trabalho manifesto: recompute localmente após o download e compare.

5) Segurança de sincronização versus cópia e exclusão

  • copiar somente adiciona/atualiza arquivos no destino.
  • sincronizar faz o destino partida a fonte (incluindo exclusões). Use com cuidado:

rclone sync /data/results MyRemote:results/projecta --progress --delete-before

Adicionar --execução a seco primeiro a visualizar as exclusões.

6) Menos arquivos = transferências mais rápidas (agrupe de forma inteligente)

Milhões de pequenos arquivos ficam paralisados nos metadados. Agrupe logicamente e depois comprima.

# pacote e compressão (vários núcleos)
cd /data/run123
tar -I 'zstd -T0 -19' -cf run123.tar.zst.
# carregue o arquivo único + um pequeno arquivo MANIFEST listando o conteúdo
cópia rclone run123.tar.zst myremote:runs/ --progress

Prefiro std para velocidade; use porcos para compatibilidade com gzip. Mantenha os pacotes abaixo de algumas dezenas de GB se precisar de reexecuções parciais fáceis.

7) Mova dados entre baldes ou projetos

Você pode copiar remoto→remoto sem acessar a instância:

cópia rclone awsa:bucketa/prefixo gsb:bucketb/prefix --progress --transfers 32 --checkers 16

Funciona em todos os provedores se os dois controles remotos estiverem configurados.

8) Botões de largura de banda e confiabilidade

  • --bwlimit 100M para limitar a largura de banda se você compartilhar um link.
  • --retries 8 --low-level-retries 20 para caminhos escamosos.
  • --timeout 2m --contimeout 10s para ajustar endpoints lentos.
  • --soma de verificação pede que o rclone use hashes quando o controle remoto os suporta.

Registre o comando exato em seu cartão de corrida.

9) rsync quando ambas as extremidades são POSIX

Para SSH na LAN ou em uma WAN bem emparelhada, rsync é ótimo:

rsync -AVhP --delete --partial --partial-dir=.rsync-partial\
/data/results user @host: /srv/results/projectA

--parcial vamos continuar os currículos. Ainda escrevo um Manifesto SHA‑256 e verifique.

10) Noções básicas de segurança

  • Mantenha as chaves de acesso ativadas configuração rclone ou variáveis de ambiente, não em imagens.
  • Monte segredos em tempo de execução; não os confirme.
  • Prefiro VPN/SSH para abrir baldes. Se for público, restrinja por IP e expire URLs pré-assinados rapidamente.

Trecho de métodos (copiar e colar)

transferências:
ferramenta: “rclone 1.xx”
fonte:
tipo: “local | s3 | sftp | gcs | azure | minio”
URL: “<path or remote:bucket/prefix>”
destino:
tipo: “local | s3 | sftp | gcs | azure | minio”
URL: “<path or remote:bucket/prefix>”
comando: |
rclone copy <src><dst>--transfers 16 --checkers 8 --s3-chunk-size 64M --progress
manifesto:
Slogan: “SHA-256"
arquivo: "SHA256SUMS.txt”
verificado: “sim | não”
notas: “tamanho do grupo de linhas, compressão, qualquer tentação/tempo limite”

Leitura relacionada

Experimente o Compute hoje

Inicie uma instância de GPU com um modelo pronto para CUDA (por exemplo, Ubuntu 24.04 LTS/CUDA 12.6) ou sua própria imagem GROMACS. Aproveite o faturamento flexível por segundo com modelos personalizados e a capacidade de iniciar, interromper e retomar suas sessões a qualquer momento. Não tem certeza sobre os requisitos do FP64? Entre em contato com o suporte para ajudá-lo a selecionar o perfil de hardware ideal para suas necessidades computacionais.