Octopus+: An RDMA-Enabled Distributed Persistent Memory File System——泛读笔记

news2024/11/19 10:36:40

TOS 2021 Paper 分布式元数据论文阅读笔记整理

问题

非易失性存储器(NVM)和远程直接存储器访问(RDMA)在存储和网络硬件中提供了极高的性能。然而,现有的分布式文件系统隔离了文件系统和网络层,而且分层的软件设计使得高速硬件没有得到充分利用。

现有方法局限性

现有分布式文件系统(DFS)主要是通过支持RDMA的库取代通信模块。

  • CephFS通过使用基于RDMA的异步RPC中间件Accelio[1]来支持RDMA。

  • GlusterFS实现了自己的用于数据通信的RDMA库[16]。

  • NVFS[21]是针对NVM和RDMA进行优化的HDFS变体。

  • BM最近推出的DFS Crail[7]构建在RDMA优化的RPC库DaRPC[51]上。

这些文件系统严格隔离文件系统和网络层,只更换其数据管理和通信模块,而不重构内部文件系统机制。导致GlusterFS的软件延迟在NVM和RDMA上占近100%,而在磁盘上仅占2%。同时它只实现了24%的原始NVM带宽和11%的原始InfiniBand带宽,而原始磁盘带宽和GigaE带宽分别为76%和74%。总之,文件系统和网络层之间的严格隔离使DFS过于沉重,无法利用新兴高速硬件的优势。

本文方法

本文提出了支持RDMA的分布式持久存储器文件系统Octopus+,通过紧耦合非易失性存储器和RDMA特性来重新设计文件系统的内部机制。

  • 对于数据操作,直接访问共享的持久内存池,以减少内存复制开销。并主动提取和推送客户端中的所有数据,以重新平衡服务器和网络之间的负载。

  • 对于元数据操作,引入了自识别的远程过程调用,该RPC将发送方的标识符与用于低延迟通知的RDMA写入原语一起携带,可在文件系统和网络之间立即发出通知。通过结合RDMA写入和原子原语,实现高效的分布式事务机制,以实现一致性。

  • 启用复制功能,以提供更好的可用性。元数据和数据通过不同的协议复制到多个物理服务器,针对小型元数据的基于操作日志的复制方法,针对文件数据的客户端主动复制机制。

在服务器端,所有目录都保存在指定的目录元数据服务器(DMS)中,文件以基于哈希的方式(表示为数据服务器)分发到所有常规服务器[34]。整个NVM区域可以分别简单地划分为数据区域和元数据区域。数据区域被导出并在整个集群之间共享,用于远程直接数据访问,而元数据区域出于一致性原因保持私有。

对Intel Optane DC持久内存模块的评估表明,Octopus+实现了几乎与大I/O相同的原始带宽,并且性能比现有的分布式文件系统好几个数量级。

实验

实验环境:每台服务器配备192 GB DRAM,两个2.60-GHz Intel Xeon Gold 6240M处理器(每个处理器36核),六个256-GB Intel Optane DCPMM(每个NUMA节点上有三个模块),运行Ubuntu18.04和Linux内核4.15。为避免跨NUMA对性能影响,只在一个NUMA节点上实验(即,每个服务器上只有768-GB NVM)。每个客户端服务器都有128 GB的DRAM,两个Intel Xeon E5-2650 v4处理器,运行带有Linux内核3.10的CentOS-7。所有服务器和客户端都配备了MCX555A-ECAT ConnectX5 EDR HCA(支持100 Gbps over InfiniBand和100 GigE),并与Mellanox MSB7790-ES2F交换机连接。

NVM设备具有不对称的读/写带宽[22]:写入带宽为6.7 GB/s,读取带宽为20 GB/s。NIC具有对称的读/写性能:读取和写入均为12 GB/s。因此,评估环境存在带宽不匹配:对于写入,NVM是瓶颈,而对于读取,网络则成为瓶颈。

数据集:mdtest,fio,filebench:Varmail, Fileserver, Webproxy, Webserver

实验对比:延迟,带宽,吞吐量

实验参数:服务器数量,客户端数量,不同元数据操作,读写操作,I/O大小,线程数

总结

针对使用NVM和RDMA的分布式文件系统,现有方法将文件系统和硬件隔离,难以充分发挥性能。本文提出Octopus+,通过紧耦合非易失性存储器和RDMA特性来重新设计文件系统的内部机制。(1)数据操作,直接访问共享的持久内存池,以减少内存复制开销。并主动提取和推送客户端中的所有数据,以重新平衡服务器和网络的负载。(2)元数据操作,引入了自识别的远程过程调用,可在文件系统和网络之间立即发出通知。结合RDMA写入和原子原语,实现高效的分布式事务机制,以实现一致性。(3)启用复制功能,基于操作日志复制小型元数据,采用客户端主动复制文件数据,以提供更好的可用性。

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

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

相关文章

H3C交换机基础配置及故障排查

以下命令以H3C S5120为实验对象,其他设备命令可能略有不同 一、交换机基础配置 1.开启NTP服务 ntp enable 设置时区 clock timezone beijing add 8 自定义NTP服务器地址 ntp-service unicast-server 120.25.115.20 #如果使用域名作为ntp服务器的地址&#x…

电脑工作者缓解眼部疲劳问题的工具分享

背景 作为以电脑为主要工作工具的人群,特别是开发人员,我们每天都需要长时间紧盯着屏幕,进行代码编写、程序调试、资料查询等工作。这种持续的工作模式无疑给我们的眼睛带来了不小的负担。一天下来,我们常常会感到眼睛干涩、疲劳…

2.4G射频收发芯片 KT8P01,非常适合超低功耗(ULP)的无线应用

KT8P01是一颗低成本、高性能的智能2.4 GHz射频收发芯片,内置单片机。KT8P01经过优化,提供了单芯片解决方案,适用于超低功耗(ULP)的无线应用。处理能力、存储器、低功率振荡器、实时计数器以及一系列省电模式的组合为RF…

dependency walker工具简介及使用

dependency walker工具 简介使用 简介 官方概述: Dependency Walker is a free utility that scans any 32-bit or 64-bit Windows module (exe, dll, ocx, sys, etc.) and builds a hierarchical tree diagram of all dependent modules. For each module found, …

Vue实现多角色登录,Vue-Router路由守卫控制权限页面

实现页面侧边栏和头部不变,当点击某个功能时,只有主体部分发生变化,这要用到子路由技术 我的项目结构如上,其中包含侧边栏和头部的文件是Manage.vue,主页面是Home.vue,个人页面是Person.vue,用户…

CSS实现广告自动轮播

实现原理 该广告轮播功能的实现主要依靠HTML和CSS。HTML负责搭建轮播框架,而CSS则控制样式和动画效果。通过CSS中的关键帧动画(Keyframes),我们可以定义图片在容器内的滚动效果,从而实现轮播功能。 HTML结构 首先&am…

2024-4-狼道

2024-4-狼道 2024-4-9 宋犀堃(堃通坤,多用于人名) fatux: 做人当如狗,和蔼可亲;做事当如狼,专注果决。 狼道 智慧生存的强者法则 走向卓越的成功之道 狼道,是追求卓越的野心&am…

科普馆VR技术展现安全场景,构建安全教育新标杆!

随着VR技术的快速发展,其所衍生出的互动装置,悄无声息地渗透进了我们生活的每个角落,就连那严谨而重要的安全教育领域,也没能逃出这神奇魔法的“魔爪”,这种VR互动设备简直就是安全知识传递的小能手,那么&a…

客户端动态降级系统

本文字数:4576字 预计阅读时间:20分钟 01 背景 无论是iOS还是Android系统的设备,在线上运行时受硬件、网络环境、代码质量等多方面因素影响,可能会导致性能问题,这一类问题有些在开发阶段是发现不了的。如何在线上始终…

centos7安装mysql5.7笔记

1 配置yum仓库 1.1更新密钥 #更新密钥 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 1.2 下载使用wget命令下载MySQL的repo文件 #下载使用wget命令下载MySQL的repo文件 wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 2 使用…

智能生活新体验:小米香薰加湿器技术解码

在现代家居生活中,科技与舒适性日益交织,智能家居产品成为提升生活品质的重要工具。小米香薰加湿器作为一款集科技与生活美学于一体的产品,其独特的设计和多功能性受到了广泛欢迎。今天,我们就来详细拆解这款融合了科技与香薰元素…

大型语言模型的谎言危机:我们怎样揭穿科技巨头的误导游戏?|TodayAI

昨天,Meta推出了号称至今最强大的大型语言模型LLaMA 3,引发了人们对该技术的极大热情。然而,这股热情伴随着一些问题。包括Meta、谷歌和推特在内的几家公司被指散布了大量误导性信息,这些信息对用户和投资者关于大型语言模型的能力…

20240327-2-贝叶斯面试题NaïveBayes

贝叶斯面试题 1.简述朴素贝叶斯算法原理和工作流程 工作原理: 假设现在有样本 x ( x 1 , x 2 , x 3 , … x n ) x(x_1, x_2, x_3, \dots x_n) x(x1​,x2​,x3​,…xn​)待分类项假设样本有 m m m个特征 ( a 1 , a 2 , a 3 , … a m ) (a_1,a_2,a_3,\dots a_m) (a…

大型网站系统架构演化实例_5.使用反向代理和CDN加速网站响应

1.使用反向代理和CDN加速网站响应 随着网站业务不断发展,用户规模越来越大,由于区域的差别使得网络环境异常复杂,不同地区的用户访问网站时,速度差别也极大。有研究表明,网站访问延迟和用户流失率正相关,网…

【Linux】认识文件(一):文件标识符

【Linux】认识文件(一):文件标识符 一.什么是文件?1.文件的本质2.文件的分类 二.访问文件操作1.C语言中的访问文件接口i.fopenii.fcloseiii.fwrite 2.系统访问文件接口i.openii.closeiii.write 三.文件管理1.对所有打开文件的管理…

ubuntu22.04搭建dns内网

近期,需要在无网络的ubuntu环境下搭建内部可用的dns内网,总共花费3个工作日晚上,总算成功搭建,做个记录,记录踩坑记录,同时方便以后翻阅。 安装软件包: 有网络环境下,比较简单&…

PostgreSQL中的索引类型有哪些,以及何时应选择不同类型的索引?

文章目录 索引 解决方案和示例代码 PostgreSQL提供了多种索引类型,每种类型都有其特定的应用场景和优势。选择合适的索引类型可以显著提高查询性能,减少数据库负载。 索引 以下是PostgreSQL中常见的索引类型及其适用场景: 1. B-tree 索引 …

【Linux 开发第一篇】如何在安装中完成自定义配置分区

安装配置自定义配置分区 在安装Centos的过程中,我们可以在安装位置部分手动配置分区 选择我要配置分区,点击完成: 我们自动分区分为三个分区:boot分区(引导分区),swap(交换分区&…

互联网技术知识点总览——操作系统知识点框架图

简介 本文对操作系统的知识点整体框架进行梳理和分享如下:

KaiwuDB CTO 魏可伟:AIoT,用行业定义数据库

4月12日,由中国 DBA 联盟(ACDU)与墨天轮社区联合主办的第十三届数据技术嘉年华(DTC 2024)于北京盛大召开。KaiwuDB CTO 魏可伟受邀发表《智创当下,KaiwuDB 从多模到 AI 的探索实践》主题演讲,向…