A Novel Distributed File System Using Blockchain Metadata——论文泛读

Wireless Personal Communications 2023 Paper 分布式元数据论文阅读笔记整理

问题

随着来自不同来源(如在线社交媒体、物联网、移动数据、传感器数据、黑匣子数据等)的大量数据以指数级的速度增长,集群计算已成为数据处理中不可避免的一部分。分布式文件系统定义了不同的方法来在不同的集群计算节点之间分发、读取和删除文件。但流行的分布式文件系统(如Google file System和Hadoop distributed file System)集中存储元数据,可能产生单点故障,从而需要备份和替代解决方案在故障时恢复元数据。此外,名称节点服务器是使用昂贵且可靠的硬件构建的,对于中小型集群,维护昂贵的名称节点服务器是不划算的,而使用廉价的商品硬件作为替代又很容易出现硬件故障。

本文方法

本文提出了一种新的无中心名称节点的分布式文件系统 DFS-DM,在对等网络连接的集群上分发文件。该文件系统使用分布式共识和哈希来分发元数据。尽管分布式元数据对公众可见,但方法确保了它是不可变的和无可辩驳的。

几个特性:

  • 通过将单个辅助副本作为副本和奇偶校验文件来维护,从而提供高可用性。如果单个节点出现故障,则会自动提取辅助副本。如果辅助副本也出现故障,则使用与数据文件一起存储的奇偶校验文件来重建相应的块。

  • 添加CRC校验和文件来提供错误检测过程。

  • 遵循P2P网络配置,对网络上的所有节点具有同等优先级,使用廉价的商品硬件实现。

  • 使用区块链将元数据分发给P2P网络上的所有对等体。

所提出的文件系统已在谷歌云平台上成功测试,并与Hadoop分布式文件系统进行了比较,实现了更好的效果。

实验

实验对比:读写时间、执行时间

实验参数:数据大小

总结

使用区块链的思想构建分布式文件系统元数据。避免使用昂贵的单个名称节点,使用多个廉价硬件,通过分布式共识确保元数据不被修改,通过单个辅助副本和奇偶校验进行故障恢复。

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

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

相关文章

【移动安全】对webview漏洞的一些分析

这次分析的app如下: 打开发现该app发现需要登录界面: 拖进jadx看一下,先来看一下AndroidManifest.xml文件 发现有两个类是导出,再来分析这两个类 这个RegistrationWebView类利用webview.loadUrl进行加载网页 java public class…

【JavaWeb】Day33.MySQL概述

什么是数据库 数据库:英文为 DataBase,简称DB,它是存储和管理数据的仓库。 像我们日常访问的电商网站京东,企业内部的管理系统OA、ERP、CRM这类的系统,以及大家每天都会刷的头条、抖音类的app,那这些大家所…

VBA技术资料MF139:在PowerPoint中添加末尾幻灯片

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套,分为初级、中级、高级三大部分,教程是对VBA的系统讲解&#…

【问题处理】银河麒麟操作系统实例分享,理光打印机lpr协议打印问题处理

1.问题环境 系统版本:Kylin-Desktop-V10-SP1-General-Release-xxx-20221120-x86_64 内核版本:linux 5.4.18-44kt-generic 系统版本:麒麟v10 sp1 处理器:kx6640ma 2.问题描述 问题详细描述:用户通过lpr协议去连接…

Azure runbook 使用用户托管标识查看资源状态

Azure runbook 使用用户托管标识查看资源状态 在托管标识里创建用户托管标识在被查看或变更资源进行授权创建自动化账号和runbook发布脚本添加计划 在托管标识里创建用户托管标识 在被查看或变更资源进行授权 这里是选取的Analysis Services 资源 创建自动化账号和runbook 发布…

【1】初识 Python

【1】初识 Python 1、编程语言(1) 语言(2) 编程语言(3) 如何利用编程语言与计算机交流(4) 常见的编程语言(5) 语法 2、Python 简介(1) 什么是 Python(2) Python 能做什么(3) Python 的由来(4) Python的特点① 语法精简② 生态好,开发效率高③ Python开发初体验&…

LC 226.翻转二叉树

226. 翻转二叉树 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 1: 输入: root [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1] 示例 2: 输入: root [2,1,3] 输出&#xff1a…

以动态库链接库 .dll 探索结构体参数

Dev c C语言实现第一个 dll 动态链接库 创建与调用-CSDN博客 在写dll 插件中发现的函数指针用途和 typedef 的定义指针的用法-CSDN博客 两步之后,尝试加入结构体实现整体数据使用。 注意结构体 Ak 是相同的 代码如下 DLL文件有两个,dll.dll是上面提到…

SpringCloud Alibaba Sentinel 实现熔断功能

一、前言 接下来是开展一系列的 SpringCloud 的学习之旅,从传统的模块之间调用,一步步的升级为 SpringCloud 模块之间的调用,此篇文章为第十六篇,即使用 Sentinel 实现熔断功能。 二、 Ribbon 系列 首先我们新建两个服务的提供者…

演示python连接数据库

先准备好数据库的配置, 域名,端口号,用户,密码,数据库名称。安装好【pymysql】库。 注意这里的db里,输入 数据库的分库名称,不是输数据库的名称 # 导包 import pymysql# # 连接到MySQL数据库 …

RuoYi-Vue若依框架-vue前端给对象添加字段

处理两个字段的时候有需求都要显示在下拉框的同一行,这里有两种解决方案,一是后端在实体类添加一个对象,加注解数据库忽略处理,在接口处拼接并传给前端,二是在前端获取的数据数组内为每个对象都添加一个字段&#xff0…

LeetCode热题100:哈希

1.两数之和 题目链接:两数之和 题目描述:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数…