存储的基本架构

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

一、存储的需求背景

1、人的身份信息需要存储

这种信息可以用关系型数据库,例如mysql,那种表格类型关系型都可以用mysql

2、图片存储

fastdfs等等架构可以去实现

3、博客文档存储

4、视频存储

5、AIGC问答类的存储

还有我们的其他数据

综上,存储是计算机领域的一个很大的主题

其中比较重要的层级体系包括:spdk,ceph,Rocksdb,NVMe,EXT4,Tidb

二、自下而上存储架构

1、介质层

2、接口协议层

3、驱动层

相当于对硬件做了一部分抽象

4、文件系统

5、系统调用层

vfs协议,有关读写操作都在这一层级

6、应用层

fastdfs,ceph,samba、mysql,rockdb,tidb

那么我们的spdk是属于哪一层呢,它的作用在于跨内核,跨内存拷贝做的一个桥梁。文件系统可以直接在spdk里边去实现,所以不用跨态去搞传输。

还有就是关于fuse这一层,这一层呢,在执行读写操作的时候可用于对文件的加水印等操作。尤其是在下载某个文件的时候会直接给你打上专属的水印,这个玩意可用于防盗的操作。

以服务器为例,服务器运行的时候会去记录日志,为了能够记录发生的问题,会存储到集中式的存储里边去。这个日志的存储,先要落盘,再通过fuse,fuse去跟踪监测这个对应的日志文件是否有修改,再把这个文件同步到集中式的文件系统上边去。这样就能构建出一个分布式文件系统。

关于数据中心的同步,在两端服务器中间会有一个层叫做rdma,rdma是cpu参与的网络远程一种协议。

关于介质层与上层之间会有一种有线的协议去交互,比如说

总结

关于存储,一直是计算机领域的庞大体系,需要持续的学习。

相关推荐
无心水32 分钟前
深入Java线程池:BlockingQueue实现全景解析与实战指南
java·后端·面试
Java水解33 分钟前
Rust 性能优化实战:从 unsafe 使用到 SIMD 指令,让服务端响应快 2 倍
后端·rust
Java水解36 分钟前
JAVA面试题大全(200+道题目)
java·后端·面试
卷福同学1 小时前
AI浏览器comet拉新,一单20美元(附详细教程)
人工智能·后端
大鱼七成饱1 小时前
掌握 anyhow,让你的 Rust 错误处理优雅又安全
后端·rust
2301_772093561 小时前
高并发webserver_interview
运维·服务器·数据库·后端·网络协议·mysql·wireshark
HashTang1 小时前
不用再配服务器了!这套 Next.js + Cloudflare 模板,一个人搞定全栈出海
前端·后端·边缘计算
大G的笔记本2 小时前
MySQL 大表查询优化、超大分页处理、SQL 慢查询优化、主键选择
数据库·sql·mysql
Lear3 小时前
Redis 持久化机制
数据库
儒道易行3 小时前
【攻防实战】Redis未授权RCE联动metasploit打穿三层内网(上)
数据库·redis·网络安全·缓存