杉岩数据:MOS对象存储为IPFS打造坚实底座

2023-10-29 14:32

本文主要是介绍杉岩数据:MOS对象存储为IPFS打造坚实底座,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

IPFS是InterPlanetary File System(星际文件系统)的简称,是一个旨在创建持久且分布式存储和共享文件的网络传输协议。IPFS网络中的节点构成了一个分布式文件系统,它为用户提供了一个支持部署和写入的平台,同时能够支持大文件的分发和版本管理。

IPFS试图解决什么问题?

IPFS是对中心化存储的一种补充,具有去中心化、数据不可篡改、全程留痕、可以追溯、集体维护、公开透明的特点。其目标是通过建立对等的分布式文件系统,为数据存储服务的需求者提供一个高吞吐量、按内容寻址的块存储模型,及与内容相关的超链接。分布式内容传递可以节约带宽,和防止HTTP可能遇到的DDoS攻击。

相较于中心化存储(基于HTTP构建的云存储),IPFS解决了下载速度慢、存储成本高、修复能力不足以及数据隐私安全等问题,且不存在单点故障,网络节点之间不需要相互信任,安全性和可靠性更高。

IPFS如何保证用户数据被安全地存储?

从数据存取的角度来看,IPFS的做法是:文件被用户上传时,会切割成N个加密碎片,分散存储在供应方(矿工)提供的存储空间中,在下载时再合成为完整的源文件;通过一种共识机制(复制证明PoRep和时空证明PoSt)来确保正确的数据在正确的时间被有效存储且未被篡改,以保障安全、公开、透明;据此,系统也会得出矿工的实际贡献值,提供对等的报酬。

图1.IPFS通过共识机制确保数据安全

整体流程大致如下:当用户上传原始数据后,矿工向主链提交交易证明并获取出块权,之后按照规则将数据装入扇区继而封装成标准大小(32GB)的数据块;在封装过程中会进行复制证明并提交给主链,以证明矿工确实保存了用户要求存储的数据;数据封装后,系统会按照数据的存储期限,每隔一段时间(一般是半小时一次)运行时空证明,以证明矿工确实在规定时间内存储了准确的数据。

IPFS需要高度匹配的存储能力

在运行证明的过程中,需要强大的算力支撑,这既包括对原始数据的封装处理、对证明数据的高效运算,还包括对封装数据的及时写入、对证明数据的检索抽取。这对存储也提出了严苛的要求,主要特点如下。

图2.证明过程中计算与存储高频交互

超大容量

IPFS要求数据持续可读,历史数据永久保存。一般周数据增量为PB级,年增量可达百PB级甚至EB级。

高吞吐

IPFS写入模型是大文件并发写入,存储集群至少要提供100Gbps以上的吞吐量,以保证封装数据的写入效率。

随机读

在时空证明阶段,每天完成一次全量证明(分48次进行,每半小时就要完成一个SHARD的证明),均是小数据块随机读,要求存储提供极高的随机读取效率。

高效运维

数百PB甚至EB级的海量空间,必然由大规模集群来支撑,高效运维、降低人力成本同样是刚需。

兼顾安全与低成本

除了IPFS原有的哈希去重和加密算法,存储集群也需要提供低成本的安全保护策略。业内厂商多采用高性价比的纠删码方案,在保证数据高可用的同时,尽可能降低总体成本。

MOS对象存储为IPFS打造坚实底座

从前文的描述中不难看出,选择合适的存储底座无疑能给IPFS带来强有力支撑。杉岩MOS对象存储凭借海量、高性能、智能化、低成本等优势,为IPFS场景提供了极佳的存储底座。

图3.基于MOS打造强大的存储底座

EB级弹性扩展,300 Gbps吞吐能力

MOS可提供单一命名空间的EB级资源池,以及超过300 Gbps的吞吐能力;由于计算与存储分离,存储集群可独立扩展,灵活响应业务变化。

空间利用率超90%,成本节约超过50%

为了满足数据高可用和低成本的要求,MOS采用22+2的纠删码技术,将空间利用率提升到了90%以上,相较于3副本策略,硬件成本缩减超过50%。

15秒读完一个Partition

针对IPFS高频随机读的特点,MOS也进行了性能优化,可将数百次随机读请求合并为一个请求,将读取效率提升了数倍,每15秒即可读完一个Partition。

管理超大规模集群仅需1-2人

MOS提供可视化管理和智能化运维,故障自动监测和即时申报;通过多故障域隔离和智能DNS分配技术,帮助运维人员轻松管控超大规模集群,在提升数据可靠性的同时降低运维复杂度,节省人力成本。

“工欲善其事,必先利其器。”IPFS需要强大的云算力,除了部署强大的算力集群,选好存储同样重要。杉岩已顺利交付IPFS项目,实践证明,MOS对象存储值得这份信赖。

这篇关于杉岩数据:MOS对象存储为IPFS打造坚实底座的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/301287

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

关于数据埋点,你需要了解这些基本知识

产品汪每天都在和数据打交道,你知道数据来自哪里吗? 移动app端内的用户行为数据大多来自埋点,了解一些埋点知识,能和数据分析师、技术侃大山,参与到前期的数据采集,更重要是让最终的埋点数据能为我所用,否则可怜巴巴等上几个月是常有的事。   埋点类型 根据埋点方式,可以区分为: 手动埋点半自动埋点全自动埋点 秉承“任何事物都有两面性”的道理:自动程度高的,能解决通用统计,便于统一化管理,但个性化定

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

异构存储(冷热数据分离)

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。 异构存储Shell操作 (1)查看当前有哪些存储策略可以用 [lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies (2)为指定路径(数据存储目录)设置指定的存储策略 hdfs storagepolicies -setStoragePo

HDFS—存储优化(纠删码)

纠删码原理 HDFS 默认情况下,一个文件有3个副本,这样提高了数据的可靠性,但也带来了2倍的冗余开销。 Hadoop3.x 引入了纠删码,采用计算的方式,可以节省约50%左右的存储空间。 此种方式节约了空间,但是会增加 cpu 的计算。 纠删码策略是给具体一个路径设置。所有往此路径下存储的文件,都会执行此策略。 默认只开启对 RS-6-3-1024k

Hadoop集群数据均衡之磁盘间数据均衡

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性) plan后面带的节点的名字必须是已经存在的,并且是需要均衡的节点。 如果节点不存在,会报如下错误: 如果节点只有一个硬盘的话,不会创建均衡计划: (1)生成均衡计划 hdfs diskbalancer -plan hadoop102 (2)执行均衡计划 hd

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

pandas数据过滤

Pandas 数据过滤方法 Pandas 提供了多种方法来过滤数据,可以根据不同的条件进行筛选。以下是一些常见的 Pandas 数据过滤方法,结合实例进行讲解,希望能帮你快速理解。 1. 基于条件筛选行 可以使用布尔索引来根据条件过滤行。 import pandas as pd# 创建示例数据data = {'Name': ['Alice', 'Bob', 'Charlie', 'Dav