file - 将固定块大小文件系统中的 1K 块大小更改为 2K 将如何影响磁盘吞吐量/利用率
问题描述
根据我的理解,如果我们将固定块大小文件系统中的 1K 块大小更改
为 2K,它将导致更好的磁盘吞吐量但更差的磁盘空间利用率。
由于现在文件块很大,因此磁盘空间利用率可能很差,因为
现在最后一个非空块可能有大约 2K 空间。而当它是
1K 时,最后一个非空块可能有大约 1K 空间。
所以磁盘利用率很低。但是现在存储在 100 个块中的同一个文件
现在可以存储在 50 个块中。所以读/写会更快。
这是正确的推理吗?
解决方案
我认为您的推理在大多数情况下是合理的,但在极端情况下,较大的块大小可能会导致较低的吞吐量。
考虑一下当您有一个包含许多小文件的系统并且您想要读取所有这些小文件时会发生什么。小文件意味着这些文件不使用整个 2K 块大小,但必须完整读取一个块。因此,如果您有一百万个 1K 文件,并且每个文件使用一半的块,那么执行 IO 的一半时间都浪费在读取块中的垃圾部分。
推荐阅读
- python - 为什么通过 OpenCV (Python) 的视频输出如此缓慢(逐帧)?
- kubernetes - Websocket 不适用于 nginx-ingress 上的基本身份验证
- php - PHP:为什么真等于-1?
- ajax - 由于 cors,来自 ajax 的 jsonp 解析错误,但 safari (14) 仍然在错误控制台中显示正确结果
- node.js - Discord JS 命令不发送/响应命令
- c++ - C++ 类模板:“从这里需要”错误
- python - 如何为条形图注释创建可变字体大小
- javascript - Uncaught (in promise) SyntaxError: Unexpected end of JSON input in the code below
- nginx - 重定向到 nginx 中的特定目录
- python - QWebEngineView在一段时间后崩溃渲染,显示黑白屏幕