我的任务是 1) 最初我想使用 SQOOP 将数据从 MS SQL Server 导入 HDFS。2)通过 Hive,我正在处理数据并在一个表中生成结果 3)包含来自 Hive 的表的结果再次导出到 MS SQL SERVER。
我想使用 Amazon Elastic Map Reduce 执行所有这些操作。
我从 MS SQL Server 导入的数据非常大(一张表中大约有 5,00,000 个条目。同样我有 30 个表)。为此,我在 Hive 中编写了一个仅包含查询的任务(并且每个查询都使用了很多连接)。因此,由于这个原因,我的单台本地机器上的性能非常差(完全执行大约需要 3 小时)。
我想尽可能少地减少那个时间。为此,我们决定使用 Amazon Elastic Mapreduce。目前我正在使用 3 m1.large 实例,但我的性能仍然与本地机器相同。
为了提高性能,我需要使用多少个实例?由于我们使用的实例数量是自动配置的,还是我需要在提交 JAR 以执行时指定?因为我使用两台机器的时间是一样的。
还有有没有其他方法可以提高性能或者只是增加实例的数量。或者我在执行 JAR 时做错了什么?
请指导我完成这个,因为我对亚马逊服务器不太了解。
谢谢。