Hadoop基本知识点总结

内容参考链接:慕课网--Hadoop大数据平台架构基础篇
Google大数据技术(3大):MapReduceBigTableGFS
革命性的变化

  1. 成本降低,能用Pc 机,就不用大型机和高端存储。
  2. 软件容错硬件故障视为常态,通过软件保证可靠性。
  3. 简化并行分布式计算,无须控制节点同步和数据交换。

模仿Google大数据技术的开源实现:Hadoop

Hadoop是什么:分布式存储+分布式计算平台

包含两个核心组成
(1)HDFS:分布式文件系统,存储海量的数据
(2)MapReduce****:并行处理框架,实现任务分解和调度

Hadoop可以用来做什么:搭建大型数据仓库,PB级数据的存储、处理、分析、统计等业务。

Hadoop优势:

  1. 高扩展
  2. 低成本
  3. 成熟的生态圈
    Hadoop生态系统:
    1、Hive:sql->mapreduce
    2、Hbase:存储结构化数据的分布式数据库
    与传统的关系型数据库不同,Hbase放弃事务特性,追求更高的扩展;
    与hdfs不同:hbase提供数据的随机读写和实时访问,实现对表数据的读写功能;
    3、Zookeeper:监控Hadoop集群中每个节点的状态

Hadoop安装:
(1) 准备liunx环境
(2) 安装JDK
(3) 配置hadoop

HDFS的体系架构:
HDFS基本概念:


  • HDFS的文件被分成块进行存储;块的默认大小为64MB;块是文件存储处理的逻辑单元
  • NameNode
    是管理节点,存放文件元数据
    (1) 文件与数据块的映射表
    (2) 数据块与数据节点的映射表
  • DataNode
    是工作节点,存放数据块
HDFS体系结构

HDFS中数据管理与容错:

(1) 数据块副本,每个数据块3个副本,分布在两个机架内的三个节点

数据块副本

(2) 心跳检测:DataNode定期向NameNode发送心跳信息
心跳检测

(3) 二级NameNode
定期同步元数据映像文件和修改日志,NameNode发生故障时,备胎转正
二级NameNode

HDTS读取文件的流程:
读取文件

HDTS写入文件的流程:
写入文件

HDFS的特点:

1、 数据冗余,硬件容错
2、 流式的数据访问,写一次,读多次
3、 存储大文件

HDFS
适合数据批量读取吞吐量高;
不适合交互式应用,比如数据库,低延迟很难满足

适合一次写入多次读取,顺序读写
不支持多用户并发写相同文件

命令:

hadoop fs –ls /

把当前目录下HDFS文件夹打印出来

hadoop fs –put tt.txt input/

把本地的一个文件tt.txt放到input目录下

hadoop fs –mkdir input

建立input目录

hadoop fs –get input/tt.txt tt1.txt

从hdfs下载文件到本地

hadoop dfsadmin –report

查看文件系统内所有信息

MapReduce原理:
分而治之,一个大任务分成多个子任务(Map),并行执行后,合并结果(reduce)

MR原理

MapReduce的运行流程:

体系结构

基本概念

  • job &task
    一个job会被拆分成多个task,task分为MapTask和ReduceTask
  • JobTracker
    (1) 作业调度
    (2) 分配任务,监控任务执行进度
    (3) 监控taskTracker的状态
  • TaskTracker
    (1) 执行任务
    (2) 向JobTracker汇报任务状态

MapReduce作业执行过程:

作业执行过程

MapReduce的容错机制:
(1) 重复执行
重复执行4次后,若还是失败,则放弃
(2) 推测执行
Map端执行完成后,reduce端才会开始,比如某个taskTracker算的特别慢,会找一个跟这个taskTracker一样任务的去执行,保证整个任务不会因为某个tasktracker的故障而执行效率低。

Mapreduce的应用案例:

(1)应用案例一:wordcount单词计数
计算文件中出现每个单词的频数
输入结果按照字母顺序进行排序
(2)应用案例二:利用MR进行排

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 之前的有点忘记了,这里在云笔记拿出来再玩玩.看不懂的可以留言 大家可以尝试下Ambari来配置Hadoop的相关环...
    HT_Jonson阅读 3,080评论 0 50
  • 当数据量增大到超出了单个物理计算机存储容量时,有必要把它分开存储在多个不同的计算机中。那些管理存储在多个网络互连的...
    单行线的旋律阅读 1,973评论 0 7
  • 目的这篇教程从用户的角度出发,全面地介绍了Hadoop Map/Reduce框架的各个方面。先决条件请先确认Had...
    SeanC52111阅读 1,782评论 0 1
  • 首先,我们在使用前先看看HDFS是什麽?这将有助于我们是以后的运维使用和故障排除思路的获得。 HDFS采用mast...
    W_Bousquet阅读 4,292评论 0 2
  • 第10章文件和异常你已经掌握了编写组织有序而易于使用的程序所需的基本技能。该考虑让程序目标更明确,用途更强大了。在...
    三千院贺Hall阅读 193评论 0 0