2015-05-25 2 views
13

Я запускаю некоторые алгоритмы машинного обучения в EMR Spark cluster. Мне любопытно, какой экземпляр использовать, чтобы я мог получить оптимальное соотношение цены и качества?Spark - Какой тип экземпляра является предпочтительным для кластера AWS EMR?

Для того же уровень цен, я могу выбрать между:

  vCPU ECU Memory(GiB) 
m3.xlarge 4  13  15  
c4.xlarge 4  16  7.5 
r3.xlarge 4  13  30.5 

Каким типом экземпляр должны быть использованы в ОМ Спарке кластере?

+0

это зависит от вашего прецедента, потребностей и т. Д. (0) – eliasah

+0

Только, например , что, если я собираюсь обучить АЛС-факторизацию или СВД по математике с несколькими миллионами записей? – shihpeng

+0

Какой размер ваших данных? в гигабайтах? – eliasah

ответ

12

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

Вы, кажется, пытаетесь обучить факторию ALS или SVD на матрицах от 2 до 4 ГБ данных. Так что на самом деле это не слишком много данных.

Для настройки и настройки небольшого распределенного кластера вам понадобится как минимум 1 мастер и 2 узла. Мастер не будет делать каких-либо вычислений, поэтому ему не понадобятся большие ресурсы, но, конечно, я буду заниматься планированием задач и т. Д.

Вы можете добавить ведомые устройства (экземпляры) в соответствии с вашими потребностями.

1 x master : m3.xlarge - vCPU : 4 , RAM : 15 GB and 2 x 40 GB SSDs 
2 x slaves : c3.4xlarge - vCPU : 16, RAM : 30 GB and 2 x 160GB SSDs. 

С3 и С4 вычисляют оптимизированы экземпляров, показывающих высокие производительность и процессоры с низкой производительностью цены/вычислительной в EC2 по сравнению с R3, хотя это рекомендуется случаи использования распределены кэша памяти и в памяти аналитик. Но C4 сделает работу за вас по более низкой цене.

Оптимизация Производительность:

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

  • Не забывайте, что добавление большего количества узлов для повышения производительности дешевле, чем тратить время на оптимизацию вашего кластера.

Код: Amazon EMR Best Practices - Parviz Deyhim.

EDIT: Вы могли бы также рассмотреть возможность включения Ganglia контролировать свои ресурсы кластера: процессор, ОЗУ, сетевой ввод/вывод. Это поможет вам также настроить ваш EMR-кластер. Практически, у вас нет какой-либо конфигурации. Просто следуйте documentation, чтобы добавить его в кластер EMR при создании.

2

В общем случае предпочтительный экземпляр зависит от выполняемой вами работы (интенсивная интенсивность памяти - это интенсивность процессора? И т. Д.). Однако Spark очень интенсивно работает с памятью, и я бы не использовал машины с размером менее 30 ГБ для большинства заданий ,

В вашем конкретном случае (набор данных 4Gb) Я не уверен, почему вы хотите использовать распределенные вычисления для начала - это просто заставит вашу работу работать медленно.Если вы уверены, что хотите запустить его в локальном режиме с помощью потоков X (в зависимости от того, сколько ядер у вас есть)

+0

Я согласен с вами, и поэтому я сказал, что минимум conf. :) – eliasah

+0

Минимальный conf - не использовать EMR - просто получите экземпляр (даже спот-экземпляр), чтобы загрузить искру и запустить его в локальном режиме. –

+0

Минимальный conf для EMR, вопрос был о Spark на EMR, я полагаю. Хорошего дня! – eliasah

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