• 初始hadoop


    Hadoop是什么?

    Hadoop是使用Java编写,允许分布在集群,使用简单的编程模型的计算机大型数据集处理的Apache的开源框架。 Hadoop框架应用工程提供跨计算机集群的分布式存储和计算的环境。 Hadoop是专为从单一服务器到上千台机器扩展,每个机器都可以提供本地计算和存储。

    Hadoop的架构

    在其核心,Hadoop主要有两个层次,即:

    • 加工/计算层(MapReduce),以及
    • 存储层(Hadoop分布式文件系统)。

    MapReduce

    MapReduce是一种并行编程模型,用于编写普通硬件的设计,谷歌对大量数据的高效处理(多TB数据集)的分布式应用在大型集群(数千个节点)以及可靠的容错方式。 MapReduce程序可在Apache的开源框架Hadoop上运行。

    Hadoop分布式文件系统

    Hadoop分布式文件系统(HDFS)是基于谷歌文件系统(GFS),并提供了一个设计在普通硬件上运行的分布式文件系统。它与现有的分布式文件系统有许多相似之处。来自其他分布式文件系统的差别是显著。它高度容错并设计成部署在低成本的硬件。提供了高吞吐量的应用数据访问,并且适用于具有大数据集的应用程序。

    除了上面提到的两个核心组件,Hadoop的框架还包括以下两个模块:

    • Hadoop通用:这是Java库和其他Hadoop组件所需的实用工具。

    • Hadoop YARN :这是作业调度和集群资源管理的框架。

    Hadoop如何工作?

    建立重配置,处理大规模处理服务器这是相当昂贵的,但是作为替代,可以联系许多普通电脑采用单CPU在一起,作为一个单一功能的分布式系统,实际上,集群机可以平行读取数据集,并提供一个高得多的吞吐量。此外,这样便宜不到一个高端服务器价格。因此使用Hadoop跨越集群和低成本的机器上运行是一个不错不选择

    Hadoop运行整个计算机集群代码。这个过程包括以下核心任务由 Hadoop 执行:

    • 数据最初分为目录和文件。文件分为128M和64M(128M最好)统一大小块。
    • 然后这些文件被分布在不同的群集节点,以便进一步处理。
    • HDFS,本地文件系统的顶端﹑监管处理。
    • 块复制处理硬件故障。
    • 检查代码已成功执行。
    • 执行发生映射之间,减少阶段的排序。
    • 发送排序的数据到某一计算机。
    • 为每个作业编写的调试日志。

    Hadoop的优势

    • Hadoop框架允许用户快速地编写和测试的分布式系统。有效并在整个机器和反过来自动分配数据和工作,利用CPU内核的基本平行度。

    • Hadoop不依赖于硬件,以提供容错和高可用性(FTHA),而Hadoop库本身已被设计在应用层可以检测和处理故障。

    • 服务器可以添加或从集群动态删除,Hadoop可继续不中断地运行。

    • Hadoop的的另一大优势在于,除了是开源的,因为它是基于Java并兼容所有的平台。

    Hadoop 核心组件

    Hadoop 包含以下模块:

        Hadoop Common:常见实用工具,用来支持其他 Hadoop 模块。
        Hadoop Distributed File System(HDFS):分布式文件系统,它提供对应用程序数据的高吞吐量访问。
        Hadoop YARN:一个作业调度和集群资源管理框架。
        Hadoop MapReduce:基于 YARN 的大型数据集的并行处理系统。
    其他与 Apache Hadoop 的相关项目包括:

        Ambari:一个基于Web 的工具,用于配置、管理和监控的 Apache Hadoop 集群,其中包括支持 Hadoop HDFS、Hadoop MapReduce、Hive、HCatalog、HBase、ZooKeeper、Oozie、Pig 和 Sqoop。Ambari 还提供了仪表盘查看集群的健康,如热图,并能够以用户友好的方式来查看的 MapReduce、Pig 和 Hive 应用,方便诊断其性能。
        HBase:一个可扩展的分布式数据库,支持结构化数据的大表存储。
        Hive:数据仓库基础设施,提供数据汇总以及特定的查询。
        Mahout:一种可扩展的机器学习和数据挖掘库。
        Pig:一个高层次的数据流并行计算语言和执行框架。
        Spark:Hadoop 数据的快速和通用计算引擎。Spark 提供了简单和强大的编程模型用以支持广泛的应用,其中包括 ETL、机器学习、流处理和图形计算。
        ZooKeeper:一个高性能的分布式应用程序协调服务。

    Hadoop三大发行版

    (1) Apache Hadoop

    Apache Hadoop最原始版本,所有其他发行版均基于该发行版实现的。

    官网地址http://hadoop.apache.org/,Logo如下

    这里写图片描述

        0.23.x :非稳定版
        2.x :最新版是2.8.0,建议使用2.7.3稳定版。

        3.0:已发行多个测试版,正式稳定版尚未发布

        (2)CDH
        CDH(Cloudera’s Distribution for Hadoop)是Cloudera 公司的的Hadoop 发行版。

    官方是https://www.cloudera.com/,Logo如下。



    包含CDH4 和CDH5 两个版本
    CDH4 ;基于Apache Hadoop 0.23.0 版本开发
    CDH5 :基于Apache Hadoop 2.2.0 版本开发

    (3)HDP

    HDP(The Hortonworks Data Platform)是Hortonworks 公司的发行版。

    官网地址是https://hortonworks.com/,Logo如下。


    (4) 发行版选择
    - 作为学习,建议选择Apache Hadoop最新的稳定版;
    - 作为工作(生产环境),建议选择CDH或HDP稳定版。

    (5) 不同发行版兼容性

    架构、部署和使用方法一致,不同之处仅在若干内部实现。

  • 相关阅读:
    【BZOJ1046】上升序列(动态规划,贪心)
    【BZOJ1052】覆盖问题(贪心)
    【BZOJ3293】分金币(贪心)
    【BZOJ1045】糖果传递(贪心)
    【BZOJ1029】建筑抢修(贪心)
    【BZOJ3534】重建(矩阵树定理)
    【BZOJ2654】Tree(凸优化,最小生成树)
    【CF125E】MST Company(凸优化,最小生成树)
    【BZOJ4027】兔子与樱花(贪心)
    【UOJ#80】二分图最大权匹配(KM)
  • 原文地址:https://www.cnblogs.com/mtime2004/p/9996413.html
Copyright © 2020-2023  润新知