Как загрузить большие файлы в S3 по нестабильному соединению?

8

У меня есть куча файлов (от 500 МБ до 7 ГБ), которые мне нужно загрузить в корзину S3. Мое соединение очень слабое.

Я попытался загрузить файл размером 500 МБ через, s3cmdно время ожидания истекло после того, как было выполнено 91% (что заняло 16 часов)

Я пытался с CyberDuck, но то же самое произошло. Он потерпел неудачу примерно через 20%, и когда я попытался повторить передачу, он начался заново с самого начала. Предполагается, что CyberDuck будет иметь поддержку нескольких частей, но я думаю, что нет ...

Я мог бы разбить файлы на более мелкие файлы, например: Как разделить ZIP-файл на несколько сегментов? , но я бы предпочел нет, если это не был мой единственный вариант. Какая хорошая программа, которую я могу использовать, которая позволит мне загружать большие файлы в S3 с поддержкой возобновления?

user2254
источник

Ответы:

6

Я только что попробовал использовать s3tools (s3cmd-1.5.0-rc1). Получил этот совет из их FAQ http://s3tools.org/kb/item13.htm . Увидеть ниже.

Поддерживает ли s3cmd многочастную загрузку?

Да, последняя версия s3cmd поддерживает многоэтапную загрузку Amazon S3.

Многокомпонентная загрузка автоматически используется, когда размер загружаемого файла превышает 15 МБ. В этом случае файл разбивается на несколько частей, каждая из которых имеет размер 15 МБ (последняя часть может быть меньше). Каждая часть затем загружается отдельно и затем восстанавливается в месте назначения, когда передача завершена.

С помощью этой новой функции, если загрузка части не удалась, ее можно перезапустить, не затрагивая другие уже загруженные детали.

В s3cmd есть две опции, связанные с многочастной загрузкой. Они есть:

--disable-многочастному

Отключить многочастную загрузку для всех файлов

а также

--multipart-размер куска-MB = РАЗМЕР

Размер каждого куска многочастной загрузки. Файлы, размер которых больше, чем SIZE, автоматически загружаются как многопоточные-составные, файлы меньшего размера загружаются традиционным способом. Размер в мегабайтах, размер чанка по умолчанию 15 МБ, минимально допустимый размер чанка 5 МБ, максимум 5 ГБ.

Поэтому, когда я загружаю, я выбираю наименьший размер куска. Вы должны увидеть разделение и возобновление загрузки ниже.

$ s3cmd put --multipart-chunk-size-mb=5 some_video.mp4 s3://some_bucket/

some_video.mp4 -> s3://some_bucket/some_video.mp4  [part 1 of 52, 5MB]
 5242880 of 5242880   100% in  164s    31.08 kB/s  done
some_video.mp4 -> s3://some_bucket/some_video.mp4  [part 2 of 52, 5MB]
 5242880 of 5242880   100% in  193s    26.46 kB/s  done
some_video.mp4 -> s3://some_bucket/some_video.mp4  [part 3 of 52, 5MB]
 2023424 of 5242880    38% in  135s    14.59 kB/s^CERROR: 
some_video.mp4' part 3 failed. Use
  /usr/local/bin/s3cmd abortmp s3://some_bucket/some_video.mp4 XXX_SOME_HASH_XXX
to abort the upload, or
  /usr/local/bin/s3cmd --upload-id XXX_SOME_HASH_XXX put ...
to continue the upload.
See ya!

Затем я возобновляю.

/usr/local/bin/s3cmd --upload-id XXX_SOME_HASH_XXX put --multipart-chunk-size-mb=5 some_video.mp4 s3://some_bucket/
f01
источник
2

Я верю в Cyberduck в окне передач, вы можете щелкнуть правой кнопкой мыши и выбрать резюме.

Если это не сработает, Cloudberry поддерживает возобновление загрузки

Эрни
источник
По какой-то причине в Cyberduck мое резюме не работает для S3 multi-part. Есть намеки?
f01
1

Вы можете использовать FileZilla Pro для передачи файлов в / из корзины S3. FileZilla Pro поддерживает многоэтапную загрузку и в случае сбоя возобновит передачу.

Для записей это имеет много других функций: поддержка больших файлов, массовые передачи, фильтры, сравнение каталогов, удаленный поиск файлов, перетаскивание, настройка ограничений скорости.

Я являюсь членом команды FileZilla Pro.

Узнайте больше на https://filezillapro.com и на https://youtube.com/c/FileZillaPro

josuegomes
источник
Обратите внимание, что если вы каким-либо образом связаны с продуктом, вы должны указать это в своем ответе.
конфетти
@confetti, извини, я этого не знал. Я не мог найти ничего конкретного в помощи или в кодексе поведения. Я действительно предполагал, что это было запрещено. Добавил информацию.
josuegomes
Нет проблем, я не могу найти его в тексте справки, так что, возможно, это то, что моды должны добавить, но это определенно разрешено! В целом это может быть даже лучше, так как люди знают, что они могут спросить что-то специфическое для программного обеспечения в комментариях и получить своего рода «официальный» ответ. :)
конфетти