问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

专家观点 Linux文件系统:为未来做好准备了么

发布网友 发布时间:2022-04-25 18:48

我来回答

1个回答

热心网友 时间:2023-10-07 07:13

我当时的目的是将我作为HPC(高性能计算)存储咨询师的经历和我在文件系统及操作系统上的专业知识相联系起来,为读者提供最佳的行动指南。这和我在所有其他文章中所采取的方法是相同的。为了我的客户,我花了大部分时间来回顾存储技术问题。我所处理的安装一般是从500TB的存储容量起步。我所咨询的一个站点中有一个目前有超过12PB的容量,而且许多站点还计划在2010年前增加到60PB。
在我的世界中,计算环境和大型存储环境有很大的不同。在我所工作的高性能计算环境中,我经常看到大型集群(是的,Linux集群)。但是,在所有这些成百上千的节点中,我注意到,没有人实际使用大型的--我的意思是100TB或以上--Linux文件系统。我还没有看到过50TB的Linux文件系统。这并不是说它们不存在,而是我没见过它们,也没有听说过它们。
我所看到的Linux集群是类似于Lustre这样的集群式文件系统。Lustre目前使用许多ext3/4文件系统,并将它们*在一个单一名字的空间里。但是这篇文章和上篇文章和这些集群式文件系统没有关系,和超过100TB的Linux文件系统的实施也没有关系。这就是Linux文件系统的麻烦所在。
我觉得Linux文件系统的扩展有两个问题。
Linux文件系统没有和RAID(独立磁盘冗余阵列)带对齐,除非你拼凑第一个带,以便和超级锁对齐。几乎所有的大型的高性能文件系统都能够自动完成这项事情,而元数据域则能够一直保持和RAID带的对齐。由于元数据经常是被分离到和数据不同的另一个设备上,因此RAID带可以和数据及元数据的分配相对齐。
如果你碰到硬件问题(从RAID故障到因为电力事故等原因所导致的多个设备的硬故障),那么仅仅对日志进行FSCK(检查文件系统并修复)操作是不够的。如果发生这种事情,那么你必须FSCK整个文件系统,而不只是日志(一些回复者指出了这个问题)。由于元数据是分布在文件系统内,因此必须检查所有的元数据。鉴于问题的复杂性(从电力故障到RAID故障到未发现或未修正的错误),可能需要做很多的工作,而且由于元数据域和RAID带的应用并不对齐,因此需要对RAID设备进行读-改-写操作。
这些只是许多问题中的两个。Linux文件系统要想符合大型文件系统上的高性能I/O要求,需要解决许多问题。这并不是说你就不能使用100TB或以上的ext-3/4或其他的一些Liunx文件系统了,但是高性能I/O要求数据通路上的所有事物都能够匹配,以便获得高比例的硬件带宽。在一些时候,你可以通过增加额外的硬件而不是通过扩展来得到带宽,但是这需要成本。
我想要澄清的另外一件事情就是,我所讨论的这种类型的环境并不使用带两个或甚至四个插座(socket)的SMP(对称多处理器结构)系统。如果你有一个500TB的文件系统,你经常需要更多的带宽给文件系统,而这种需求超过了四插座系统--比如说,两个PCIe 2.0总线(理论带宽为10GB/秒)--所能提供的带宽。在许多情况下,这些类型的系统使用8个甚至16个PCIe总线及10GB/秒到20GB/秒(或更多)的带宽。这些类型的环境不使用刀片,它们也不能使用刀片,因为从管理成本的角度和扩展性能的角度来看,将大型文件系统分解开来是很不合算的。
其他问题
除了那些带过多感*彩的回复以及个人攻击以外(不好意思,我是一个独立咨询师,并不受雇于微软或任何其他厂商,我的观点就是我自己的观点),有许多读者提出了一些很好的问题。
一位读者想知道Google是如何使用大型文件系统的。我的回答就是Google里每个刀片节点的每个文件系统都是很小的,然后通过一种应用程序来将它们组合成大的文件系统。同时,Google的文件系统并不是Linux标准发布的一部分。
一些读者注意到我没有深入阐释ext-3/4和XFS文件系统的细节。要想知道该问题的更多内容,请看我的《选择一个文件系统还是文件管理器》。
一位读者试图了解那些面对PB级存储要求的用户是否会使用块设备文件系统,而不是使用网络型热添加(Hot-add)文件系统(我想说光调整大小这项工作就会让人非常头疼,更不用说强制性的FSCK了),或者他们是否运行堆栈Linux文件系统,或者说它们是否在不花费时间和成本来进行重大调整的情况下运行这种文件系统。此外,大部分的NAS(网络附加存储)文件系统都不扩展到PB级。
我的回答是,针对这种规模文件系统的SMP,我知道现在哪些人需要这种性能。通过刀片或网络将文件系统分解,会增加管理上的花销,从而增加成本。NAS的性能并不符合那些针对大型归档进行流式I/O的人,他们几乎都是使用基于HSM(分层存储管理)的文件系统。在Linux文件系统需要大幅改进FSCK性能这一点上,这位读者基本上同意我的观点。关于最后一点,这些人对性能资源是有大量投资。
一些读者指出我没有提到文件系统以外的其他因素,例如设备驱动程序、硬件平台、应用程序访问模式以及其他运行中的应用程序。这是中肯的评价,但是我的回答是我只是试图解决Linux中的文件系统问题,而不是讨论整个的数据通路。
行动呼吁
这些观点和分析是我作为一位存储咨询师而发出的,所有这些观点都是基于我在真实世界环境和超大型站点中的所见所闻。我的建议是Linux文件系统可能适用于几十TB的系统,但是不要试图在几百TB及以上的系统中使用这种文件系统。鉴于每个地方的数据都在飞速增长,Linux文件系统的扩展性问题将随着时间越来越明显。
如果你不同意,可以自己试试。用MKFS(建立Linux文件系统命令)建立一个500TB的ext 3-4文件系统或其他的Linux文件系统,在这个文件系统中加入多个流的数据,在几个月内用来自一个大型SMP服务器的20GB/秒带宽来添加/删除文件,然后破坏这个系统,用FSCK来恢复它,并告诉我这个过程用了多长时间。在几个月的添加及删除文件的时间内,这个系统的I/O性能是否能保持一致?如果在一个目录内放入一百万个文件,并在文件系统内放入1亿个文件,这时这个系统还能运作良好吗?
我猜想如此实践的结果只会证实我的观点:Linux文件系统有扩展问题,在普遍使用100TB环境之前必须要解决这些问题。只有现在心平气和地解决这些问题,Linux才会真正成为Linux支持者所期望的那样。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...每次文字比较多超出屏幕大小就不知道怎么截屏,求教大佬! 我国政策性 广西明士清医疗器械有限公司怎么样? 广西禾力药业有限公司怎么样? 广西龙母圣商贸有限公司怎么样? 安徽合肥有什么去痔的好地方 我女朋友的谷丙转氨酶过高(达到121),而且两对半检测为阴性,是肝功能有... 泸州丽人女子医院开展科室 自由之子本次世界杯是否将在小组赛中被菜? 世界杯谁会嬴 什么软件可以把视频分解成几秒钟一段,并保存到手机里 类似超级合成系统的小说要百万字以上好看最好是完本,太监的不要 三生问道怎么分解装备 赛尔号超级英雄分解20阶英雄有多少万能碎片 系统分解 超级分解系统一键升级小说可以在线看的免费资源链接地址 超级分解系统一键升级全本小说百度云免费资源在线阅读 一个手机号注册了支付宝后注销了,还可以重新注册绑定别人的身份证吗? 支付宝注销了还能不能重新注册? 支付宝账户注销后可以重新注册吗? 如果一个手机号码注册了一个支付宝,但是后面注销了,还可以重新注册吗? 实名认证的支付宝注销后、再用原有手机号还能注册么? 微信怎样登录电脑 电脑如何登陆微信 求详细描写剥石榴的过程,最好细致一点。急用!!! 今天之内  网红"减肥笔"一月减10KG?涉嫌假药可诱发抑郁,这些网红“减肥药”你真的敢买嘛? 电脑登录微信怎么登录? 百盛源蜂蜜微信公众号 百盛源蜂蜜 怎样巧妙的剥石榴? 怎么参加欢go客户端10000知道超级搬运工活动? 多轨道分解音频工具 雀巢奶粉 请问超级能恩是低乳糖吗 滥用抗生素会导致病菌对抗生素的耐药性增强.“超级细菌”的出现,正是大自然对人类不合理行为的一种报复 头超级痛怎么办呢? 什么是超负荷锻炼法? 我国每学期用掉超19.4亿张塑料书皮,你怎么看? 超级外行问一下,电吉他上不同区域的拾音器都在说明情况下使用? 莲蓬读音是什么 莲蓬花语是什么意思? “莲蓬”是什么意思 莲蓬在佛教中的寓意 《清平月》中的"莲蓬"什么意思 木雕莲蓬代表什么意思 莲蓬的意思是什么 一个荷花一个莲蓬的寓意是什么? 莲藕和莲蓬各代表着什么样的精神或者是意义 手握莲蓬代表什么意义 一个鸡腿多少钱? 锡箔纸包着烤熟的鸡腿,能卖多少钱一个? 什么歌曲做铃声既时尚又好听呀