认识hadoop

https://baike.baidu.com/item/Hadoop/3526507?fr=aladdin

hadoop是apache基金会所开发的一个分布式系统基础架构
1、什么是分布式系统?
分布式系统(distributed system)是建立在网络之上的软件系统。
一个著名的分布式系统的例子是万维网(world wide web),在万维网中,所有的一切看起来好像一个web页面一样。
在一个分布式系统中,一组独立的计算机以一个统一的整体形式展现给用户,就好像一个系统一样,系统中的物理资源和逻辑资源,可以通过计算机网络实现信息交换。而这个系统中存在一个以全局的方式管理计算机资源的分布式操作系统。对于用户来说,分布式系统只有一个模型或者范型。在操作系统之上有一层软件中间件负责来实现这个模型。
分布式操作系统和网络操作系统:
分布式操作系统以全局的方式管理资源,中间为用户所提供的服务都是透明的。对于用户来说这个系统就像是一个处理器一样。
分布式软件系统是支持分布式处理的软件系统:
操作系统,程序设计语言,文件系统,数据库系统,邮件系统。
分布式文件系统:具有执行远程文件存取的能力,并以透明方式对分布在网络上的文件进行管理和取。

总结一下:分布式系统建立在网络之上,是一个软件系统,这个软件系统支持分布式处理,而分布式处理就是使得这个软件系统的所有资源以一个整体的效果呈现给用户,用户在这个系统上的操作都是透明的。而文件系统支持分布式处理。我们需要实现一个分布式系统,而分布式系统只有一个模型,我们需要在操作系统上层有一个软件来实现这个架构,我们的hadoop是一个分布式系统的架构。


2、hadoop实现了一个分布式文件系统,简称HDFS,hdfs有高容错性的特点,并且设计用来部署在低廉的硬件上;而且他提供高吞吐量来访问应用程序的数据,适合有着超大数据集的应用程序。HDFS放宽了POSIX的要求,可以以流的方式访问文件系统中的数据。hadoop的框架最核心的设计就是HDFS和MapReduce。HDFS为海量的数据提供了存储,而MapReduce为海量的数据提供了计算。


3、hadoop优点:
对大量数据进行分布式处理,可靠,高效,可伸缩。hadoop是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败节点重新分布处理。hadoop是高效的,因为它以并行的方式工作,通过并行处理加快处理速度,hadoop还是可伸缩的,能够处理pb级的数据。此外,hadoop依赖社区服务,因此成本低,任何人都可以使用。
hadoop是一个能够让用户轻松架构和使用的分布式计算平台。用户可以轻松地在hadoop上开发和运行处理海量数据的应用程序

  1. 高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖。

  2. 高扩展性。Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。

  3. 高效性。Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。

  4. 高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。

  5. 低成本。与一体机、商用数据仓库以及QlikView、Yonghong Z-Suite等数据集市相比,hadoop是开源的,项目的软件成本因此会大大降低。


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


hadoop的核心架构:
hadoop由许多元素构成,最底部是HDFS,它存储hadoop集群中所有存储节点的文件。上一层是mapreduce引擎,该引擎由JobTrackers和TaskTrachers组成。


HDFS:
对于外部客户机而言,HDFS就像一个传统的分级文件系统。可以创建、删除、移动或者重命名文件,等等。但是HDFS的架构是基于一组特定的节点构建的,这是由它自身的特点决定的。这些节点包括NAMENODE(仅仅1个),它再HDFS中提供元数据服务;datanode,它为hdfs提供存储块。由于仅仅一个namenode,因此这也是hdfs的一个缺点(单点失败)。


存储在hdfs中的文件被分成块,然后将这些块复制到多个计算机中(datanode)。这与传统的raid架构大不相同。块的大小和复制块的数量在创建文件时在创建文件时由客户机决定。namenode可以控制所有文件操作。hdfs内部的所有通信都基于标准的TCP/IP协议。

你可能感兴趣的:(认识hadoop)