数据存储与文件系统
文章平均质量分 91
本专栏介绍了文件系统的基本原理,并结合实例介绍了实现方法。
数据存储张
这个作者很懒,什么都没留下…
展开
-
一篇文章理解Ext4文件系统的目录
使用过Linux的同学应该对Ext4文件系统都有了解。在Linux文件系统中一切皆文件,同样目录也是文件的一种类型。熟悉Linux服务器的同学经常会看到如下内容,这个是某个目录的列表内容。每一行的前面形如drwxr-xr-x的内容为文件的属性,而第一个字符d则表示这个文件是一个特殊的文件,也就是目录(directory)。第一个字符是用于标示文件类型的,对于块设备则是b,字符设备是c等等,每种特殊...原创 2019-06-14 10:25:13 · 6922 阅读 · 1 评论 -
如何从零安装Ceph分布式存储|Ubuntu环境
版本信息具体安装之前对操作系统做如下限制,其它版本的操作系统不保证能够安装成功。操作系统:Ubuntu 14.04.3Ceph版本号:Hammer V0.94.5设备信息本安装教程假设有4台服务器(或者虚拟机),1台作为管理节点,另外3台作为存储节点。当然,也可以用存储节点中的一台作为管理节点。具体地址和主机名称如图所示。需要在各个服务器上添加解析...原创 2019-05-11 09:25:28 · 799 阅读 · 0 评论 -
VFS文件系统结构分析 与socket
本文乃fireaxe原创,使用GPL发布,可以自由拷贝,转载。但转载请保持文档的完整性,并注明原作者及原链接。内容可任意使用,但对因使用该内容引起的后果不做任何保证。本文在原文基础上进行了编辑。博客地址:fireaxe.blog.chinaunix.net 其它信息:www.itworld123.comVFS是Linux非常核心的一个概念,linux下的大部分操作都要用到VFS的相关功...转载 2019-05-10 13:32:34 · 659 阅读 · 0 评论 -
Linux Ext4文件系统的老祖宗长什么样
现代文件系统(例如Ext4和XFS等)具有多种附加特性,不仅扩展了文件系统的应用场景,而且使得文件系统的容错性(例如日志特性)和性能得到很大的提高。而下一代文件系统(例如Btrfs和ZFS)则提供了更加高级的功能特性,比如存储池、RAID支持和快照等特性,使得文件系统超出了严格文件系统的界限,甚至具备的卷管理的能力。文件系统已经发展的如此完善,我们是否有必要在去了解那些老古董。本号以为是有这个...原创 2019-04-20 09:46:08 · 498 阅读 · 0 评论 -
Ext4文件系统深度剖析|块组(Block Group)
前文已述,Ext4文件系统将磁盘空间划分为若干组,以这一组为单位管理磁盘空间,这个组叫做块组(Block Group)。那么为什么要划分为块组呢?其主要原因是方便对磁盘的管理,由于磁盘被划分为若干组,因此上层访问数据时碰撞的概率就会大大减小,从而提升文件系统的整体性能。简单来说,块组就是一块磁盘区域,而同时其内部有元数据来管理这部分区域的磁盘。概括来说,我们知道超级块是管理整个文件系统(或者理...原创 2019-04-19 10:16:50 · 7607 阅读 · 2 评论 -
Ext2文件系统深度剖析|扩展属性分析
文件的扩展属性扩展属性(xattrs)提供了一个机制用来将键值对(Key/Value)永久地关联到文件,让现有的文件系统得以支持在原始设计中未提供的功能。扩展属性是文件系统不可知论者,应用程序可以通过一个标准的接口来操纵他们,此接口不因文件系统而异。每个扩展属性可以通过唯一的键来区分,键的内容必须是有效的UTF-8,格式为namespace.attribute,每个键采用完全限定的形式,也就是...原创 2019-04-19 10:14:16 · 793 阅读 · 0 评论 -
Ext2文件系统彻底分析 | 磁盘空间分配
历史文章回顾阅读本文最好已经阅读过本号之前的相关文章,如果没有阅读,建议先阅读历史相关文章,具体包括:Ext2文件系统剖析|数据的磁盘布局 Ext4文件系统深度剖析|文件数据的组织 Ext2文件系统深度剖析|读数据流程分析 Ext2文件系统深度剖析|写数据流程在实际写数据到磁盘之前需要分配磁盘上的空间。这里的写数据包括写文件数据、在目录中创建文件和添加扩展属性等等。但凡需要存储新数...原创 2019-04-19 10:07:27 · 799 阅读 · 0 评论 -
Ext2文件系统剖析|数据的磁盘布局
概述Ext2文件系统将磁盘划分为大小相等的逻辑块进行管理,其默认大小是4KB(不做特殊说明,本文后续内容都采用该默认值)。文件系统逻辑块的大小在格式化的时候可以指定的。文件系统将磁盘划分为逻辑块就好像一个大厦划分为若干个房间,或者超市规划为若干货架一样。同时为了便于管理和避免访问冲突,其将若干个逻辑块组成一个大的逻辑块,称为块组(Block Group)。块组是Ext2文件系统的管理单元,块组...原创 2019-04-19 10:04:48 · 712 阅读 · 0 评论 -
深入解析Ceph分布式存储的内核客户端
作者:Prashant Murthy 原文地址:https://engineering.salesforce.com/deep-dive-into-cephs-kernel-client-edea75787528随着云计算的发展,Ceph已经成为目前最为流行的分布式存储系统,俨然存储界的Linux操作系统。Ceph集块存储、文件存储和对象存储于一身,适用场景广泛,用户众多。本文是介绍Cep...原创 2019-04-22 09:20:07 · 1416 阅读 · 0 评论 -
OCFS2文件系统磁盘布局与基本管理
概述前文已经大概介绍过OCFS2的部署和应用场景,本文及后续文章重点介绍OCFS2文件系统的具体实现。为了便于后续代码的理解,本文首先介绍一下该文件系统关键数据的磁盘布局情况。理解磁盘布局是理解OCFS2文件系统的基础,只有理解了布局,才能更好的理解代码中的各种处理流程。本文介绍基于Linux4.1.12内核,其它版本内核可能稍有不同,但不影响理解。 本文示例文件系统格式化采用默认参数,也...原创 2019-04-10 21:03:16 · 601 阅读 · 0 评论