HDFS 是否支持特殊字符(变音符号等)?

Does HDFS support special characters (Umlauts, etc..)?

我正在尝试将带有变音符号的文件添加到 hdfs,但是当我这样做时,我收到如下错误消息

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

那我该怎么办?将带 ä 的文件翻译成 ae 或者是否有其他方法来处理这个问题?

HDFS 使用 Java 存储这些字符串,其字符串是 UTF-16 编码的。在网络上,Hadoop 的 RPC 使用包含变音符号和各种其他字符的 UTF-8。

您可能遇到的是您的 shell 似乎不支持编码或字符。

如有疑问,您可以随时使用 Java API 将文件放入 HDFS,这需要编写一些代码。