Моя работа в Hadoop генерирует большое количество файлов в HDFS, и я хочу написать отдельный поток, который будет копировать эти файлы из HDFS в S3.
Может ли кто-нибудь указать мне на любой java API, который его обрабатывает.
Спасибо
Моя работа в Hadoop генерирует большое количество файлов в HDFS, и я хочу написать отдельный поток, который будет копировать эти файлы из HDFS в S3.
Может ли кто-нибудь указать мне на любой java API, который его обрабатывает.
Спасибо
«Поддержка блочной файловой системы S3 была добавлена в инструмент ${HADOOP_HOME}/bin/hadoop distcp в Hadoop 0.11.0 (см. HADOOP-862). Инструмент distcp настраивает задание MapReduce для запуска копии. Используя distcp, кластер из многих членов может быстро копировать большое количество данных.Количество задач карты рассчитывается путем подсчета количества файлов в источнике: т. е. каждая задача карты отвечает за копирование одного файла.Источник и цель могут относиться к разным типам файловых систем. Например, источник может ссылаться на локальную файловую систему или hdfs с S3 в качестве цели.
Ознакомьтесь с Запуском массовых копий в S3 и из него здесь http://wiki.apache.org/hadoop/AmazonS3< /а>
distcp
отлично работает для копирования файлов между hdfs и s3, пока вы не достигнете предела PUT в 5 ГБ на S3. Hadoop 2.4 исправляет это, но если у вас более ранняя версия, имейте в виду.
- person Steve Armstrong; 08.04.2015