深入理解文件系统:文件IO的一生
大家好我是小义同学,这是大厂面试拆解——项目实战系列的第6篇文章,
”走暗路、耕瘦田、进窄门、见微光” 告诉我 面试关键就 深入理解自己项目 这个才是最考察基本功的地方。
知识地图:KV存储引擎---IO栈
本文 主要描述 read/write为例子普通文件 IO过程是什么?,
分析这个问题关键思路在哪里?
上篇文章 新一代存储引擎BlueStore,需四步
在创建一个文件时候,Ceph的BlueStore ,
- 将文件的数据直接写块设备
- 将文件的元数据写RocksDB
- BlueStore IO流程 先写数据,还是先写元数据顺序不同 ,提供不同策略。
- Ceph IO 软件栈开销原因 无实现低于 0.5 毫秒的随机读取延迟和低于 1 毫秒的随机写入延迟
普通文件写是否区分元数据 和 数据,这些请求最后怎么写入磁盘 呢?
因为内容太多,分批梳理。
大纲如下:
(1) 预备知识:
了解目前有哪些文件系统
(2) 通过工具 了解IO栈
(3) 性能优化
性能优化
一. 准备环境
1.1 机器配置
✅ 购买2C2G云主机 成本一年不超过100元
✅ 创建1G的大文件充代替块设备,因为没有额外的磁盘