2016-05-19 5 views
0

Я пытаюсь добавить файл с умляутами в HDFS, но когда я, я получаю сообщение об ошибке, как это нижеПоддерживает ли HDFS специальные символы (Umlauts и т. Д.)?

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

Что я должен делать? Перевести файлы с помощью, например, на ae, или есть другой способ справиться с этим?

ответ

1

HDFS сохраняет эти строки с использованием Java, строки которого кодируются в формате UTF-16. На проводе RPC Hadoop использует 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 нет подсказки. –

 Смежные вопросы

  • Нет связанных вопросов^_^