随着大数据成为行业发展下一个热点,未来的十年可能是“大数据”引领智慧科技的时代,也可能大数据就是一场骗局。但不管未来如何变化,大数据一下子“火”了是不争的事实,而开源技术Hadoop也水涨船高成为用户试水大数据平台和应用的热点技术。
Hadoop究竟是什么,对于这个问题答案或许很多人并不了解,笔者不仅也要问:到底这个“火起来”的开源技术有何魅力?通过进一步的学习和了解,介绍一下什么是Hadoop,希望通过本文大家对Hadoop有清晰的认识。
提及Hadoop有着众多版本的说明,其实是早年雅虎搜索工程师Doug Cutting开发出这个用以创建分布式计算机环境的开源软件库,并以自己儿子的大象玩偶为其命名,谁能想到如今占据“大数据”热门首选技术。
维基百科
查询维基百科,简单来说Hadoop是Apache软件基金会所研发的开放源码并行运算编程工具和分散式档案系统,支持数据密集型分布式应用程序,在Apache v2许可认证下,Hadoop框架透明地为应用程序提供可靠性与数据移动保障。Hadoop实现了一个被称为map/Reduce的计算模型,在这个计算模型中应用程序被分为很多的小块,每一块都能在集群中的任意节点上执行或重新执行。另外,它还提供了一个分布式文件系统(HDFS)来在计算节点上存储数据,为集群提供了非常高的聚合带宽。
可见,之前谈到Hadoop,业界总与MapReduce放在一起,但其实HDFS和MapReduce一样都是Hadoop的基础。既然如此,Hadoop属于开源技术是否免费提供应用?笔者了解软件的安装部署是需要付费,由于Hadoop在管理工具与支持服务方面的不足,企业在使用过程中很容易产生额外费用。另外,由于它没有优化程序,专业运行环境中人工输入代码费用不菲,更不用提部署Hadoop集群的硬件和相关配置的成本。
“大数据”首选技术Hadoop(来源hadoop)
正如上面谈到,Hadoop有数据应用上的优势,HDFS和MapReduce都是基础,但并不容易部署与实施,其实如今针对Hadoop开源技术推广,市场开发应用上主要有两个圈子:一个是做算法、分析的圈子,另外一个是做架构、设计的圈子,如何把这两个圈子技术有效的结合产生应用是大数据的突破点。
了解到Hadoop的技术特点和应用部署问题,很多人最大的疑惑是Hadoop技术未来真正的价值是什么?从技术特点上来说,之前提到Hadoop由采用Hadoop分布式文件系统(HDFS)的可靠数据存储服务,以及MapReduce技术的高性能并行数据处理服务是其优势所在。这里简单说,Hadoop的技术对复杂数据的快速、可靠分析变为商业价值的基础。
Hadoop子项目
而对于Hadoop来说,尽管提供了数据存储和并行处理平台,但其真正的价值来自于添加件和功能,以及Hadoop Common、Chukwa、HBase、Hive、Pig和ZooKeeper这项技术的增加功能性和新能力的子项目实现。
从关系结构看,Pig是一种编程语言,可加载数据、表达转换数据以及存储最终结果,它简化了Hadoop常见的工作任务。而Hive在Hadoop中扮演数据仓库的角色。Hive添加数据的结构在HDFS,并允许使用类似于SQL语法进行数据查询。
谈到区别,Hive更适合于数据仓库的任务。Pig在大数据集领域更多的灵活性,相比Hive直接使用Hadoop Java APIs可大幅削减代码量。
Hadoop子项目说明
最左侧的Ambari项目是最新加入Hadoop,旨在帮助系统管理员部署和配置Hadoop,升级集群以及监控服务。而ZooKeeper最大的功能是协调,随着越来越多的项目加入Hadoop生态系统的一部分,集群成员通过ZooKeeper功能进行彼此同步并了解访问服务和配置。
由此,从概念、架构到子项目,笔者感觉Hadoop尽管应用于分布式环境,其开放的生态系统如同Linux一样,各个IT厂商通过集成和测试Apache Hadoop的组件,并添加厂商自身的工具和管理功能来不断扩展Hadoop生态环境。可见,厂商既成为开源Hadoop项目的代码和功能贡献者,又同时把不同模式带到实际的业务应用中,结合自己的产品提供大数据解决方案。