我刚开始学习hadoop,在官方指南中,它提到了集群能够使查询数据的速度达到原始数据的两倍。另一方面,传统的rdbm仍然需要两倍的时间来查询结果。我不能理解聚类和处理数据之间的关系。希望有人能给我一些想法。
6jjcrrmo1#
这是分布式计算的基本思想。如果您有一台服务器处理大小为x的数据,它将花费时间y。如果你有2倍的数据,同一台服务器将(大致)花费2年的时间在上面。但是如果有10台服务器并行工作(以分布式方式),并且它们都拥有完整的数据(x),那么它们将花费y/10的时间。通过在一台服务器上增加10倍的资源,您将获得相同的效果,但这通常是不可行和/或不可行的(比如将cpu功率提高10倍是不太合理的。)当然,这是一个非常粗略的简化,hadoop并没有将整个数据集存储在所有服务器上—只存储所需的部分。hadoop在每台服务器上都有一部分数据,服务器处理这些数据,最终生成一个“答案”。这需要通信和不同的协议来商定共享什么数据、如何共享数据、如何分发数据等等——这就是hadoop所做的。
1条答案
按热度按时间6jjcrrmo1#
这是分布式计算的基本思想。
如果您有一台服务器处理大小为x的数据,它将花费时间y。如果你有2倍的数据,同一台服务器将(大致)花费2年的时间在上面。
但是如果有10台服务器并行工作(以分布式方式),并且它们都拥有完整的数据(x),那么它们将花费y/10的时间。通过在一台服务器上增加10倍的资源,您将获得相同的效果,但这通常是不可行和/或不可行的(比如将cpu功率提高10倍是不太合理的。)
当然,这是一个非常粗略的简化,hadoop并没有将整个数据集存储在所有服务器上—只存储所需的部分。hadoop在每台服务器上都有一部分数据,服务器处理这些数据,最终生成一个“答案”。这需要通信和不同的协议来商定共享什么数据、如何共享数据、如何分发数据等等——这就是hadoop所做的。