zoukankan      html  css  js  c++  java
  • Hadoop初识

    写在前面

    本文带你更好了解hadoop的一些知识。

    Hadoop概述

    Hadoop官方网站是:http://hadoop.apache.org/

    名称由来?

    Hadoop这个名称其实没有实际意义,只是hadoop作者小孩的一个大象玩具的名称

    Apache™Hadoop®项目开发了用于可靠可扩展的分布式计算的开源软件。
    Apache Hadoop软件库是一个框架,允许使用简单的编程模型跨计算机集群分布式处理大型数据集。它旨在从单个服务器扩展到数千台计算机,每台计算机都提供本地计算和存储。本身不是依靠硬件来提供高可用性,而是设计用于检测和处理应用程序层的故障,从而在计算机集群之上提供高可用性服务,每个计算机都可能容易出现故障。

    Hadoop能做什么?

    • 日志分析
    • 数据挖掘
    • 商业智能
    • 搜索引擎

    搭建大型数据仓库,PB级别数据的存储,分析,处理,统计等业务

    Hadoop核心组件

    Hadoop Common:支持其他Hadoop模块的常用实用程序。
    Hadoop分布式文件系统(HDFS™):一种分布式文件系统,可提供对应用程序数据的高吞吐量访问(数据块并行访问)。
    Hadoop YARN:作业调度和集群资源管理的框架。
    Hadoop MapReduce:基于YARN的系统,用于并行处理大型数据集。
    Hadoop Ozone:Hadoop的对象存储。

    HDFS分布式文件系统

    • 源自于Goole的GFS论文
    • 扩展性 (假如集群存不下你的数据,可以通过横向水平扩展,添加机器的方式)
    • 容错性 (hdfs上的数据是多副本(默认存3份)的方式进行存储,)
    • 将上传的文件切分为指定大小数据块(默认128M,也可以自己设定)
    • 数据切分 ,多副本,对于用户是透明的

    一个文件被拆分为多个Block(会有Block-ID:方便读取数据),以及每个Block是有几个副本的形式存储

    YARN:作业调度和集群资源的管理

    • 扩展性,计算能力不够,也是可以添加机器的形式提高
    • 容错性 ,作业执行过程中,如果,出现错误,Yarn会对Task任务进行一定次数(可配置)重试
    • 多框架资源统一调度(Hadoop1版本仅支持MapReduce作业)

    MapReduce :分布式计算框架

    • 基于Goole的MapReduce论文
    • 扩展性
    • 容错性
    • 海量数据(数据量大)离线(延时高)处理

    Hadoop 优势

    • 数据存储:数据块多副本存储的,保证数据可靠性

    • 数据计算:yarn重新调度作业计算,保证高可用

    • 存储、计算资源不够时,可以横向线性扩展机器
      一个集群中可以包含很多的节点

    • 存储在廉价的机器上,降低成本

    • 成熟的生态圈

    Hadoop发展史

    Hadoop十年解读与发展预测
    参考 https://blog.csdn.net/yzsind/article/details/51753855

    Hadoop生态系统

    • 狭义:是一个适合大数据分布式存储,分布式计算和资源调度(主要的三个组件)
    • 广义:每一个子框架都是解决特定域的问题的
      这里主要讲广义的,
      在这里插入图片描述

    底层使用MapReduce作为计算引擎的话,基本上都是离线处理

    • Pig:雅虎开源

    • Hive:FaceBook开源的,做数据的离线批处理

    • Oozie:工作流调度引擎,类似Activiti框架作业之间的相互依赖,配置依赖的框架

    • Zookeeper:分布式协调服务,单点问题,维护单点故障,切换问题,HA

    • Flume:对日志做大数据的统计分析,日志数据收集的框架

    • Sqoop: 关系型数据库和hdfs进行数据交换工具,数据交换

    • Hbase:列式存储,基于BigTable,大数据库,可以储存海量数据,
      借助于RowKey的设计,数据查询性能极高(秒级别上亿)
      在这里插入图片描述

    Hadoop发行版本的选择

    在这里插入图片描述

    Hadoop官方的源码,只是解决单个框架的问题,假如,你想使用多个组件一起综合使用
    会有许多架包冲突的问题
    建议选用CDH
    商业版本:CDH,安装时候会提供CM的界面操作安装
    地址:http://archive-primary.cloudera.com/cdh5/cdh/5/
    Cloudera Manager包括server端和agent;server端主要作用是监控集群,分发配置集群等,agent端主管集群各节点
    采用CDH相同版本,那么框架之间的冲突就是没有的

    接下来,分别介绍Hadoop各个组件

  • 相关阅读:
    tornado用户验证
    tornado cookie安全性
    XSS攻击
    《R语言入门》语言及环境简单介绍
    angular学习(十五)——Provider
    Tomcat 8(九)解读Tomcat组件的生命周期(Lifecycle)
    Windows之Xmanager连接linux打开Oracle视图操作
    CreateEvent和SetEvent及WaitForSingleObject的使用方法
    利用Sharepoint 创建轻量型应用之基本功能配置!
    android开发源代码分析--多个activity调用多个jni库的方法
  • 原文地址:https://www.cnblogs.com/liuge36/p/12614787.html
Copyright © 2011-2022 走看看