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

Как повысить производительность Amazon Elastic Mapreduce при выполнении заданий?

Моя задача:

  1. Сначала я хочу импортировать данные из MS SQL Server в HDFS с помощью SQOOP.
  2. Через Hive обрабатываю данные и формирую результат в одной таблице
  3. Этот результат, содержащий таблицу из Hive, снова экспортируется в MS SQL SERVER.

Все это мне нужно реализовать с помощью Amazon Services. (В моем случае я использую Amazon S3 для хранения данных и Amazon Elastic Map Reduce.)

На самом деле данные, которые я импортирую из MS SQL Server, очень большие (около 5 000 000 записей в одной таблице. Точно так же у меня есть 30 таблиц). Для этого я написал задачу в Hive, которая содержит только запросы (и в каждом запросе используется много объединений). Таким образом, из-за этого производительность на моем единственном локальном компьютере очень низкая (для полного выполнения требуется около 3 часов).

Я хочу сократить это время как можно меньше. Для этого мы решили использовать Amazon Elastic Mapreduce. В настоящее время я использую десять экземпляров m1.large, но производительность у меня такая же, как на моей единственной локальной машине.

А также есть ли другой способ повысить производительность или просто увеличить количество экземпляров?

Какое количество экземпляров мне нужно использовать, чтобы повысить производительность?