Передача GCS в S3 - улучшение скорости - PullRequest
0 голосов
/ 26 ноября 2018
  • Мы выполняем еженедельный перевод из GCS в S3, используя команду gsutil ниже.5000 сжатых объектов, ~ 82 МБ каждый - общий размер ~ 380 ГБ.Он экспортирует данные, которые будут использоваться Redshift, если это имеет какое-либо значение
  • Переход такого же типа из предварительно установленного кластера Hadoop в S3 занял менее 1 часа.Теперь с gsutil, это занимает 4-5 часов.
  • Мне известно, что gsutil загружает файлы из GCS, а затем загружает их в S3, что добавляет некоторые издержки.Итак, надеясь на более высокие скорости, я попытался выполнить gsutil на Compute Engine в географическом расположении сегментов S3 и GCS, но он был одинаково медленным
  • Я играл с параметрами parallel_process_count и parallel_thread_count, но этобез разницы

    gsutil -m rsync -r -n GCS_DIR S3_DIR
    

Мои вопросы:

  • Могу ли я еще что-нибудь сделать, чтобы ускорить его?
  • Какие комбинации вы можете попробовать использовать для61
  • Есть ли способ узнать, какая стадия создает узкое место (если есть)?Т.е. это этап загрузки или скачивания?
  • Глядя на логи, означает ли ниже, что пропускная способность составляет 0% в течение определенного периода времени?

    Copying gcs://**s3.000000004972.gz 
    [Content-Type=application/octet-stream]... 
    [4.8k/5.0k files][367.4 GiB/381.6 GiB]  96% Done     0.0 B/s     
    

Заранее спасибо:)

1 Ответ

0 голосов
/ 28 ноября 2018

Оптимальные значения для parallel_process_count и parallel_thread_count зависят от скорости сети, количества процессоров и доступной памяти - рекомендуется , чтобы вы немного поэкспериментировали, чтобы найти оптимальные значения.

Вы можете попробоватьиспользование perfdiag для получения дополнительной информации о корзине на стороне Google Cloud - это команда, которая запускает набор диагностических тестов для данной корзины.

Вывод, который вы отправили, указывает, что нетзагрузка происходит в течение некоторого периода времени, возможно, из-за того, что gsutil разделяет загрузку.

В качестве окончательной рекомендации по ускорению ваших переводов в Amazon вы можете попробовать использовать Apache Beam / Dataflow .

...