【HDFS】BlockManager#checkRedundancy方法详解

BlockManager#checkRedundancy这个方法只有一处调用点,
就是FSNamesystem#finalizeINodeFileUnderConstruction方法。

TODO:补充FSNamesystem#finalizeINodeFileUnderConstruction方法的调用点。

checkRedundancy方法的参数的BlockCollection对象bc,解释一下,INodeFile类是BlockCollection接口的实现类,所以这里可以把bc理解成INodeFile对象(即一个文件),BlockCollection接口提供了getBlocks方法,用于获取这个对象的所有块信息(返回值是BlockInfo[])。

此方法的功能是:检查bc的每个块是否有充足的冗余度。如果冗余度不够,则可能有丢失数据的风险,因此需要添加到reconstruction的队列里。 如果冗余度超了期望的replication factor,则浪费存储空间,需要把它当做extra redundancy block来处理,删除多余冗余副本恢复到期望replication factor个副本数。

  /*** Check sufficient redundancy of the blocks in the collection. If any block* is needed reconstruction, insert it into the reconstruction queue.* Otherwise, if the block is more than the expected replication

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/27920.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SA8450 camera 源码分析

目录 代码路径:/apps/qnx_ap/AMSS/multimedia/camera_safe/qcd Initialize the IFE and CSI Phy devices 初始化IFE 初始化 IFE CSID VFE 的结构体 获取IFE CSID base addr 的vaddr VFEDriver_Init RegisterISTCallback HwMgr_CSIPHYOpen 代码路径&#xff1…

【每日一题】—— B. Maximum Rounding(Codeforces Round 891 (Div. 3))

🌏博客主页:PH_modest的博客主页 🚩当前专栏:每日一题 💌其他专栏: 🔴 每日反刍 🟡 C跬步积累 🟢 C语言跬步积累 🌈座右铭:广积粮,缓称…

VIM 编辑器: Bram Moolenaar

VIM 用了很长时间, 个人的 VIM 配置文件差不多10年没有更新了。以前写程序的时候, 编辑都用这个。 linux kernel, boost规模的代码都不在话下。现在虽然代码写的少了,依然是我打开文件的首选。 现在用手机了,配个蓝牙键…

无涯教程-Perl - endnetent函数

描述 此功能告诉系统您不再希望使用getnetent从网络列表中读取条目。 语法 以下是此函数的简单语法- endnetent返回值 此函数不返回任何值。 例 以下是显示其基本用法的示例代码- #!/usr/bin/perluse Socket;while ( ($name, $aliases, $addrtype, $net) getnetent() )…

[RTKLIB]模糊度固定相关问题(一)

文章目录 一、改进的模糊度固定算法1. 简述模糊度固定算法思路2. 详解 manage_amb_LAMBDA()函数3. 我的思考和疑问 一、改进的模糊度固定算法 早些时候在阅读RTKLIB源码时,就对其模糊度固定算法感觉非常恐惧,首先是觉得整数最小二乘降相关是一个非常难的…

Android 9-- 源码角度: Home键的监听和拦截

在做应用层APP需求的过程中,HOME键的监听,Back键的监听,这都是很常见的问题,那你有试过,去拦截HOME键的事件吗,有去了解过如何处理吗,流程如何 首先大家应该先了解一种情况,就是Andr…

16-4_Qt 5.9 C++开发指南_Qt 应用程序的发布

文章目录 1. 应用程序发布方式2. Windows 平台上的应用程序发布 1. 应用程序发布方式 用 Qt 开发一个应用程序后,将应用程序提供给用户在其他计算机上使用就是应用程序的发布。应用程序发布一般会提供一个安装程序,将应用程序的可执行文件及需要的运行库…

Python 网络请求之requests

1.导入 requests 库 安装 requests 库 pip3 install "requests2.29.0"这里安装2,29.0版本,我在安装最新版本时,请求接口会报错: urllib3 v2.0 only supports OpenSSL 1.1.1, currently the ssl module is compiled with LibreSS…

Vue中使用Sortable:A和B拖拽交换位置之后,B和A又神奇得换回去了,但下面的数据确实已交换

参考:Vue中使用Sortable 1 问题 Vue中使用Sortable拖拽表头达到改变列的位置的效果, 想法:使用该组件进行拖拽列,但它不会切换原表头下的数据,因此:1、先拖拽,2、手动交换原先vue中的表头&am…

嵌入式面试4 Linux编程

23.设fp已定义,执行语句fpfopen(“file”,“w”);后,以下针对文本文件file操作叙述的选项错误的是:(ACD)【多选】 A 可以随意读和写 B 只能写不能读 C 可以在原有内容后追加写 D 写操作结束后可以从头开始读 权重:高 备注:还要理解…

Linux tun虚拟网卡通信初识

什么是linux tun设备 Linux TUN 设备是一种虚拟网络设备,用于在用户空间和内核空间之间建立数据通道,使用户空间程序可以通过这个设备与内核网络栈进行交互。TUN 设备是一种通用的网络隧道设备,常用于实现虚拟专用网络(VPN&#…

【湍流介质的三维传播模拟器】全衍射3-D传播模拟器,用于在具有随机和背景结构的介质中传播无线电和光传播(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

华为OD机试(含B卷)真题2023 算法分类版,58道20个算法分类,如果距离机考时间不多了,就看这个吧,稳稳的

目录 一、数据结构1、线性表2、优先队列3、滑动窗口4、二叉树5、并查集6、栈 二、算法1、基础算法2、字符串3、图4、动态规划5、数学 三、漫画算法2:小灰的算法进阶参与方式 很多小伙伴问我,华为OD机试算法题太多了,知识点繁杂,如…

中文版开源Llama 2同时有了语言、多模态大模型,完全可商用

可以说,AI 初创公司 LinkSoul.Al 的这些开源项目让海外开源大模型在国内的普及和推广速度与国际几乎保持了一致。 7 月 19 日,Meta 终于发布了免费可商用版本 Llama 2,让开源大模型领域的格局发生了巨大变化。 Llama 2 模型系列包含 70 亿、…

Python识别抖音Tiktok、巨量引擎滑块验证码识别

由于最近比较忙,所以本周搞了一个相对简单的验证码,就是抖音Tiktok的滑块验证码,这也是接到客户的一个需求。这种验证码通常在电脑端登录抖音、巨量引擎的的时候出现。 首先看一下最终的效果: 验证码识别过程 1、利用爬虫采集图…

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo

1、什么是 IDEA IDEA 全称 IntelliJ IDEA,是 Java 编程语言开发的集成环境。IntelliJ 在业界被公认为最好的 Java 开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE 支持、各类版本工具(git、SVN 等)、JUnit、CVS 整合、代码分析、 创新的 GUI…

04-5_Qt 5.9 C++开发指南_QComboBox和QPlainTextEdit

文章目录 1. 实例功能概述2. 源码2.1 可视化UI设计2.2 widget.h2.3 widget.cpp 1. 实例功能概述 QComboBox 是下拉列表框组件类,它提供一个下拉列表供用户选择,也可以直接当作一个QLineEdit 用作输入。OComboBox 除了显示可见下拉列表外,每个…

【Python学习】Python大版本新增内容精选

🌈据说,看我文章时 关注、点赞、收藏 的 帅哥美女们 心情都会不自觉的好起来。 前言: 🧡作者简介:大家好我是 user_from_future ,意思是 “ 来自未来的用户 ” ,寓意着未来的自己一定很棒~ ✨个…

【Docker 学习笔记】Docker 命令大全

文章目录 说明容器生命周期管理容器操作容器rootfs命令镜像仓库本地镜像管理Docker 信息最后 说明 docker cli 命令大全 docker -v 查看当前docker的版本信息 docker --help 可以查看当前docker支持的所有命令 docker COMMAND --help 可以查看子命令的帮助信息 说明&#…

golang云原生怎么学?

学习golang云原生有哪些好处,他们的优缺点又有哪些? 一.好处有哪些? 1.高效性能:Golang是一门编译型语言,具有卓越的执行效率和并发处理能力。在云原生环境中,高效的性能对于应对大规模和高负载的分布式系…