zoukankan      html  css  js  c++  java
  • hadoop入门(1)——hadoop概述

    一、hadoop生态系统特点

         开源、社区活跃、涉及分布式存储和计算的整个生态系统、已得到企业界验证。

         hadoop1.0与2.0版本的比较:

            1.0包含HDFS+MapReduce。

            2.0包括HDFS+YARN+MapReduce+Others

            主要区别在于引入了YARN层。集群资源管理层。

    1.0-2.0区别

    hadoop1.0架构hadoop2.0架构

    二、hadoop介绍(以2.0版本为主)

    1、分布式存储系统HDFS

                分布式存储系统

                提供了高可靠性、高扩展性和高吞吐率的数据存储服务。

                具备线性扩展的能力。

                源自于Google的GFS论文,HDFS是GFS的克隆版。

                HDFS具有良好的扩展性、高容错性(通过数据冗余来实现)、适合PB级以上海量数据的存储。

                基本原理:

                        将文件切分为等大的数据库,存储到多台机器上(分布式文件存储系统)

                        将数据切分、容错、负载均衡等功能透明化。

                        可将HDFS看成一个容量巨大、具有高容错性的磁盘。

                        namenode、datanode、zookeeper。

                应用场景:

                        海量数据的可靠性存储。

                        数据归档。

                HDFS架构图(待补充):master-slave架构

    2、资源管理系统YARN(Yet Another Resource Negotiator)

                负责集群资源的统一管理和调度。是hadoop2.0新增的系统。

                使得多个计算框架可以运行在一个集群中。

                具有良好的扩展性、高可用性。

                自带了多种多用户调度器,适合共享集群环境。

                YARN调度图(待补充)

                YARN 架构图(待补充):master-slave结构。

    3、分布式计算框架MapReduce

                分布式计算框架。易于编程、高容错性、高扩展性。

                源自于Google的MapReduce论文。

                具有良好的扩展性、高容错性(某个节点失败调度到其他节点)、适合PB级以上的海量数据的离线处理。

                架构图(待补充)

    三、hadoop生态系统

            1.0生态系统图。

            2.0生态系统图。

            HDFS、MapReduce、Hive(数据仓库)、pig(工作流引擎)、mahout(数据挖掘库)、

            Oozie(作业流调度系统)、Hbase(分布式数据库)、sqoop(数据TEL工具)、

            Flume(日志收集)、Zookeeper(分布式协调服务)、Ambari(安装部署工具)

            YARN、Tez(DAG计算)、Spark(内存计算)、Hive2、Pig2、shark

            hive:基于MR的数据仓库,是Facebook开源的。Hive定义了HQL查询语言。通常用于离线数据处理。是MR的语言翻译器。

                    应用于日志分析,统计网站的PVUV。

                    海量结构化数据离线分析。

                    低成本进行数据分析(因为不需要写MR程序)

                    Hive架构图。

            pig:Yahoo开源,目的是提供一种基于MR的数据分析工具。定义了Pig Latin数据流语言。

            Mahout:数据挖掘库,基于hadoop的机器学习和数据挖掘的工具。实现了很多聚类、分类算法。

            HBase:源自于Google的Bigtable论文。高可用、高性能、面向列、高扩展性。

            Zookeeper:源自于Google的Chubby论文。解决分布式环境下数据管理问题:

                    统一命名、状态同步、集群管理、配置同步。

            Sqoop:数据同步工具。支持多种数据库(MySQL、DB2等),连接hadoop和传统数据库的桥梁。

            Flume:cloudera开源的日志收集工具。将日志导入到hadoop中。

            Oozie:作业流调度系统。

                    不同作业之间存在依赖关系(DAG),周期性作业、定时执行的作业、作业执行状态监控与报警。

    四、hadoop生态系统版本衍化

        Apache hadoop、CDH(推荐)、HDP。

  • 相关阅读:
    八月份总结+项目总结
    缓存图片技术
    7月份总结
    【转】JavaScript 事件顺序:冒泡和捕获
    【转】UTF16和UTF8什么区别?
    【转】javascript和html中unicode编码和字符转义的详解
    【笔记】javascript权威指南-第六章-对象
    Delphi 中的MD5实现方法《转》
    DELPHI 代码块集合
    Delphi Access 表中查询日期时间提示出错的问题《转》
  • 原文地址:https://www.cnblogs.com/tq03/p/4967048.html
Copyright © 2011-2022 走看看