摘要:
MapReduce工作流程图 流程详解(重点) MapTask 待处理的文本通过submit()方法,获取待处理的数据信息,然后根据InputFormat切片方法机制,生成切片方法文件。把切片方法文件和资源配置文件全部提交在资源路径。提交的信息有:Job.split、wc.jar、Job.xml 把 阅读全文
摘要:
InputFormat简介 InputFormat:管控MR程序文件输入到Mapper阶段,主要做两项操作:怎么去切片?怎么将切片数据转换成键值对数据。 InputFormat是一个抽象类,没有实现怎么切片,怎么转换,由它的子类实现。其中InputFormat的默认实现类是FileInputForm 阅读全文
摘要:
序列化和反序列化 序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储(持久化)和网络传输。 反序列化就是将收到字节序列(或其他数据传输协议)或者是硬盘的持久化数据,转换成内存中的对象。 主要作用是将MR中产生的数据以序列化类型在网络中、不同的电脑中进行数据传递 引入序列化的原因 阅读全文
摘要:
单词计数案例 需求 在一堆给定的文本文件中统计输出每一个单词出现的总次数 环境准备 在 /opt/test 目录下创建一个文件 wordcount.txt ,里面键入几个单词,并用空格分隔开 Java实现 package com.zyd; import org.apache.hadoop.conf. 阅读全文
摘要:
DateNode工作机制 详细流程 一个数据块在datanode上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。 DataNode启动后向namenode注册,通过后,周期性(1小时)的向namenode上报所有的块信息。 心跳是每3 阅读全文
摘要:
hadoop分布式文件存储系统,用来解决海量数据的存储问题 HDFS的组成 核心配置文件:hdfs-site.xml、core-site.xml NameNode:负责整个HDFS集群的管理(比如监控DataNode的运行状态、调度DataNode去处理数据);存储元数据(包含数据的基本信息,有两个 阅读全文
摘要:
引言 NameNode: 存储元数据 管理整个HDFS集群 DataNode: 存储数据的block SecondaryNameNode: 辅助HDFS完成一些事情 NameNode和SecondaryNameNode工作流程 编辑日志文件:edits 记载客户端对HDFS的增删改查的操作日志 镜像 阅读全文
摘要:
HDFS写数据流程 数据写入流程 客户端向namenode请求上传文件,namenode检查目标文件是否已存在,父目录是否存在。 namenode返回是否可以上传。 客户端请求第一个 block上传到哪几个datanode服务器上。 namenode返回3个datanode节点,分别为dn1、dn2 阅读全文
摘要:
通过Java代码操作HDFS集群 目录 引言 Idea连接HDFS 第一步:引入HDFS依赖 第一种引入方式(jar包) 第二种引入方式(使用maven引用) 引入项目依赖的时候: maven项目的几个核心的生命周期: 第二步:idea操作 配置HDFS的访问路径 单元测试 HDFS的JavaAPI 阅读全文
摘要:
目录 一、HDFS概述 二、HDFS特点 三、HDFS集群组成:主从架构 一个主节点,多个从节点 1. NameNode(名称节点 / 主节点) HDFS集群的管理者 2. DataNode (数据节点 / 从节点) 3. SecondaryNameNode (第二名称节点) 四、HDFS传输文件方 阅读全文