Назад | Перейти на главную страницу

Загрузка 200 ГБ файлов в S3

Как лучше всего загрузить файлы tar.gz объемом 200 ГБ на S3 в Linux? В ходе исследования я обнаружил, что ограничение S3 на объекты было увеличено до 5 ТБ, и я узнал о механизме многокомпонентной загрузки для ускорения загрузки. Я нашел Boto скрипта Python, который может помочь в этом. Может ли кто-нибудь пролить свет на эту тему?

Не загружайте это. Опубликуйте это. http://aws.amazon.com/importexport/

Amazon предлагает услугу, при которой вы отправляете им переносные носители, а они загружают данные для вас по своей быстрой магистрали.

Если вы действительно одержимы этим самостоятельно, возьмите копию S3cmd и делай s3cmd sync.

«Никогда не недооценивайте пропускную способность универсала, полного кассет, мчащегося по шоссе». - Эндрю С. Таненбаум

Изменить: если вы действительно хотите иметь возможность фрагментировать загрузку файла, я предлагаю вам сделать следующее.

  1. Получите экземпляр AWS EC2 с временным хранилищем, достаточным для хранения файлов, которые вы хотите загрузить.
  2. Используйте GNU Split для разделения файлов на более мелкие части.
  3. Загрузите фрагменты во временный экземпляр EC2.
  4. Снова соберите куски с помощью опции разделения для повторной сборки.
  5. Загрузите блоки в S3 из EC2 (невероятно быстро!)
  6. Выключите экземпляр EC2, но держите его под рукой.

Спасибо за ваш ответ и варианты, Том. Мне удалось добиться загрузки 20 ГБ в s3 с помощью многопользовательской загрузки. Для загрузки мне потребовался python 2.5> + библиотека boto + s3_mulitpart python script. Мои ссылки где

  1. http://code.google.com/p/boto/ - boto (используется 2.1.1)
  2. http://www.elastician.com/2010/12/s3-multipart-upload-in-boto.html : загрузка нескольких частей с помощью бото.
  3. http://bcbio.wordpress.com/2011/04/10/parallel-upload-to-amazon-s3-with-python-boto-and-multiprocessing/ : параллельная загрузка в скрипт Amazon S3

Надеюсь, это будет полезно.

Прем

Разделите файлы tar.gz на более мелкие части и отслеживайте их локальные и удаленные суммы MD5. Затем вы можете просто повторно загрузить меньшую часть, если что-то пойдет не так.