hadoop得以在大数据应用中广泛应用得益于其自身在数据提取、变形和加载(ETL)方面上的天然优势。Hadoop的分布式架构,将处理引擎尽可能的靠近存储,对例如像ETL这样的批处理操作相对合适,因为类似这样操作的批处理结果可以直接走向存储。Hadoop的MapReduce功能实现了将单个任务打碎,并将碎片任务发送(Map)到多个节点上,之后再以单个数据集的形式加载(Reduce)到数据仓库里。
但是对于Hadoop,特别是Hadoop分布式文件系统(HDFS)来说,数据至少需要三份以支持数据的高可用性。对于TB级别的数据来说,HDFS看起来还是可行的,但当达到PB级别海量数据的时候,其带来的存储成本压力不可小觑。即便是可横向扩展存储亦不能避免压力本身,一些厂商选择了使用RAID技术实现卷级别的保护,而在系统级别则使用了复制的方式。对象存储技术可以提供面对大型环境的数据冗余问题的解决方案。
对象存储。基于对象的存储架构可以通过替代分层存储架构的方式,极大程度上提升可横向扩展存储的优势,它使用的方式则是以单一索引来关联灵活的数据对象。这将解决无限制扩展问题,从而提升了性能本身。对象存储系统包含了无需RAID或者复制作为数据保护的纠删码,极大程度上提升了存储的使用效率。
不像HDFS方式下需要两份或者三份多余数据拷贝以及额外的RAID机制,对象存储系统的纠删码可仅以50%-60%的额外容量就能达到更高的数据保护级别。在大数据存储级别,对于存储本身的节省将是非常重大的。许多对象存储系统亦可选择,包括Caringo、DataDirect Networks Web Object Scaler、NetApp StorageGRID、Quantum Lattus以及开源的 OpenStack Swift和 Ceph。
一些对象存储系统,比如Cleversafe的,甚至可以做到与Hadoop兼容。在这些项目的实施中,Hadoop软件组件可以运行在这些对象存储节点的CPU上,对象存储系统将替换存储节点的Hadoop分布式文件系统。