为什么增加集群数量会加快Hadoop的MapReduce中的查询速度?



我刚开始学习Hadoop,在官方指南中,它提到双倍的

集群能够使查询数据大小的两倍速度与原始数据一样快。

另一方面,传统的RDBM仍然花费两倍的时间在查询结果上。

我无法掌握集群和处理数据之间的关系。 希望有人能给我

一些想法。

这是分布式计算的基本思想。

如果您有一台服务器处理大小为 X 的数据,它将花费时间 Y。如果您有 2X 数据,则同一台服务器将(大致(在其上花费 2Y 时间。

但是,如果您有 10 台并行工作(以分布式方式(的服务器,并且它们都拥有整个数据 (X(,那么他们将花费 Y/10 的时间。通过在一台服务器上拥有 10 倍的资源,您将获得相同的效果,但通常这是不可行和/或不可行的。(就像将 CPU 功率提高 10 倍不是很合理。

这当然是一个非常粗略的简化,Hadoop不会将整个数据集存储在所有服务器上 - 只是需要的部分。Hadoop在每个服务器上都有一个数据子集,服务器处理它们必须处理的数据,最终产生一个"答案"。这需要通信和不同的协议就共享哪些数据、如何共享、如何分发数据等等达成一致——这就是Hadoop所做的。

相关内容

  • 没有找到相关文章

最新更新