Как повысить производительность в Amazon Elastic Mapreduce для выполнения заданий?
Моя задача:
- Изначально я хочу импортировать данные из MS SQL Server в HDFS, используя SQOOP.
- Через Hive я обрабатываю данные и генерирую результат в одной таблице
- Этот результат, содержащий таблицу из 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, и при этом у меня такая же производительность, как на моей локальной машине.
А также есть ли другой способ улучшить производительность или просто увеличить количество экземпляров?
Чтобы улучшить производительность, какое количество экземпляров мне нужно использовать?