
理论专栏
文章平均质量分 85
存储相关理论
大隐隐于野
这个作者很懒,什么都没留下…
展开
-
破解HPC存储性能瓶颈的“武林秘籍”
数字经济时代,信息科学技术蓬勃发展,传统HPC与大数据、人工智能技术逐渐走向融合,以ARM、GPU、FPGA为代表的异构计算对存储性能的要求进一步提高,HPC存储面临的负载类型愈加多样化。传统HPC存储系统处理复杂业务负载时,需要部署多套不同类型的存储,容易形成性能孤岛,降低整体流程处理效率。因此,一个存储集群如何同时满足高带宽、高IOPS和极致低时延的混合负载模型,提升流程处理效率,成为HPC存储面临的最大挑战。原创 2025-04-08 16:36:31 · 369 阅读 · 0 评论 -
深入理解磁盘文件系统之inode
假定在一块1GB的硬盘中,每个inode节点的大小为128字节,每1KB就设置一个inode,那么inode table的大小就会达到128MB,占整块硬盘的12.8%。文件A和文件B的inode号码虽然不一样,但是文件A的内容是文件B的路径。这是软链接与硬链接最大的不同:文件A指向文件B的文件名,而不是文件B的inode号码,文件B的inode"链接数"不会因此发生变化。文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。原创 2025-03-14 10:28:21 · 721 阅读 · 0 评论 -
大模型存储需求及技术策略
此外,数据湖作为一种新的数据存储和处理架构,将公开数据集、训练数据、模型结果统一存储到数据湖,实现不同形态的数据统一存储和高效流转,避免数据在AI大模型不同的阶段频繁拷贝,降低效率。一方面,大模型的训练和推理过程需要大规模数据的支持,这些数据需要高效的存储和访问;同时,随着云计算和边缘计算技术的不断进步,跨平台的数据访问和共享已成为大模型存储系统的关键特性,要求存储系统必须提供高度一致的数据服务,并确保高可用性和容错能力,要求存储系统支持多种协议和接口,实现数据的灵活流动和高效协作。原创 2025-02-11 14:21:04 · 935 阅读 · 0 评论 -
面向大模型的存储加速方案设计和实践
人工智能的实现需要大量的计算资源,包括高性能的计算机、大内存、高速存储和网络带宽等硬件设备,以及高效的算法和软件工具。这些资源的优化配置和调度,以满足大规模计算需求,就是 AI 算力构建的主要任务之一。随着深度学习和机器学习算法的不断演进,以及硬件技术的迅猛发展,AI 算力构建已经成为推动人工智能发展的关键一环。通过不断提升算力构建的效率和性能,可以加速算法模型的训练和推理过程,提高人工智能应用的准确性和效率。没有强大的算力支持,人工智能的应用和发展将受到限制。原创 2025-02-11 14:09:10 · 701 阅读 · 0 评论 -
zStorage在海光CPU架构上的性能调优
随着"信创"的东风吹遍大江南北,各家公司都开始了国产化的适配道路。zStorage团队当然也没有缺席,去年我们适配了华为的鲲鹏架构,整体性能水平达到了Intel架构的70%以上。今年我们开始着力于海光CPU架构的适配。与鲲鹏架构相比,海光的适配难度相对更小。因为海光也是x86架构,海光CPU通过与AMD的合作,获得了ZEN1架构和X86指令集的永久使用权,并且在此基础上开发了7、5、3系列处理器,分别定位于高、中、低档服务器市场。原创 2024-09-02 20:05:00 · 2836 阅读 · 0 评论 -
IO全路径-文件系统到磁盘或远端iscsi/nvmeof协议盘
所以file_operations的read_iter和write_iter回调函数首先就需要根据不同的标志判断采用哪种访问模式, kernel在2020年12月的patch中提出了folio的概念,我们可以把folio简单理解为一段连续内存,一个或多个page的集合。ceph实现, 内核驱动接管块层IO: .queue_rq = rbd_queue_rq -> static blk_status_t rbd_queue_rq。Nvme(本地盘)实现: .queue_rq = nvme_queue_rq。原创 2024-08-07 18:36:48 · 950 阅读 · 0 评论 -
BIO从提交到执行完毕过程分析
6.调用q->prep_rq_fn()对取得的request初始化,以sd_prep_fn()为例,此函数会调用scsi_get_cmd_from_req()构造scsi_cmnd,调用scsi_init_io()初始化scsi_cmnd,scsi_init_io()又会调用scsi_init_sgtable()用requst中的biovec初始化scsi_cmnd中的scatter-gather链表.原创 2024-05-28 20:17:33 · 517 阅读 · 0 评论 -
块设备层保序操作分析
8.POSTFLUSH request的完成同5,6步,最后进入到blk_ordered_complete_seq(),blk_ordered_cur_seq(q)当前的步骤为QUEUE_ORDSEQ_DONE,整个保序过程完毕,调用__blk_end_request(q->orig_bar_rq)对原始保序请求做完成的回调.A:通用块层可以提交一个带保序标签(BIO_RW_BARRIER)的BIO到IO请求队列,块设备层可以保证在保序BIO之前提交的BIO都先于BIO执行且抵达存储介质;原创 2024-05-28 20:13:49 · 549 阅读 · 0 评论 -
如何将千亿文件放进一个文件系统,EuroSys‘23 CFS 论文背后的故事
本文介绍了百度智能云文件存储 CFS 的元数据系统的核心设计,对⻓期困扰文件系统元数据领域的 POSIX 兼容性和高扩展性(特别是写扩展性)难以兼顾的问题,进行了解答。这是一个大规模分布式文件系统能否扩展到千亿级别文件数,同时保持高性能稳定性的一个关键问题。分离式元数据架构是近年来文件系统元数据领域的发展趋势,业界有潜力存储千亿文件的系统均是基于这种架构实现的。这类架构采用类似 “存算分离” 的思想,将元数据服务分为两层,分别是负责存储数据的数据库层,和偏计算逻辑、负责实现文件系统语义的元数据代理层。原创 2024-01-16 13:33:50 · 1243 阅读 · 0 评论 -
Pangu 2.0 Filesystem and the Related
【代码】Pangu 2.0 Filesystem and the Related。原创 2024-01-10 16:02:24 · 779 阅读 · 0 评论 -
阿里云RDMA通信库XRDMA论文详解
(2019年)RDMA技术在数据中心越来越受欢迎,当前最新的ConnectX-6 Infiniband网卡可以支持200Gbps的带宽和极低的延迟(0.6微妙)。RDMA技术也在越来越多的系统中得到应用,比如KV存储、文件系统、图计算等。但是在规模生产环境中,RDMA的实际收益还不够明显,一个重要原因是RDMA编程复杂性太高,想用好它很难,RDMA verbs编程有一堆的新概念(QP,MR,PD,RQ,SQ,CQ,……),这根传统socket编程迥异。想要直接把已有应用直接迁移到RDMA更是不可能。原创 2024-01-09 16:32:01 · 2580 阅读 · 0 评论 -
从SIGMOD 23看RocksDB的存算分离实践
存算分离的架构,每个副本上的 RocksDB 使用本数据中心的 Tectonic 集群来存数据,这个架构中,RocksDB 所在的节点成为了「计算节点」,Tectonic 集群中的节点是存储节点。Tectonic 的数据冗余逻辑,包括多副本机制下的复制,纠删码机制下的编码,以及异常情况下的数据 reconstrunction,这些都是在 Tectonic 的客户端,也就是计算节点做的,相对于 RocksDB on SSD 来说会增加很多计算节点的网络带宽消耗,所以需要尽可能的减少一下这些开销。原创 2023-11-08 09:26:09 · 672 阅读 · 0 评论 -
Facebook’s Tectonic Filesystem: Efficiency from Exascale论文笔记
当一个请求下发时,在client端需要先经过漏桶,告知自己需要多少的资源,client检查自己的trafficgroup的资源够不够这次IO,够的话就将请求下发到底层存储节点(tectonic不仅对存储节点进行了资源平衡调度,同时也对元数据节点也有一致的优化),存储节点采用权重轮训(WRR)的方式,依次处理到来的请求。另外,对于一个集群提供EB级别的存储能力,在小文件场景下,元数据量会很庞大,需要有能力保证随着存储数据量增加带来的元数据量膨胀,需要元数据存储具备同样的强悍的扩展能力。原创 2023-11-09 15:59:35 · 368 阅读 · 0 评论 -
百度沧海文件存储CFS推出新一代Namespace架构
该架构方案将文件全路径 Hash 来组织打散到分布式 Meta 集群,对于 Lookup 路径查找非常友好同时容易实现,但是缺点是牺牲了元数据的局部性,尤其是 rename 的实现复杂度高且性能很差,这类架构主要停留在学术研究,没有在工业界大规模应用,典型的系统如 Dr.Hadoop,GiraffaFS;百度沧海的文件存储 CFS 作为百度智能云提供的分布式文件存储服务,通过标准的文件访问协议(NFS/SMB),为云上的虚机、容器等计算资源提供无限扩展、高可靠、地域级别共享的文件存储能力。原创 2023-12-27 10:48:58 · 751 阅读 · 0 评论 -
GDS-enabled BeeGFS 人工智能并行存储解决方案
如下图所示, 通过在VFS层嵌入内核模块 nvidia-fs.ko 和 nvidia.ko 来管理GPU 内存地址和CPU RAM及GPU RAM的IO操作,这扩展到了PCI总线允许数据在GPU和网卡之间搬运,元数据仍然存储在CPU RAM,而数据块则允许直接读取到GPU RAM。在这样的新时代,企业需要全新的存储解决方案,才能以高效且经济的方式从容应对来势汹汹的数据洪流。Paraview是一个开源的,跨平台的数据处理和可视化程序,使用分布式的内存计算资源,能够实现对非常大的数据集的分析与处理。原创 2023-11-02 17:11:55 · 966 阅读 · 0 评论 -
迎接“全全闪”时代 XSKY星辰天合发布星海架构和星飞产品
XSKY星辰天合 CEO 胥昕表示,随着 AI、大数据等各种应用的全面爆发,业界对能够支持高性能、大容量的全闪存储系统的需求日益强烈,但是全闪存储的价格依然相对高昂,无法被普遍使用,星辰天合基于开创性的“星海”架构研发的星飞全闪分布式存储,将能够大幅度降低全闪存储使用成本,实现数据中心内所有数据存储都采用全闪,促进全行业迎接“全全闪(All Data on All Flash,全数据全闪存)时代”。面对这个目标,希望能够利用新的硬件变化来进一步推动分布式存储架构变革,来更好解决这些挑战。原创 2023-11-24 15:17:04 · 591 阅读 · 1 评论 -
LSM树详解
LSM树是非常值得了解的知识,理解了LSM树可以很自然地理解Hbase,LevelDb等存储组件的架构设计。ClickHouse中的MergeTree也是LSM树的思想,Log-Structured还可以联想到Kafka的存储方式。虽然介绍了上面两种策略,但是各个存储都在自己的Compact策略上面做了很多特定的优化,例如Hbase分为Major和Minor两种Compact,这里不再做过多介绍,推荐阅读文末的RocksDb合并策略介绍。原创 2023-09-01 14:07:34 · 3962 阅读 · 1 评论 -
Erasure-Code(纠删码) 最佳实践
该过程可行的核心保障就是需要确保矩阵A的任意5*5的子矩阵的可逆矩阵都是存在的,这样才能确保丢失8块数据中的任意3块数据都可以进行数据还原。一般情况下可以认为上层业务的大块连续IO读取都是满条带的读取,在Stripe Placement 情况下,满条带的读取在正常情况下和异常情况下从底层读取的数据量可以认为是一致的(如下图左侧图所示),而且当前一般来说EC 解码有硬件加速,即计算层面不太容易成为瓶颈,所以Stripe Placement 在正常度和异常情况下的开销基本可以认为差不多。详见对象存储架构设计。原创 2023-08-31 17:08:06 · 660 阅读 · 0 评论 -
阿里在盘古云存储系统中部署RDMA的经验谈
然而,在混合部署过程中,我们确定共存的TCP流量会引发大量TX暂停(即NICs发送的PFC暂停帧),即使RDMA/TCP流量被隔离在两个优先级队列中。我们使用UMR将发送方的连续数据重新映射到接收方的I/O缓冲区,其中包含4KB的数据、4B的校验值和44B的间隔。请注意,25Gbps和100Gbps配置中的SSD类型是不同的,这会导致不成比例的数字。如图4所示,接收到的数据被分成4KB的块,每个块加上4B CRC值和44B间隙。线程对节点的请求被发送到相应的线程,该线程随后将请求发送到正确的目标线程。原创 2023-10-31 11:10:17 · 930 阅读 · 0 评论 -
端到端数据保护浅析
根据OCP对企业级可靠性给出的建议,数据流经的每一个环节,如PCIe接口、控制器内部、RAM、Flash端口等,都应带有重叠的保护机制,以降低数据出错的风险。如主机PCIe接口到SSD控制器有LCRC和ECRC保护,数据在控制器会添加PI保护信息,RAM带有ECC保护,Flash接口有Scrambler随机化,对数据有CRC校验,LDPC软判决纠错等。NVMe端到端数据保护的关键在于PI(Protection Information)的使用。原创 2023-11-21 17:58:14 · 207 阅读 · 0 评论 -
降低存储网络55% 延迟!阿里云存储论文入选计算机顶会
例如要好用,API的编写要符合用户APP的原始逻辑TCP协议栈要可定制,不同环境用需要特定的工作模型要能快速恢复等等总的来说算是用户态协议栈如何在工业界使用的一个说明。原创 2023-11-02 17:25:02 · 384 阅读 · 0 评论 -
Linux 实现原理 — NUMA 多核架构中的多线程调度开销与性能优化
在 NUMA 架构中,设置 Kernel Thread 的 CPU 亲和性,能够有效提高 Thread 的 CPU Cache 命中率,减少 Remote NUMA Memory 访问的损耗,以获得更高的性能。不同的 NUMA node 都拥有几乎相等的资源,在 Local NUMA node 内部会通过自己的存储总线访问 Local Memory,而 Remote NUMA node 则可以通过主板上的共享总线来访问其他 Node 上的 Remote Memory。原创 2023-11-06 10:58:05 · 2543 阅读 · 0 评论 -
高并发下分布式唯一全局 ID生成算法
系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结。这篇文章就是给各位看官提供一个生成分布式唯一全局id生成方案的思路,希望能帮助到大家。不足之处,请多多指教!!原创 2023-11-27 17:41:27 · 196 阅读 · 0 评论 -
分布式系统数据一致性问题思路
本文较全面的分析了分布式系统的数据一致性模式。我们首先介绍了两个重要的原理:ACID和CAP,理解这两个原理对于理解事务和分布式事务很重要,读者朋友细细体会以下ACID的事务特征和CAP中CA的权衡思想。文章介绍了强一致性协议P:两阶段协议、三阶段协议和典型的投票协议。分布式架构下理解CAP很重要,目前互联网公司倾向于高可用最终一致性方案,本文介绍了4种常用的最终一致性模式,文章最后针对“下单和减库存”以及“缓存和数据库一致性”给出了解决方案,希望读者朋友看完之后有帮助。转载 2023-11-29 13:55:12 · 530 阅读 · 0 评论 -
冯丹教授:近数据处理新型盘框等技术创新,加速IDC向Diskless架构演进
冯丹教授表示:“从技术趋势来看,高性能异构算力、高速网络、大存力新型盘框、算子卸载等技术的发展,带来了数据中心架构的变革,加速了以CPU为中心的耦合架构走向彻底存算分离、资源池化共享的以数据为中心的Diskless架构,这种架构进一步简化了数据中心基础设施构建,能够实现存力和算力资源的集约高效发展,已经成为大规模数据中心发展的重要技术趋势。通过计算语义的卸载,存储直出语义接口,主机侧软件栈打薄,减少80%的IO交互次数,实现对整系统的CPU和网络带宽节省。量的CXL,为算力和存力等硬件解耦奠定了基础;原创 2023-12-12 15:50:56 · 1177 阅读 · 0 评论 -
云原生文件存储 CFS 线性扩展到千亿级文件数,百度沧海·存储论文被 EuroSys 2023 录用
论文的测试结果显示,在 50 节点规模的测试中,与 HopsFS 和 InfiniFS 相比,CFS 各操作的吞吐量提高至 1.76 - 75.82 倍和 1.22 - 4.10 倍,并将它们的平均延迟分别最高降低了 91.71% 和 54.54%。元数据系统的核心设计,对长期困扰文件系统元数据领域的 POSIX 兼容性和高扩展性(特别是写扩展性)难以兼顾的问题,进行了解答。百度沧海·存储构建的统一存储技术底座,为各类分布式存储产品提供统一的技术能力支撑,加速智能计算,释放数据价值。原创 2023-12-22 16:50:36 · 610 阅读 · 0 评论