1

私はubuntu 12、Hadoop 1.0.3を使用し、webhdfs curlを使用してファイルを作成します。

curl -i -X PUT "http://localhost:50070/webhdfs/v1/test.txt?op=CREATE

または

curl -i -X PUT -T /home/hadoop/TestFile/test.txt "http://localhost:50070/webhdfs/v1/test?op=CREATE"

2つの表彰結果は

HTTP/1.1 307 TEMPORARY_REDIRECT

hdfs-site.xml のどのセットが不足していますか? または他の許可が設定されていませんか?

ありがとう!

4

2 に答える 2

3

Web HDFSのドキュメントによると、これは予想されることです。

最初のプットを行うと、データノードの一時的なリダイレクトURLが与えられ、そこに別のPUTコマンドを発行して、ファイルを実際にHDFSにアップロードできます。

このドキュメントでは、この2ステップの作成方法の背後にある理由についても説明しています。

2段階の作成/追加を行う理由は、クライアントがリダイレクトの前にデータを送信できないようにするためであることに注意してください。この問題は、HTTP / 1.1の「Expect:100-continue」ヘッダーによって対処されます。RFC 2616、セクション8.2.3を参照してください。残念ながら、ソフトウェアライブラリのバグ(Jetty6HTTPサーバーやJava6HTTPクライアントなど)があり、「Expect:100-continue」を正しく実装していません。2段階の作成/追加は、ソフトウェアライブラリのバグに対する一時的な回避策です。

于 2012-06-18T12:32:57.610 に答える
-1

返信が非常に遅れていることは承知していますが、ここで回答を探している他の人なら誰でも見ることができます。こんにちは @Krishna Pandey これは WebHDFS の新しいリンクです https://hadoop.apache.org/docs/r1.0.4/webhdfs.html#CREATE

手順とコマンドについては、このブログを参照できますhttps://wordpress.com/post/had00ping.wordpress.com/194

于 2016-09-15T14:31:50.670 に答える