存储行业常见问题总结,面试必备 (一)1个知识点加1个问题

1 NAS和 SAN的主要区别是什么?实际场景中推荐使用哪个?

1.1 主要区别:

NAS: Network Attached Storage

是基于IP/Ethernet网络的文件级访问,在客户端看到的是文件和目录结构;

常用的协议有:NFS(适用于Linux); SMB/CIFS(适用于Windows)

SAN: Storage Area Network

是基于iSCSI/FC网络的块级访问,在客户端看到的是未格式化的原始磁盘文件块;

常用的协议有:FC, iSCSI, FCoE;

1.2 使用场景

NAS: Network Attached Storage

文件共享与协同办公;

跨平台环境,Windows, Linux, Mac等;

音频和视频等流媒体;

海量非结构化数据,比如AI训练、天气气象、基因测序等。

SAN: Storage Area Network

数据库(如Oracle,SqlServer等)、ERP; 高IOPS低延迟的应用;

虚拟化(Hyper-V; VMware);

某些高性能计算和金融交易系统等。

2 如果一款存储产品,大量小文件的读写速度比较慢,可能的原因有哪些?如何排查,以及如何优化?

海量小文件操作是NAS存储的痛点。

2.1 可能的原因

2.1.1 元数据瓶颈

元数据是最大的瓶颈。海量小文件的读写、查询和关闭等操作都会产生多次元数据请求,海量请求会压垮元数据服务。

2.1.2 磁盘IOPS 瓶颈

小文件读写是随机IO模式,如果是HDD盘,读写效率会非常低,无法满足高并发需求。

2.1.3 网络延迟

每个小文件操作都会需要多次网络来回,海量操作会使网络延迟效应放大。

2.1.4 协议开销

NFS/SMB都有固定的协议头开销,处理海量小文件时,有效数据占比低,效率低下。

2.2 如何排查和优化

2.2.1 存储侧优化

        a. 使用SSD作为元数据缓存或独立元数据盘;对于热点小文件,可以使用SSD作为数据缓存或数据分层的热层;

        b. 分布式架构:通过分布式元数据架构,通过增加节点来线性扩展元数据性能。此条是重点或者根本解决方案;

 2.2.2 架构与方案优化

        a. 打包存储:在应用层把海量小文件打包成tar或者zip包,或者使用数据库和对象存储来管理小文件;

        b. 选择正确协议:对于海量小文件,NFS V4 比V3可能会有性能提升;

2.2.3 客户端优化

        a. 确保客户端有足够的内存和CPU资源;

        b. 使用正确的挂载选项,例如actimeo调整缓存时间,减少getattr请求等;

2.2.4 排查工具

        a. 使用iostat -x 1 查看磁盘util%和await是否很高;

        b. nfsiostat(NFS)查看网络延迟和操作速率;

        c. 存储平台自带监控工具,查看IOPS, lantency,带宽等指标。

------------------------------------------The End ----------------------------------------------

(待续)

也欢迎大家点赞关注我的微信公众号:大滨读书健身(全网同名)

会分享读书、健身、投资等心得体会,人生除了代码还有生活!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值