I/O 速度是基於物理磁碟還是邏輯分區?
我試圖了解 I/O 領域的一些基礎知識。我想知道的是,當人們談論標準 HDD 上的磁碟 I/O 速度時,提到的速度是在物理磁碟級別還是基於邏輯分區?我問這個的原因也是因為我研究的很多地方都問了關於磁碟的問題,特別是對於 linux,在結果或答案中,人們通常會參考系統中存在的掛載點,並且雙方都達成共識。我覺得,磁碟和分區這兩個術語可以互換使用,這讓我感到困惑。
我正在使用一些磁碟 I/O 速度至關重要的分佈式應用程序。現在,我有一個物理磁碟,上面有多個掛載點。所以在這裡,如果磁碟 I/O 最大容量是 70 MB/s,這是否意味著所有掛載放在一起,我只能達到 70 MB/s(意味著速度是基於物理磁碟而不是基於分區的),即使應用程序可以更快地將更多數據並行推送到多個掛載點,或者我可以讓每個分區以 70 MB/s 的速度最大化?我傾向於認為它是基於物理磁碟的。我只需要一些額外的驗證,也許還需要一些材料,我可以在這些材料中獲得更多關於這個主題的知識。如果它是基於磁碟的,我正在考慮添加更多磁碟,以便應用程序可以獲得一些額外的速度。
磁碟 I/O 速度由硬體的物理特性決定:磁碟所連接的匯流排(SCSI、USB 等)的速度,以及磁碟本身的速度(始終是平均值,而您必須考慮磁碟內部緩衝區)。
從 I/O 速度的角度來看,如果您在邏輯分區、文件內部進行 I/O 或在整個磁碟上進行原始 I/O,則沒有任何區別。
所以是的,如果您有一個帶有許多分區(“掛載點”)的物理磁碟,則總速度將受到單個磁碟的物理 I/O 速度的限制。實際上會更糟,因為分區位於碟片的不同區域,如果一次寫入多個分區,磁頭將不得不移動(“尋找”)。
相反,如果您有多個物理磁碟,每個物理磁碟用於您的一個掛載點,理論上它們可以並行工作,並且物理磁碟的 I/O 速度加起來。這僅在一定程度上有效,當然,您的電腦內部匯流排也有頻寬限制,您不能全速向任意多個磁碟控制器提供數據。
所以是的,添加更多磁碟可以讓您獲得額外的速度(除非限制不在物理磁碟 I/O 中,而是在其他地方)。