2016-05-19 3 views
0

私はHDFSにウムラウトを持つファイルを追加しようとしていますが、私が行うとき、私はHDFSは特殊文字(Umlautなど)をサポートしていますか?

++ hdfs dfs -put $'data/R\366\337el.doc' solr/test/test.data 
put: `test.data/R��el.doc': No such file or directory 

私は、何をすべき以下のようなエラーメッセージが表示されますか?ファイルをäなどのファイルに変換するか、これを処理する別の方法がありますか?

答えて

1

HDFSは、文字列がUTF-16でエンコードされたJavaを使用してこれらの文字列を格納します。 HadoopのRPCは、ウムラウトとさまざまな文字を含むUTF-8を使用しています。

おそらく遭遇したことは、シェルがエンコードや文字をサポートしていないように見えることです。

不明な点がある場合は、Java APIを使用してファイルをHDFSに配置することができます。この場合、コードを記述する必要があります。

+0

JavaやPythonでリンクや例がありますか? – Mensch

+0

@Mensch http://stackoverflow.com/questions/32399075/upload-data-to-hdfs-with-java-api –

+0

@Mensch Pythonの手がかりはありません。 –

関連する問題