Amazon ec2 AWS elastic map上的连接性能减少运行配置单元

Amazon ec2 AWS elastic map上的连接性能减少运行配置单元,amazon-ec2,hive,hdfs,elastic-map-reduce,Amazon Ec2,Hive,Hdfs,Elastic Map Reduce,我正在运行一个简单的连接查询 select count(*) from t1 join t2 on t1.sno=t2.sno 表t1和t2各有2000万条记录,列sno为字符串数据类型 表格数据以rcfile格式从AmazonS3导入到HDFS中。 15个Amazon大型实例的查询耗时109秒,但在具有16 GB RAM和16个cpu核心的sql server上,查询耗时42秒 我遗漏了什么吗?无法理解为什么我在Amazon上的性能变慢?一些问题可以帮助您调整Hadoop性能: 这些实

我正在运行一个简单的连接查询

 select count(*) from t1 join t2 on t1.sno=t2.sno 
表t1和t2各有2000万条记录,列sno为字符串数据类型

表格数据以rcfile格式从AmazonS3导入到HDFS中。 15个Amazon大型实例的查询耗时109秒,但在具有16 GB RAM和16个cpu核心的sql server上,查询耗时42秒


我遗漏了什么吗?无法理解为什么我在Amazon上的性能变慢?

一些问题可以帮助您调整Hadoop性能:

  • 这些实例上的IO利用率是什么样的?对于作业来说,大型实例可能不是CPU/磁盘/内存的正确平衡
  • 你的文件是如何存储的?是单个文件,还是许多小文件?Hadoop对于许多小文件并不那么热门,即使它们是可组合的
  • 你用了多少减速器?您希望理想的总还原容量为0.9*
  • 你的数据有多偏斜?如果有许多记录具有相同的键,它们都将转到同一个减缩器,如果不小心,减缩器中会有O(n*n)上界
sql server可能可以处理40mm记录,但请等到您有20亿条记录时再看它是如何处理的。它很可能就要破裂了。我认为hive更像是Map Reduce的一个智能包装器,而不是真正数据库的替代品


根据我的经验,我认为拥有15台c1.1的媒体可能会和大型机器一样好,甚至更好。老实说,大型计算机的CPU/内存平衡不正确。

感谢您的回答。没有机会测试它。我一有时间就会给你回电话。