Опыт работы с Hadoop?

Кто-нибудь из вас пробовал Hadoop? Можно ли его использовать без распределенной файловой системы, которая идет с ним, в архитектуре без совместного использования? Будет ли это иметь смысл?

Я также заинтересован в любых результатах производительности у вас есть ...

20.08.2008 10:43:13
какой аспект производительности у hadoop вас интересует?
David Gruzman 14.08.2011 11:44:23
9 ОТВЕТОВ
РЕШЕНИЕ

Да, вы можете использовать Hadoop в локальной файловой системе, используя файловые URI вместо hdfs URI в разных местах. Я думаю, что многие примеры, которые идут с Hadoop, делают это.

Это, вероятно, хорошо, если вы просто хотите узнать, как работает Hadoop и как работает базовая парадигма сокращения карт, но вам потребуются несколько машин и распределенная файловая система, чтобы получить реальные преимущества масштабируемости, присущей архитектуре.

8
22.08.2008 16:29:08

Как сказал Джо, вы действительно можете использовать Hadoop без HDFS. Однако пропускная способность зависит от способности кластера выполнять вычисления вблизи места хранения данных. Использование HDFS имеет 2 основных преимущества. IMHO: 1) вычисления распределяются более равномерно по кластеру (сокращается объем межузловой связи) и 2) кластер в целом более устойчив к сбоям из-за недоступности данных.

Если ваши данные уже разделены или тривиально разделены, возможно, вы захотите воспользоваться собственной функцией разделения для задачи сокращения карты.

3
12.09.2008 15:40:10

Лучший способ обернуть голову вокруг Hadoop - это загрузить его и начать изучать примеры включения. Используйте Linux box / VM, и ваша настройка будет намного проще, чем Mac или Windows. Как только вы освоитесь с примерами и концепциями, начните понимать, как ваше проблемное пространство может отображаться в рамках.

Несколько ресурсов, которые могут оказаться полезными для получения дополнительной информации о Hadoop:

Видео и презентации Hadoop Summit

Hadoop: полное руководство: версия для черновой резки - это одна из немногих (только?) Книг, доступных на Hadoop на данный момент. Я бы сказал, что это стоит того, чтобы загрузить электронную версию даже на этом этапе (книга завершена на ~ 40%).

Hadoop: полное руководство: версия для черновой резки

3
14.01.2019 18:26:01

Hadoop MapReduce может работать поверх любого количества файловых систем или даже более абстрактных источников данных, таких как базы данных. На самом деле есть пара встроенных классов для поддержки файловой системы не HDFS, таких как S3 и FTP . Вы также можете легко создать свой собственный формат ввода, расширив базовый класс InputFormat .

Однако использование HDFS дает определенные преимущества. Наиболее мощным преимуществом является то, что планировщик заданий MapReduce будет пытаться выполнить карты и сокращает количество на физических машинах, на которых хранятся записи, нуждающиеся в обработке. Это повышает производительность, поскольку данные могут загружаться прямо с локального диска, а не передаваться по сети, что в зависимости от соединения может быть на несколько порядков медленнее.

4
21.05.2009 22:40:37

Параллельные / распределенные вычисления = SPEED << Hadoop делает это действительно очень простым и дешевым, так как вы можете просто использовать несколько обычных машин !!!

За прошедшие годы объемы дискового хранилища значительно возросли, но скорости чтения данных не поддерживаются. Чем больше данных у вас на одном диске, тем медленнее поиск.

Hadoop - это умный вариант подхода «разделяй и властвуй» к решению проблем. По сути, вы разбиваете проблему на более мелкие порции и назначаете порции нескольким различным компьютерам для параллельной обработки, чтобы ускорить процесс, а не перегружать одну машину. Каждая машина обрабатывает свое собственное подмножество данных, и в итоге результат объединяется. Hadoop на одном узле не даст вам скорости, которая имеет значение.

Чтобы увидеть преимущества Hadoop, у вас должен быть кластер, содержащий не менее 4-8 обычных компьютеров (в зависимости от размера ваших данных) в одной стойке.

Вам больше не нужно быть супер-гениальным инженером параллельных систем, чтобы использовать преимущества распределенных вычислений. Просто знай, Хэдуп, с Улей, и тебе пора.

0
18.06.2012 21:58:20

да, hadoop может очень хорошо использоваться без HDFS. HDFS - это просто хранилище по умолчанию для Hadoop. Вы можете заменить HDFS любым другим хранилищем, таким как базы данных. HadoopDB - это дополнение к hadoop, которое использует базы данных вместо HDFS в качестве источника данных. Google это, вы получите это легко.

0
20.07.2012 07:03:01

Если вы просто промокаете, начните с загрузки CDH4 и запуска его. Вы можете легко установить на локальную виртуальную машину и запустить ее в «псевдораспределенном режиме», что близко имитирует ее работу в реальном кластере.

0
4.12.2012 21:32:57

Да. Вы можете использовать локальную файловую систему, используя file: // при указании входного файла и т. Д., И это будет работать также с небольшими наборами данных. Но фактическая мощность hadoop основана на распределенном и разделяющем механизме. Но Hadoop используется для обработки огромного количества данных. Этот объем данных не может быть обработан на одном локальном компьютере, или даже если это произойдет, потребуется много времени, чтобы завершить работу. Поскольку ваш входной файл находится в общей папке (HDFS) ) несколько картостроителей могут читать его одновременно и сокращают время на завершение работы. В двух словах Вы можете использовать его с локальной файловой системой, но для удовлетворения бизнес-требований вы должны использовать его с общей файловой системой.

0
28.12.2014 15:23:51

Отличные теоретические ответы выше.

Чтобы изменить файловую систему hadoop на локальную, вы можете изменить ее в файле конфигурации «core-site.xml», как показано ниже для версий hadoop 2.xx

 <property>
    <name>fs.defaultFS</name>
    <value>file:///</value>
  </property>

для версий hadoop 1.xx

 <property>
    <name>fs.default.name</name>
    <value>file:///</value>
  </property>
0
11.05.2015 07:47:46