淘宝分布式文件存储系统(一) -TFS

淘宝分布式文件存储系统( 一 ) ->>TFS

目录 :

  • 什么是文件系统
  • 文件存储的一些概念
  • 文件的结构
  • 系统读取文件的方式
  • 为什么采用大文件结构的原因
文件系统 :

将我们的数据整合成目录或者文件,提供对文件的存取接口,基于文件的权限进行访问,简单的说,文件系统就是对文件进行管理的方式 .

文件存储的一些概念:
  • 扇区 . 存储数据的磁盘的最小单位 , 通常一个扇区的大小是 512b(相当于0.5kb),-------b->字节
  • 块: 文件存储的基本单位, 一般是连续的个扇区组成一块 , 512b*8=4096b--> 4kb
文件的基本结构:

文件==目录项 + 块数据项 + Inode 元信息

目录区 : 存放目录下文件的信息 .

块数据区 : 存储文件数据 .

Inode元信息区 : 存放文件的 inode 包含的信息 ,我们可以理解为文件的属性 .

**Inode 结点 : ** ----->可以用,命令 ls -il 来查看一下

  • 索引结点 : 用来存取文件的元信息, 包括文件大小,创建者 ,创建日期等等 . ,每一个文件都有一个inode号码,相当于我们的身份证,操作系统根据inode编码来识别文件 .

  • 结点大小-------> 一般是128和256个字节 , inode结点的数量在最开始格式化磁盘的时候就已经标记 , 相当于一个组成一个inode table , 一般是1kb 或者 2kb 设置一个结点 . 例如 1GB的硬盘 , 按128 和 1kb来算 , inode结点大概会占用128MB大小的空间, 占整个磁盘的12.8% . 所有如果你发现你的磁盘还剩10个G的内存,但是死活存不进数据 , 是因为被我们的inode结点占据了 . **

系统读取文件的方式 :
淘宝的分布式文件储存系统为什么采用大文件结构的原因 :

(1) .小文件存储海量的数据,会导致我们硬件的存储器的磁头需要频繁的更换磁道,就会提高我们的存取时的时间(延时).

(2) .如果进行频繁的增加和删除,会导致我们的磁盘产生很多碎片,降低磁盘的存取效率,同时也降低了IO设备的读写效率.

加和删除,会导致我们的磁盘产生很多碎片,降低磁盘的存取效率,同时也降低了IO设备的读写效率.

(3) .海量的小文件,会导致 inode 编号占用太多磁盘空间,降低缓存的效果.

相关推荐
历程里程碑44 分钟前
Linux20 : IO
linux·c语言·开发语言·数据结构·c++·算法
郝学胜-神的一滴1 小时前
深入浅出:使用Linux系统函数构建高性能TCP服务器
linux·服务器·开发语言·网络·c++·tcp/ip·程序人生
承渊政道1 小时前
Linux系统学习【Linux系统的进度条实现、版本控制器git和调试器gdb介绍】
linux·开发语言·笔记·git·学习·gitee
技术路上的探险家1 小时前
Ubuntu下Docker与NVIDIA Container Toolkit完整安装教程(含国内源适配)
linux·ubuntu·docker
代码AC不AC1 小时前
【Linux】深入理解缓冲区
linux·缓冲区·标准错误
Doro再努力1 小时前
【Linux操作系统12】Git版本控制与GDB调试:从入门到实践
linux·运维·服务器·git·vim
Lsir10110_1 小时前
【Linux】进程信号(上半)
linux·运维·服务器
开开心心就好2 小时前
发票合并打印工具,多页布局设置实时预览
linux·运维·服务器·windows·pdf·harmonyos·1024程序员节
css趣多多2 小时前
add组件增删改的表单处理
java·服务器·前端
予枫的编程笔记2 小时前
【Linux进阶篇】从基础到实战:grep高亮、sed流编辑、awk分析,全场景覆盖
linux·sed·grep·awk·shell编程·文本处理三剑客·管道命令