Hadoop学习(一)

Hadoop学习

  • 大数据简介

    大数据是一个概念,也是一门技术,是在以Hadoop为代表的大数据平台框架上进行各种数据分析的技术

    大数据包括了以Hadoop和Spark为代表的基础大数据框架,还包括实时数据处理,离线数据处理;数据分析,数据挖掘和用机器算法进行预测分析等技术。

  • hadoop基础

    • Hadoop是一个开源的大数据框架
    • Hadoop是一个分布式计算的解决方案
    • Hadoop=HDFS(分布式文件系统)+MapReduce(分布式计算)

    其核心如下:1)HDFS分布式文件系统(存储是大数据技术的基础);2)MapReduce编程模型(分布式计算是大数据应用的解决方案

    HDFS应用场景:普通的成百上千的机器;按TB甚至PB为单位的大量的数据;简单便捷的文件获取

  • Haddoop概念

    • 数据块

      数据块是抽象块而非整个文件作为存储单元;默认大小为64MB,一般设置为128MB,备份*3

    • NameNode

      1)管理文件系统的命名空间,存放文件元数据; 2)维护着文件系统的所有文件和目录,文件与数据块的映射;3)记录每个文件中各个块所在数据节点的信息

    • DataNode

      1)存储并检索数据块;2)向NameNode更新所存储块的列表

    • HDFS优缺点

      优点:适合大文件存储,支持TB、PB级的数据存储,并有副本策略;可以构建在廉价的机器上,并有一定的容错和恢复机制;支持流式数据访问,一次写入,多次读取最高效。

      缺点:不适合小量文件存储;不适合并发写入,不支持文件随机修改;不支持随机读等低延迟的访问方式。

  • HDFS写/读流程

    • 写流程

      1)客户端向NameNode发起写数据请求;2)分块写入DataNode节点,DataNode自动完成副本备份;3)DataNode向NameNode汇报存储完成,NameNode通知客户端

    • 读流程

      1)客户端向NameNode发起读数据请求;2)NameNode找出距离最近的DataNode节点信息;3)客户端从DataNode分块下载文件

  • 常用HDFS Shell命令

    • 类Linux系统:ls、cat、mkdir、rm、chmod、chown等
    • HDFS文件交互:copyFromLocal、copyToLocal、get、put

      还可以利用python进行hdfs相关处理

  • Yarn简介

    • 组成

      1)ResourceManager:分配和调度资源;启动并监控ApplicationMaster;监控NodeManager

      2)ApplicationMaster:为MR类型的程序申请资源,并分配给内部任务;负责数据的切分;监控任务的执行与容错

      3)NodeManager:管理单个节点的资源;处理来自ResourceManager的命令;处理来自ApplicationMaster的命令

  • MapReduce编程模型

    • 输入一个大文件,通过Split之后,将其分为多个分片;
    • 每个文件分片由单独的机器去处理,这就是Map方法;
    • 将各个机器计算的结果进行汇总并得到最终的结果,这就是Reduce方法

    在处理大量数据上有优势

  • HBase简介

    • 高可靠,高性能,面向列,可伸缩,实时读写的分布式数据库
    • 利用HDFS作为其文件存储系统,支持MR程序读取数据
    • 存储非结构化和半结构化数据

    重要名词:RowKey(数据唯一标识,按字典排序);Column Family(列族,多个列的集合,最多不要超过3个)TimeStamp时间戳(支持多版本数据同时存在)

  • Spark简介

    • 基于内存计算的大数据并行计算框架
    • Spark是MapReduce的替代方案,兼容HDFS,HIVE等数据源

    其优势:基于内存计算的分布式计算框架;抽象出分布式内存存储数据结构,弹性分布式数据集RDD;基于事件驱动,通过线程池复用线程提高性能。

  • Hadoop总结

    • 存储(HDFS)与计算(MapReduce模型)
    • 可以用shell命令和python程序操作HDFS

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值