Hadoop
文章平均质量分 82
个人学习hadoop的经验分享
阿星_Alex
平平安安,健健康康
展开
-
MapReduce学习三:Shuffle
一、MapReduce详细工作流程Map阶段reduce阶段二、Shuffle机制流程图Map方法之后,Reduce方法之前的数据处理过程称之为Shuffle。2.1Partition分区分区指的是:将MapReduce统计的结果按照条件输出到不同的文件中。public int getPartition(K key,V value,int numReduceTasks){ return (key.hashCode()&Intger.MAX_.原创 2022-01-20 20:53:50 · 2169 阅读 · 0 评论 -
MapReduce学习二:切片机制
一、InputFormat数据输入1.1切片与MapTask并行度决定机制问题引出:MapTask的并行度决定Map阶段的任务处理并发度,进而影响到整个Job的处理速度。思考:MapTask是否越多越好?MapTask并非越多越好,需要根据数据量合理设置MapTask的数量,否则不但不会提高集群性能,反而适得其反。举例:1k数据,根本不需要多个MapTask,反而启动MapTask花费的时间比处理数据多的多。MapTask并行度决定机制数据块:...原创 2022-01-16 16:51:18 · 2209 阅读 · 0 评论 -
MapReduce学习一:概述及简单案例编写
一、概述1.1MapReduce定义MapReduce是一个分布式运算程序的编程框架,是用户开发“基于hadoop的数据分析应用”的核心框架。MapReduce的核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。1.2MapReduce优缺点优点1.MapReduce易于编程它简单的实现一些接口,就可以完成一个分布式程序,这个分布式程序可以分布到大量廉价的PC机器上运行...原创 2022-01-08 19:49:10 · 1395 阅读 · 0 评论 -
HDFS学习五:HDFS2.x新特性
1.集群间数据拷贝方法一:scp命令,这个在hadoop完全分布式运行模式一文中有介绍。方法二:采用distcp命令实现两个Hadoop集群之间的递归数据复制举例如下,将hello.txt文件从102集群拷贝到103,二者都是namenode所在节点主机名bin/hadoop distcp hdfs://hadoop102:9000/user/hello.txt hdfs://hadoop103:9000/user/hello.txt 2.小文件归档2.1HDFS存储小文件的弊端原创 2022-01-05 21:20:11 · 114 阅读 · 0 评论 -
HDFS学习四:DataNode的工作机制
1. DataNode的工作机制(1)一个数据块在DataNote上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。(2)DataNode启动后向NameNode注册,通过后,周期性(1小时)的向NameNode上报所有的块信息。(3)心跳是每3秒一次,心跳返回结果带有NameNode给该DataNode的命令如复制块数据到另一台机器,或删除某个数据块。如果超过10分钟没有收到某个DataNode的心跳,则认为该节点不可用。原创 2022-01-05 21:14:15 · 1191 阅读 · 0 评论 -
HDFS学习三:NameNode和SecondaryNameNode工作机制
一、NameNode和SecondaryNameNode1.1 NN与2NN的工作机制内存中存储元数据,可靠性怎么保证?为防止元数据丢失,会将元数据备份一份:磁盘中的备份元数据存储在FsImage。若是更新内存元数据同时更新Fsimage的话,效率太低,不更新的话,数据一致性怎么保证?内存中元数据更新机制:引入了Edit文件(只进行追加操作,效率很高)。每当元数据有更新或添加元数据时,修改内存中的元数据并追加到Edit中。这样,一旦NameNode节点断电,可以通过合并FsImage和E原创 2022-01-04 22:26:58 · 436 阅读 · 1 评论 -
HDFS学习二:客户端操作
HDFS环境准备及客户端测试、HDFS的api介绍,读写数据原理介绍原创 2022-01-02 18:04:49 · 1736 阅读 · 1 评论 -
HDFS学习一:简介及shell操作
一、简介1、HDFS背景及定义背景:由于数据量越来越大,一个操作系统存不下所有数据,而分开存储到多个操作系统的话,管理和维护又有诸多不便。迫切需要一种能管理多个机器文件的系统。于是就诞生了分布式文件管理系统。HDFS便是分布式文件管理系统中的一种。定义:HDFS(Hadoop Distributed File System) ,是一个用于存储文件的分布式系统,通过目录树来定位文件;由很多服务器联合起来实现功能,服务器具有各自的角色和功能。使用场景:适合一次写入,多次读出的场景,不原创 2021-12-31 18:22:37 · 765 阅读 · 0 评论 -
Hadoop入门四:centos编译hadoop源码(3.3.1版本)
0、工具准备jdk-8u311-linux-x64.tarapache-maven-3.8.4-bin.tarhadoop-3.3.1-src.tarapache-ant-1.9.16-bin.tar(build工具,打包用)protobuf-2.5.0.tar(序列化的框架)1、编译工具安装2、源码编译原创 2021-12-29 10:24:01 · 1217 阅读 · 0 评论 -
Hadoop入门三:完全分布式运行模式
1、scp、rsync以及集群分发脚本xsyncscp案例(拷贝工具)将当前主机一个文件完全复制到另一台主机上scp -r /etc/profile root@主机名或ip:/etc/profile将一个主机上的文件完全复制到当前主机scp -r root@主机名或ip:/etc/profile /etc/profile将一个主机上的文件完全复制到另一个主机上scp -r root@主机名或ip:/etc/profile root@主机名或ip:/etc/profile原创 2021-12-28 17:47:36 · 625 阅读 · 0 评论 -
Hadoop入门二:本地模式及伪分布式模式使用
一、本地模式官方案例之Grep首先在hadoop目录下创建input文件夹然后将etc/hadoop路径下xml格式的文件复制到input文件夹下mkdir input cp etc/hadoop/*.xml input/然后执行以下命令,意思就是使用hadoop命令执行如下案例jar包,并且按照input下的规则将内容用正则表达式过滤,最后结果存入output文件夹,这是一个演示案例,大家都可以试一试感觉,对这种操作有个初步认识。hadoop jar share/hadoo原创 2021-09-17 01:30:46 · 237 阅读 · 0 评论 -
Hadoop入门一:Linux云服务器搭建Java和Hadoop环境
一、首先下载JDK和Hadoop对应的包JDK官网地址:Java SE Development Kit 8 - Downloads:HADOOP下载地址:Apache Download Mirrors然后我们将下载好的包传到linux上二、解压缩并配置系统变量tar -zxvf jdk-8u301-linux-x64.tar.gz配置系统环境变量vim /etc/profile使修改后的配置生效,看看是否安装成功source /etc/profile...原创 2021-09-13 00:30:59 · 167 阅读 · 0 评论 -
Hadoop入门零:简单介绍
1、Hadoop是什么?1) Hadoop是一个由 Apache基金会所开发的分布式系统基础架构2)主要解決,海量数据的存储和海量数据的分析计算问题3)广义上来说, Hadoop通常是指一个更广泛的概念 -Hadoop生态圈2、Hadoop的发展历史1) Lucene框架是 Doug Cutting开创的开源软件,用ava书写代码,实现与Google类似的全文搜索功能,它提供了全文检索引擎的架构,包括完整的査询引擎和索引引擎。2)2001年年底 Lucene成..原创 2021-09-09 00:12:31 · 135 阅读 · 0 评论 -
CentOS7桥接网络模式下搭建集群详细教程
0、简介如今学习中,一台主机越来越无法满足模拟真实项目的场景,为了节省成本,我们要学习如何通过虚拟机搭建集群,模拟出多节点协作的场景。(额,土豪直接多买几台电脑也是可以的)1、下载VMware这个网上搜教程很简单,一定要专业版的(专业版才有快照和克隆等功能,这些在开发学习中用必不可少)2、下载centos7的镜像官方网址http://isoredirect.centos.org/centos/7/isos/x86_64/选择其中一个镜像3、安装第一台虚拟机...原创 2021-03-14 22:09:29 · 266 阅读 · 0 评论