当我们想搭建一个Hadoop大数据平台时,碰到的第一个问题就是我们到底该如何选择硬件。
虽然Hadoop被设计为可以运行在标准的X86硬件上,但在选择具体服务器配置的时候其实没那么简单。为已知的工作负载或者应用场景选择硬件时,往往都要综合考虑性能因素和性价比,才能选择合适的硬件。比如,对于IO密集型的工作负载,用户往往需要为每个CPU core匹配更多的存储或更高的吞吐(more spindles per core)。
对大数据的概念都是模糊不清的,大数据是什么,能做什么,学的时候,该按照什么线路去学习,学完往哪方面发展,想深入了解
想学习的同学欢迎加入大数据学习qq群:458345782,有大量干货(零基础以及进阶的经典实战)分享给大家
并且有清华大学毕业的资深大数据讲师给大家免费授课,给大家分享目前国内最完整的大数据高端实战实用学习流程体系 。
通过本文,您将学习到如何根据工作负载来选择硬件,包括一些其他您需要考虑的因素。
1.计算和存储
过去的十年,业界基本已经形成了刀片和SANs(Storage Area Networks)的标准,从而满足网格和处理密集型的工作负载。这种模式对于许多标准应用(比如Web服务器,应用服务器,较小的结构化数据和数据搬运)还都是适用的,但是随着数据量和用户数据的增长,基础设施的需求也发生了变化。Web服务器现在已经有了缓存层,数据库借助本地磁盘开始支持海量并发,数据搬运的压力迫使我们需要更多的在本地处理数据。
“很多人在搭建Hadoop集群时都没有去真正了解过工作负载”
硬件供应商更新了对应的产品来满足相应的需求,包括存储刀片,SAS(Serial Attached SCSI)交换机,外挂的SATA阵列和容量更大的机架。然而,Hadoop是基于一个全新的存储和处理数据的方式,尽量避免数据传输。Hadoop通过软件层来实现大数据的处理以及可靠性,而不像一个SAN存储所有数据,如果计算则传输到一系列刀片进行计算。
Hadoop将数据分布式存储在各台服务器上,使用文件副本来保证数据不丢以及容错。这样一个计算请求可以直接分发到存储数据的相应服务器并开始进行本地计算。由于Hadoop集群的每台节点都会存储和处理数据,所以你就需要考虑怎样为集群里的这些服务器选择合适的配置。
2.为什么跟工作负载有关系
在很多情况下,MapRedu