- 博客(13)
- 收藏
- 关注
原创 HDFS replaceBlock方法
这个方法用于Blancing和Storage Policy Satisfier (SPS),源代码注释写的其实还是很好的。其中,copyBlock方法仅在这个方法中使用,可以说和replaceBlock方法绑定了。注意,下列代码是在源DN上调用的,是要写回数据块给调用replaceBlock方法的机器的。
2022-10-28 16:20:48
451
原创 HDFS 流式接口
DataTransferProtocol是用来写入或读出DataNode(简称DN)上的数据的流式接口,定义了如下关于数据传输的方法
2022-10-27 16:09:18
703
原创 愉快地编译Hadoop
git clone报fatal: early EOF fatal: index-pack failed。这是git拉取文件太大太多造成的,用下列命令即可。
2022-10-27 11:26:48
658
原创 浅析HDFS FairCallQueue
默认情况下,成本中不考虑队列等待处理所花费的时间和等待获取锁所花费的时间,无锁处理所花费的时间是base加权,处理读锁的权重是base的 10 倍,使用排他锁的处理时间权重高 100 倍。比如,在相同时限内,A用户请求50次,B用户请求5次,则B用户将放入优先级较高的队列。例如,如果优先级 1 的响应时间阈值设置为 10 秒,但该队列中的平均响应时间为 12 秒,则优先级为 2 或更低的传入请求将收到退避异常,而优先级为0 和 1 将正常进行。的扩展,它基于用户操作的总处理时间来确定用户的优先级。
2022-10-17 20:55:03
944
原创 HDFS Client加载配置过程源码解析
Configuration类是hadoop的配置类,而客户端获取配置最常用的方式,就是Java Configuration类的addResource()方法和set()方法。此外,还可以通过shell加 -D 的方式,获取指定配置项。本文将通过以下代码,深入源码,探究Client的配置加载过程。本次分析,hadoop版本为3.3.4。
2022-09-15 15:32:04
1090
原创 HDFS Remote Debug
显示listening,正在监听,此时需要去idea上的hadoop2.7本地代码打断点进行debug。其中,address端口号为自定义的端口号。自此,这个hadoop开启了debug模式。使用一台主机充当客户端(client),安装任意版本的hadoop(这里选用2.7)。配置client如图,注意图中标红箭头的位置,要和远程的注意ip地址和端口号一致。至此,我们完成了远程连接部分,接下来就可以愉快地步进和debug了。以读操作为例,进行client remote debug。...
2022-08-30 10:21:01
550
原创 HDFS DataNode结构概述
FsDataset类——文件系统数据集:抽象了Datanode管理数据块的所有操作, 例如创建数据块文件、维护数据块文件和校验和文件的对应关系等。在数据层的基础上,Datanode会执行若干HDFS逻辑,例如向Namenode汇报数据块存储状态、发送心跳、扫描损坏的数据块等,我们将Datanode上负责执行HDFS逻辑的部分抽象为逻辑层。逻辑层包括三个主要的模块。Datanode的所有服务都是建立在数据块存储功能基础上的, 我们将Datanode中负责在本地磁盘存储数据块的部分抽象为数据层。......
2022-08-26 20:13:50
1635
转载 Linux环境下如何配置JAVA_HOME
1、输入命令 :如有显示出路径,说明已经进行了配置,否则继续下一步。2、找到本机jdk安装的位置:3、vim /etc/profile在文件最后加入:4、source /etc/profile,刷新文件,立即生效
2022-07-13 17:04:10
10669
原创 HDFS中的设计模式
1 工厂模式BlockReader接口的实现:BlockReaderLocal、BlockReaderLegacy和RemoteBlockReader22 建造者模式BlockReaderFactory类、ClientNamenodeProtocolTranslatorPB类和ClientNamenodeProtocolServerSideTranslatorPB类的构造方式3 代理模式*RPC过程中会生成ClientNamenodeProtocolPB接口的动态代理对象,通过invoke方法间接
2021-09-15 17:20:53
370
原创 hadoop-Dynamometer实践初探
原理Dynamometer是一款由linked开源的HDFS性能测试工具,旨在以最小的硬件资源来模拟真实的集群效果,以此做相应的性能测试。Dynamometer 运行在一个 YARN 应用程序上,主要有以下三个功能:1.Infrastructure——集群的模拟,启动单个 NameNode 和可配置数量的 DataNode,将整个 HDFS 集群模拟为单个应用程序。2.Workload ——客户端(client)的模拟,以NameNode 上生成负载。3.driver——协调其他两个组件,让用户用
2021-09-15 17:19:24
309
原创 hadoop fsck命令分析 + 源码解析
fsck命令分析HDFS支持fsck命令用以检查各种不一致。fsck用以报告各种文件问题,如block丢失或缺少block等。fack命令用法如下:$HADOOP_HOME/bin/hdfs fsck [-move | -delete | -openforwrite] [-files [-blocks [-locations | -racks]]]<path> 检查的起始目录-move 将损坏的文件移动到/lost+found下面-delete
2021-08-25 20:30:13
1912
原创 最好背的二叉树前中后序迭代遍历模板,代码仅有一行之差别
三版代码均只有16行废话不多说,直接上代码前序遍历class Solution{ public List<Integer> preorderTraversal(TreeNode root){ List<Integer> res = new LinkedList<>(); Deque<TreeNode> d = new LinkedList<>(); while(!d.isEmpty()
2021-08-09 23:19:10
472
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人