2

hadoopバージョン2.0.0およびCDH4にはSFTPファイルシステムがありますか?私はhadoopがFTPファイルシステムをサポートしていることを知っています。sftpに似たものはありますか?中小企業向けに提出されたパッチを見たことがありますが、それらを理解することはできませんでした。

4

3 に答える 3

3

hadoopdistcpの使用を検討してください。

こちらを確認してください。それは次のようになります:

hadoop distcp
  -D fs.sftp.credfile=/user/john/credstore/private/mycreds.prop
  sftp://myHost.ibm.com/home/biadmin/myFile/part1
  hdfs:///user/john/myfiles
于 2014-08-13T21:24:38.950 に答える
0

いくつかの調査の結果、現在、のために書かれhadoopたものがないことがわかりました。したがって、SFTPチャネルを使用してデータを読み取りたい場合は、(非常に大きな問題であり、多くのクラスとメソッドを拡張およびオーバーライドします)を作成する必要があります。パッチはすでに開発されていますが、まだhadoopに統合されていません。から読み取るカスタマイズを取得しますが、これもで実装されていませんFileSystemSFTPSFTP FileSystemInputFormatstreamshadoop.

于 2012-12-31T12:59:54.943 に答える
0

core-site.xmlのプロパティfs.sftp.implに値org.apache.hadoop.fs.sftp.SFTPFileSystemが設定されていることを確認する必要があります

この投稿後、hadoopコマンドは機能します。いくつかのサンプルを以下に示します

  1. lsコマンド

Hadoopのコマンド

hadoop fs -ls /

SFTPに相当

hadoop fs -D fs.sftp.user.{hostname}={username} -D fs.sftp.password.{hostname}.{username}={password} -ls sftp://{hostname}:22/
  1. Distcpコマンド

Hadoopのコマンド

hadoop distcp {sourceLocation} {destinationLocation}

SFTPに相当

hadoop distcp -D fs.sftp.user.{hostname}={username} -D fs.sftp.password.{hostname}.{username}={password} sftp://{hostname}:22/{sourceLocation} {destinationLocation}

これらのコマンドを試すときは、すべてのプレースホルダーを交換していることを確認してください。Hadoop2.8.5がインストールされているAWSEMR5.28.1で試してみました

于 2020-05-13T15:34:27.917 に答える