Hierarchical File Systems are Dead——论文泛读

news2024/10/7 2:27:19

HotOS 2009 Paper 分布式元数据论文阅读笔记整理

问题

文件系统一直采用分层名称空间,随着用户与越来越多的数据交互,并且对搜索能力的要求越来越高,这样一个简单的分层模型已经过时了。例如,查找照片时,用户描述他们想要的内容(照片的各种特征)而不是照片所在的位置(照片在文件系统中的完整路径名)来查找数据。

因此应该重新设计文件系统,将其组织映射到我们现在访问和操作数据的方式。

本文工作

本文提出了一种新的文件系统体系结构 hFAD,用标记的、基于搜索的名称空间取代了分层名称空间。

在最低级别上,使用基于对象的存储设备(OSD)[14],存储对象有唯一的ID,系统的高层通过ID访问这些对象。对象是可字节访问的:可以从对象中读取字节,可以将字节插入对象的中间,可以从中间删除字节等。内部hFAD使用基于搜索的API,索引结构包含可扩展的索引集合,便于多种命名模式和搜索类型。

API

命名接口:对象由一个或多个标记/值对进行命名。标记告诉hFAD如何解释该值,以及在多个索引中的哪个索引中搜索该值。例如,我们支持将POSIX命名为本机API之上的薄层。POSIX路径P上的命名操作转换为对标记/值对的查找:POSIX/P。对搜索项S1、S2、…Sn的全文搜索转换为对形式为FULLTEXT/S1、FULLTEXT/S2等的标记/值对的矢量的命名操作。这种操作的结果是矢量中每个元素的索引查找结果的总和。命名操作可以返回多个项目(这些项目将以未指定的顺序返回)。此外,任何查询都不需要唯一地定义数据项。只有OSD层中数据的标识符必须是唯一的。

访问接口:与标准文件系统一样支持读取和写入,还可以支持插入和删除操作,能够插入到对象中间,并从文件中的任何位置截断。添加了insert和truncate调用。读写调用与POSIX兼容,便于支持遗留应用程序。插入调用采用与写入调用相同的参数,但它不会覆盖文件中间的字节,而是将这些字节插入到适当的位置,使文件增加插入的字节数。截断也有类似的扩展。POSIX截断从文件末尾截取一个带有要截断的字节数的off_t,而hFAD则截取两个off_t(偏移量和长度),准确地指示要从文件中删除哪些字节。

索引存储

使用可扩展的索引存储,以便于对丰富的数据类型进行高效搜索。给定一个或多个类型/值规范,索引存储的集合必须返回与搜索项匹配的对象ID列表。我们认为高效访问需要多种索引方法。例如,键/值存储足以用于简单属性,但不足以用于全文,并且全文索引和键/值存储器都不太可能适用于图像索引。因此我们确定了几种类型的标签,表1显示了不同的用例如何在请求中使用不同类型的标签。索引存储层被设计为支持多个索引。虽然关键字和路径名可能很容易存储在同一索引中,但我们希望保留用任意索引类型扩展hFAD的可能性,例如图像、声音等的索引。一个特殊的标签ID表示该值实际上是一个唯一的对象ID,支持应用程序内的对象引用缓存。

总结

本文提出一种新的文件系统体系结构 hFAD,便于普通用户使用的文件系统,用标记的、基于搜索的名称空间取代了分层名称空间。(1)对象命名时使用多个标记+值命名,便于用户通过不同标记进行搜索。(2)对象访问时额外支持插入和部分删除,允许用户直接对字节操作,在对象中间插入或删除数据。(3)存储部分使用索引存储,根据标签构建多个索引。

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

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

相关文章

设计模式 六大原则之单一职责原则

文章目录 概述代码例子小结 概述 先看下定义吧,如下: 单一职责原则的定义描述非常简单,也不难理解。一个类只负责完成一个职责或者功能。也就是说在类的设计中, 我们不要设计大而全的类,而是要设计粒度小、功能单一的类。 代码例…

OBS插件--音频采集

音频采集 音频采集是一款 源 插件,类似于OBS的win-capture/game-capture,允许从特定应用程序捕获音频,而不是捕获整个系统的音频。避免了因为特定音频的采集而需要引入第三方软件,而且时延也非常低。 下面截图演示下操作步骤: …

随身wifi网速测评!讯唐随身wifi和格行随身wifi哪个网速快?随身wifi哪个品牌最好用?

最近收到很多网友私信,希望推荐一款好用性价比高的随身wifi。通过各平台排行榜选出了公认口碑最好的格行随身wifi;又挑选了网友们经常问的的讯唐随身wifi;两个一起来实测一下,哪款更好用! 【品牌评测】 格行随身wifi&…

施耐德和施耐德EOCR什么关系?

施耐德中国和施耐德韩国EOCR的关系主要体现在施耐德电气集团对韩国三和EOCR的收购和整合。 韩国三和EOCR株式会社是韩国主要的电动机保护器生产企业,由金仁锡博士(施耐德电气集团韩国首席执行官)于1981年建立。在2001年,为了把企…

机器学习-12-sklearn案例02-集成学习

总结 参考 菜菜的sklearn课堂——随机森林 算法使用过程 #导入数据集模块 from sklearn import datasets #分别加载iris和digits数据集 iris datasets.load_iris() #鸢尾花数据集 # print(dir(datasets)) # print(iris_dataset.keys()) # dict_keys([data, target, frame…

【网络基础】网络层 之 IP协议与分片、网段划分、IP地址分类、子网掩码与路由

文章目录 网络层1. IP协议段格式1.1 分片1.2 *为什么存在分片 / 分片是什么 ?*1.3 *如何理解 / 实现 分片与组装*1.4 深入具体:分片 和 组装 的过程1.5 为什么不推荐 分片 2. 网段划分2.1 举例:国际间通信 && 国家内通信2.2 理解网段划分 3. IP…

Swift 初学者趣谈:一招教你记住模式匹配 if case let 的语法,永不忘记

概览 相信初学 Swift 头发茂盛的小伙伴们都对 Swift 简洁且极富表现力的语法倾心不已。不过凡事皆有例外,模式匹配(Pattern Matching)的语法就是其中之一。 在本篇博文中,您将学到如下内容 概览1. 诡异的 if case let 语法&…

【半夜学习MySQL】数据库中的数据类型(含数值类型、文本二进制类型、时间类型、String类型详谈)

🏠关于专栏:半夜学习MySQL专栏用于记录MySQL数据相关内容。 🎯每天努力一点点,技术变化看得见 文章目录 数据类型分类数值类型bit类型tinyint类型int类型float类型decimal类型 文本、二进制类型char类型varchar类型 时间类型Strin…

初识C语言——第十七天

选择语句:switch switch语句(整型表达式) { 语句项: } 而语句项是什么呢? //是一些case语句: //如下 case 整形常量表达式;常量可以,字符也可以(因为字符存储的时…

Java并发编程:用户态、内核态和cache line

文章目录 一、介绍二、java中那些操作使用了内核态三、cache line的概念四、CPU缓存一致性协议 一、介绍 用户态和内核态是操作系统的两种运行状态,它们分别对应于不同的权限级别和访问能力。 用户态(User Mode):这是应用程序运…

geotrust企业通配符证书2990

随着时代的变化,人们获取信息的方式由报纸、书籍变为手机、电脑,因此很多企事业单位用户开始在互联网中创建网站来进行宣传,吸引客户。为了维护网站安全环境,保护客户数据,企事业单位也开始使用SSL数字证书&#xff0c…

在做题中学习(55):一维前缀和模板

【模板】前缀和_牛客题霸_牛客网 (nowcoder.com) 题目解释: 注意:下标从1开始的。 l 和 r就是对这n个整数去取一个区间,例如示例一: (1,2) 区间 就是算出1 2 4 中 1,2下标对应值的和,12 3 同理,(2,3) …

煤矿防爆气象传感器

TH-WFB5随着工业技术的不断发展,煤矿作为我国能源领域的重要组成部分,其安全生产问题一直备受关注。在煤矿生产过程中,井下环境复杂多变,瓦斯、煤尘等易燃易爆物质的存在使得井下安全工作尤为重要。为了提高煤矿生产的安全性&…

综合能力 | 误差 | 学习笔记

误差指真值与观测值的差值。 误差分为系统误差(消除方法:观测方法、仪器校正、修正等)、偶然误差(符合正态分布规律,进行计算纠正)、粗差(一般舍弃)。 中误差(均方差或标…

YOLO系列笔记(十四)——Compute Canada计算平台及其常见命令介绍

Compute Canada平台及其常见命令介绍 前言优势使用方法1. 检查模块不带版本号带版本号 2. 加载模块3. 检查模块是否加载成功4. 创建虚拟环境5. 编写作业脚本6. 提交作业7. 监控作业状态8. 查看作业开始预计时间9. 查看作业的详细输出10. 取消作业 注意结语 前言 大家好&#x…

十天学会单片机可能吗?单片机入门需要多久?

在开始前我有一些资料,是我根据网友给的问题精心整理了一份「单片机的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!! 十天学“会”单片机&#xf…

每周打靶VulnHub靶机-DEATHNOTE_ 1

Deathnote: 1 靶机传送门 don’t waste too much time thinking outside the box . It is a Straight forward box . 不要浪费太多时间跳出框框思考问题。这是一个很直接的盒子 是不是所有线索都在这个盒子里? 1.信息搜集 使用nmap进行域内存活主机扫描发现target …

Electron学习笔记(三)

文章目录 相关笔记笔记说明 五、界面1、获取 webContents 实例(1)通过窗口对象的 webContent 属性获取 webContent 实例:(2)获取当前激活窗口的 webContents 实例:(3)在渲染进程中获…

【全部更新】2024数维杯A题完整成品代码文章思路结果分享

A题 多源机会信号建模与导航分析 摘要 全球卫星定位系统(GPS)虽广泛应用于全球定位与导航,但其在室内、隧道以及建筑密集区等复杂环境中的有效性受限。为解决这一局限性,本研究探讨了一种基于机会信号的自主定位导航方法。 机会信…

json返回工具类|世界协调时间(UTC)

一、问题 世界协调时间(UTC)是一个标准的时间参考,通常被用于跨越不同时区的时间标准。要将 UTC 时间转换为中国时间(中国标准时间),你需要将时间加上8个小时,因为中国位于 UTC8 时区。 初中知…