Назад | Перейти на главную страницу

Есть ли хороший способ монтировать Hadoop HDFS из другой системы?

Я хочу смонтировать Cloudera Hadoop как файловую систему Linux по локальной сети.

В качестве настройки у меня уже есть кластер hadoop, работающий на наборе машин Ubuntu. Но теперь мне нужно иметь возможность использовать его как обычную файловую систему из системы Fedora по локальной сети.
Я пробовал FUSe, но две вещи:
1. Cloudera говорит, что FUSE теряет данные (щелкните здесь, чтобы увидеть комментарий сотрудника Cloudera на официальном сайте поддержки Cloudera)
2. Мне не удалось заставить его работать так, как мы хотим.

В качестве пояснения я использую Hadoop ТОЛЬКО для файловой системы, а не для других ее возможностей.

ПРЕДОХРАНИТЕЛЬ - действительно ваш единственный вариант монтажа экзотика файловые системы, такие как HDFS. Для моих собственных нужд я обнаружил, что использование Java API напрямую было намного лучше, чем смонтированная FS.

К сожалению, клиентские API HDFS для языков, отличных от Java, либо не существуют, либо очень уродливы (в зависимости от JNI).

это На странице есть интересная информация о различных доступных вам вариантах. Если вам каким-то образом удастся заставить FUSE работать, вы можете экспортировать полученную точку монтирования с помощью NFS на другие машины, которым необходимо использовать ту же HDFS. Очевидно, это несет в себе те же риски и недостатки, что и любая установка NFS.

Что касается API, очевидно, существует интерфейс Thrift, FWIW. Видеть Вот для получения дополнительной информации.

HDFS на самом деле не является файловой системой первого класса. Таким образом, установка его через FUSE или что-то подобное может привести к настоящему разочарованию из-за отсутствия обновления файла.

Вы можете рассказать больше о своих потребностях? Почему бы просто не использовать MapR (см. Mapr.com)? MapR обеспечивает первоклассную поддержку NFS для кластерной файловой системы, сохраняя при этом полную совместимость с Hadoop.