2015-06-09 3 views
0

Если я хочу простую настройку, которая бы дала мне быстрый старт: будет ли самая лучшая комбинация apache-spark и mesos? или, может быть, апач-искра была бы лучше, потому что ... т. е. mesos добавит сложности к процессу, учитывая то, что он делает, или, может быть, мезос делает так много вещей, которые трудно справиться с искрою в одиночку и т. д.Является ли искра или искра мезосом проще всего начать?

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

ответ

0

Самый простой способ начать использовать Spark - запустить автономный искровой кластер на EC2. Это так же просто, как запуск одиночного скрипта - spark-ec2, и он сделает все для вас.

Единственный случай, когда автономный кластер может вас не устраивать - если вы хотите запустить более одного одиночного искрового задания за раз (по крайней мере, это было в случае с Spark 1.1).

Для меня лично автономный Spark-кластер был достаточно хорош в течение долгого времени, когда я запускал специальные рабочие места - анализировал журналы компании на S3 и изучал Spark, а затем уничтожал кластер.

Если вы хотите запустить более одного Искра одновременно, я бы пошел с Мезосом. Альтернативой будет установка CDH из Cloudera, которая относительно проста (они предоставляют установочные скрипты и инструкции по установке), и она доступна бесплатно. CDH предоставит вам мощные инструменты для управления кластером.

Использование CDH для запуска Spark - они используют YARN, и у нас есть тот или иной вопрос время от времени с запуском Spark on YARN.

Основным недостатком для меня - провайдера CDHs является его собственная сборка Spark - поэтому обычно это одна второстепенная версия, что немаловажно для такого быстро развивающегося проекта, как Spark.

Так что я бы попробовал Mesos для запуска Spark, если мне нужно запустить больше одной работы за раз.

0

Только для полноты, Hortonworks предоставляет загружаемую HDP-песочницу VM, а также поддерживает Spark на HDP. Это также хорошая отправная точка.

Кроме того, вы можете открутить свой собственный кластер. Я делаю этот ноутбук самостоятельно, а не для реальных больших данных, но для обучения с умеренным объемом данных.

import subprocess as s 
from time import sleep 
cmd = "D:\\spark\\spark-1.3.1-bin-hadoop2.6\\spark-1.3.1-bin-hadoop2.6\\spark-1.3.1-bin-hadoop2.6\\bin\\spark-class.cmd" 

master = "org.apache.spark.deploy.master.Master" 
worker = "org.apache.spark.deploy.worker.Worker" 
masterUrl="spark://BigData:7077" 
cmds={"masters":1,"workers":3} 

masterProcess=[cmd,master] 
workerProcess=[cmd,worker,masterUrl] 

noWorker = 3 

pMaster = s.Popen(masterProcess) 
sleep(3) 

pWorkers = [] 
for i in range(noWorker): 
    pw = s.Popen(workerProcess) 
    pWorkers.append(pw) 

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

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