Hadoop是什么,主要由哪几个项目组成?

1Hadoop大数据处理的意义

Hadoop得以在大数据处理应用中广泛应用得益于其自身在数据提取、变形和加载(ETL)方面上的天然优势。Hadoop的分布式架构,将大数据处理引擎尽可能的靠近存储,对例如像ETL这样的批处理操作相对合适,因为类似这样操作的批处理结果可以直接走向存储。Hadoop的MapReduce功能实现了将单个任务打碎,并将碎片任务(Map)发送到多个节点上,之后再以单个数据集的形式加载(Reduce)到数据仓库里。

1Hadoop由以下几个项目构成

1、HadoopCommon:Hadoop体系最底层的一个模块,为Hadoop各子项目提供各种工具,如:配置文件和日志操作等。

2、HDFS:分布式文件系统,提供高吞吐量的应用程序数据访问,对外部客户机而言,HDFS就像一个传统的分级文件系统。可以创建、删除、移动或重命名文件,等等。但是HDFS的架构是基于一组特定的节点构建的,这是由它自身的特点决定的。这些节点包括NameNode(仅一个),它在HDFS内部提供元数据服务;DataNode,它为HDFS提供存储块。

由于仅存在一个NameNode,因此这是HDFS的一个缺点(单点失败)。存储在HDFS中的文件被分成块,然后将这些块复制到多个计算机中(DataNode)。这与传统的RAID架构大不相同。块的大小(通常为64MB)和复制的块数量在创建文件时由客户机决定。NameNode可以控制所有文件操作。HDFS内部的所有通信都基于标准的TCP/IP协议。

3、MapReduce:一个分布式海量数据处理的软件框架集计算集群。

4、Avro:dougcutting主持的RPC项目,主要负责数据的序列化。有点类似Google的protobuf和Facebook的thrift。avro用来做以后hadoop的RPC,使hadoop的RPC模块通信速度更快、数据结构更紧凑。

5、Hive:类似CloudBase,也是基于hadoop分布式计算平台上的提供datawarehouse的sql功能的一套软件。使得存储在hadoop里面的海量数据的汇总,即席查询简单化。hive提供了一套QL的查询语言,以sql为基础,使用起来很方便。

6、HBase:基于HadoopDistributedFileSystem,是一个开源的,基于列存储模型的可扩展的分布式数据库,支持大型表的存储结构化数据。

7、Pig:是一个并行计算的高级的数据流语言和执行框架,SQL-like语言,是在MapReduce上构建的一种高级查询语言,把一些运算编译进MapReduce模型的Map和Reduce中,并且用户可以定义自己的功能。

8、ZooKeeper:Google的Chubby一个开源的实现。它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

9、Chukwa:一个管理大型分布式系统的数据采集系统由yahoo贡献。

10、Cassandra:无单点故障的可扩展的多主数据库。

11、Mahout:一个可扩展的机器学习和数据挖掘库。

Hadoop设计之初的目标就定位于高可靠性、高可拓展性、高容错性和高效性,正是这些设计上与生俱来的优点,才使得Hadoop一出现就受到众多大公司的青睐,同时也引起了研究界的普遍关注。到目前为止,Hadoop技术在互联网领域已经得到了广泛的运用,如Yahoo、Facebook、Adobe、IBM、百度、阿里巴巴、腾讯、华为、中国移动等。
  人工智能、大数据、云计算和物联网的未来发展值得重视,均为前沿产业,多智时代专注于人工智能和大数据的入门和科谱,在此为你推荐几篇优质好文:
Hadoop、Spark和Storm三者技术相对比,有什么关系?
http://www.duozhishidai.com/article-15089-1.html
大数据的特点是什么,大数据与Hadoop有什么关系?
http://www.duozhishidai.com/article-13276-1.html
Spark 和 Hadoop之间,主要有什么联系
http://www.duozhishidai.com/article-9781-1.html


多智时代-人工智能大数据学习入门网站|人工智能、大数据、物联网云计算的学习交流网站

多智时代-人工智能大数据学习入门网站|人工智能、大数据、云计算、物联网的学习服务的好平台

猜你喜欢

转载自blog.csdn.net/zhinengxuexi/article/details/88980092