Я пытаюсь переместить данные с HDFS на S3, используя distcp
. Задача distcp
кажется успешной, но на S3 файлы создаются неправильно. Существует два вопроса:Проблемы с Hadoop distcp от HDFS до Amazon S3
- Имена файлов и пути не реплицируются. Все файлы заканчиваются как
block_<some number>
в корне ковша. - Он создает множество дополнительных файлов на S3 с некоторыми метаданными и журналами.
Не удалось найти документацию/примеры для этого. Что мне не хватает? Как я могу отлаживать?
Вот еще некоторые детали:
$ hadoop version
Hadoop 0.20.2-cdh3u0
Subversion -r
Compiled by diego on Sun May 1 15:42:11 PDT 2011
From source with checksum
hadoop fs –ls hdfs://hadoopmaster/data/paramesh/
…<bunch of files>…
hadoop distcp hdfs://hadoopmaster/data/paramesh/ s3://<id>:<key>@paramesh-test/
$ ./s3cmd-1.1.0-beta3/s3cmd ls s3://paramesh-test
DIR s3://paramesh-test//
DIR s3://paramesh-test/test/
2012-05-10 02:20 0 s3://paramesh-test/block_-1067032400066050484
2012-05-10 02:20 8953 s3://paramesh-test/block_-183772151151054731
2012-05-10 02:20 11209 s3://paramesh-test/block_-2049242382445148749
2012-05-10 01:40 1916 s3://paramesh-test/block_-5404926129840434651
2012-05-10 01:40 8953 s3://paramesh-test/block_-6515202635859543492
2012-05-10 02:20 48051 s3://paramesh-test/block_1132982570595970987
2012-05-10 01:40 48052 s3://paramesh-test/block_3632190765594848890
2012-05-10 02:20 1160 s3://paramesh-test/block_363439138801598558
2012-05-10 01:40 1160 s3://paramesh-test/block_3786390805575657892
2012-05-10 01:40 11876 s3://paramesh-test/block_4393980661686993969
Обратите внимание, что если использовать AWS EMR, s3n и s3, по-видимому, указывают на один и тот же путь (только при использовании EMR AWS - я знаю, автор не упоминал, но полагал, что другие могут запутаться). source: http://docs.amazonwebservices.com/ElasticMapReduce/latest/DeveloperGuide/FileSystemConfig.html –
Обычно hdfs является абсолютным путем, начиная с косой черты: hdfs: /// file/1 – ramn
А что, если файл был более 5 ГБ? Так как s3n ограничено 5 ГБ в качестве собственной файловой системы. S3 // для файлов размером более 5 ГБ, хотя он не позволит вам использовать его с другими приложениями. Я прав, или есть способ, например, сделать внешнюю таблицу из файла размером более 5 ГБ на S3? Шахта работает, если это s3n, и она меньше 5 ГБ, иначе это дает мне странный результат. – Maziyar