Hadoop - копирование набора данных из внешнего в HDFS напрямую

Я пытаюсь использовать distcp, чтобы скопировать сжатый файл размером ~500 МБ в HDFS, но ошибка времени ожидания подключения:

hadoop distcp  hftp://s3.amazonaws.com/path/to/file.gz hdfs://namenode/some/hdfs/dir

Вот полная ошибка:

java.net.SocketTimeoutException: истекло время ожидания соединения на java.net.PlainSocketImpl.socketConnect(собственный метод) на java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) на java.net.AbstractPlainSocketImpljj.) в java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) в java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) в java.net.Socket.connect(Socket.java:589) в sun.net.NetworkClient.doConnect(NetworkClient.java:175) на sun.net.www.http.HttpClient.openServer(HttpClient.java:432) на sun.net.www.http.HttpClient.openServer(HttpClient.java:527) sun.net.www.http.HttpClient.(HttpClient.java:211) на sun.net.www.http.HttpClient.New(HttpClient.java:308) на sun.net.www.http.HttpClient.New(HttpClient.java:326) по адресу sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1202) по адресу sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java: at:: N et.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1032) в sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:966) в org.apache.hadoop.hdfs.HftpFileSystem.openConnection(HftpFileSystem.java:328) по адресу org.apache.hadoop.hdfs.web.HftpFileSystem$LsParser.fetchList(HftpFileSystem.java:461) по адресу org.apache.hadoop.hdfsweat.ft.Life.System.Hat HftpFileSystem.java:476) в org.apache.hadoop.hdfs.web.HftpFileSystem.getFileStatus(HftpFileSystem.java:505) в org.apache.hadoop.fs.Globber.getFileStatus(Globber.java:64) в org.hadoop.fs.Globber.doGlob(Globber.java:272) в org.apache.hadoop.fs.Globber.glob(Globber.java:151) в org.apache.hadoop.fs.FileSystem.globStatus(FileSystem.java):1715) в org.apache.hadoop.tools.GlobbedCopyListing.doBuildListing(GlobbedCopyListing.java:77) в org.apache.hadoop.tools.CopyListing.buildListing(CopyListing.java:86) в org.apache.hadoop.tools.DistCp.createInputFileListing(DistCp.java:429) в организации.apache.hadoop.tools.DistCp.prepareFileListing(DistCp.java:91) в org.apache.hadoop.tools.DistCp.execute(DistCp.java:181) в org.apache.hadoop.tools.DistCp.run(DistCp.java:143) в org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) в org.apache.hadoop.tools.DistCp.main(DistCp.java:493)

Как правильно копировать такие большие файлы в HDFS? Я использую CDH 5.14.

Спасибо!

1 ответ

Пожалуйста, используйте это.

hadoop distcp s3a: // hwdev-examples-ирландия / наборы данных /tmp/datasets2

Другие вопросы по тегам