2013-02-21 5 views
0

Я планирую добавить файловую систему, скажу «Мое облако» под org.apache.hadoop.fs в Hadoop, что-то похожее на KFS или S3, которые уже существуют под org.apache.hadoop.fs. Я хотел спросить, что скажу, я пишу свою файловую систему для «Моего облака» и добавляю пакет под fs, но потом как я могу сообщить core-site.xml или другим файлам конфигурации для использования файловой системы «Мое облако». Где мне все-таки нужно внести изменения, чтобы включить файловую систему «Мое облако» в Hadoop?Как добавить еще одну файловую систему в hadoop

ответ

0

Это на самом деле очень просто:

<property> 
    <name>fs.mycloud.impl</name> 
    <value>com.yourcompany.yourpackage.MyCloudFileSystem</value> 
</property> 

Теперь вы можете обратиться к файлам на этой файловой системе с помощью URL-адреса, как mycloud://authority/path/to/file, и вы начнете видеть счетчики, как MYCLOUD_BYTES_WRITTEN.

+0

не то, что я должен был бы включить «mycloud» - это таблица поиска или где-нибудь (например, файл Hadoop внутри bin, который содержит путь к классам всех команд HDFS), где Hadoop будет ссылаться на файловую систему, на которую я ссылаюсь, а затем элемент управления будет автоматически передан в пакет org.apache.hadop.fs.mycloud? – user2095164

+0

Возможно, я не понимаю ваш оригинальный вопрос. Свойство, которое я дал, позволяет настроить Hadoop для распознавания URL-адресов, начинающихся с «mycloud: //», и автоматически ссылаться на пути к указанной вами реализации файловой системы. Если вы пытаетесь заменить hdfs на что-то еще, вам нужно будет использовать свойство fs.hdfs.impl вместо этого, и вы, вероятно, сломаете что-то (но MapR выполнил подобное). –

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