Я работаю над дизайном поисковой системы, которая будет работать в облаке. Мы только начали и не очень хорошо разбираемся в Hdoop. Может ли кто-нибудь сказать, могут ли HBase, MapReduce и HDFS работать на одной машине, на которой установлен и работает Hdoop?
могут ли HBase, MapReduce и HDFS работать на одной машине, на которой установлен и запущен Hadoop?
Ответы (3)
Да, ты можешь. Вы даже можете создать виртуальную машину и запустить ее на одном «компьютере» (что у меня есть :)).
Главное — просто установить Hadoop в «псевдораспределенном режиме", который даже описано в Кратком руководстве по Hadoop.
Если вы используете дистрибутив Cloudera, они даже создали необходимые для этого конфигурации в RPM. Дополнительную информацию см. здесь.
ХТН
Да. В моей среде разработки я запускаю
- Узел имени (HDFS)
- SecondaryNameNode (HDFS)
- Узел данных (HDFS)
- JobTracker (MapReduce)
- Тасктрекер (MapReduce)
- Мастер (HBase)
- Регионсервер (HBase)
- QuorumPeer (ZooKeeper — необходим для HBase)
Кроме того, я запускаю свои приложения, сопоставляю и сокращаю задачи, запущенные трекером задач. Запуск такого количества процессов на одном компьютере приводит к большому конфликту между ядрами ЦП, памятью и дисковым вводом-выводом, поэтому это определенно не очень хорошо для высокой производительности, но нет никаких ограничений, кроме количества доступных ресурсов.
то же самое здесь, я запускаю hadoop/hbase/hive на одном компьютере. Если вы действительно хотите увидеть распределенные вычисления на одном компьютере, захватите много оперативной памяти, немного места на жестком диске и сделайте следующее:
- сделать одну или две виртуальные машины (используйте виртуальную коробку)
- установите hadoop на каждый из них, сделайте реальную установку (не виртуальную) в качестве мастера, остальные ведомые
- настроить hadoop для реальной распределенной среды
- теперь, когда запускается Hadoop, у вас должен быть кластер из нескольких компьютеров (один реальный, остальные виртуальные)
это может быть просто экспериментом, потому что, если у вас нет приличной многопроцессорной или многоядерной системы, такая конфигурация на самом деле будет потреблять больше на самообслуживание, чем на обеспечение какой-либо производительности.
гуд удачи.
--l4l