我可以將全新的 2TB WD Passport 硬碟重新格式化為 exFAT,並可選擇多種「分配單元大小」:
128kb
256kb
512kb
1024kb
4096kb
16384kb
32768kb
如果該驅動器主要用於在 Windows 7 上使用 Media Center 錄製 HDTV 節目,那麼哪一款最好?謝謝。
答案1
你首先應該明白什麼
分配單位大小(澳洲)
方法。
它是磁碟上最小的資料塊。您的實際資料在儲存到磁碟時將被分成該大小的單元。例如,如果您有一個大小為512KB你有128KB分配單元大小,您的文件將保存在4 單位在磁碟中(512KB/128KB)。
如果您的檔案大小是500KB你有128KB 澳大利亞,你的文件將仍然可以保存在4個單元中因為如上所述,128KB 是分配單元的最小大小。384KB將被分配在3個單元中,剩餘的116KB將被分配在最後一個單元中,該單元中的12KB將是空的。您可以在 Windows 上的檔案屬性對話方塊中觀察到此行為;您的檔案大小和該檔案在磁碟上實際佔用的空間是兩個不同的概念。作業系統在低階磁碟讀取操作中僅讀取分配單元大小的資料。
話雖如此,由於沒有完全使用最後一個分配單元,使用較大的 AUS 會顯著降低可用空間利用率。副作用是,由於相同的問題,儲存在磁碟上的檔案數量會減少:最後一個 AU 沒有被充分使用。但這裡有一個權衡:使用較大的 AUS 可以顯著提高磁碟讀取效能。作業系統可以一次讀取更多資料。想像一下,如果作業系統只需要進行幾次磁碟讀取就可以完全讀取一個 GB 大小的檔案!
使用較小的 AUS 可提高可用空間利用率,但會降低磁碟讀取效能。想想反向使用大AUS,相同類別的問題和改進,但反過來...
那麼,這裡的結論是什麼呢?如果您要在磁碟上儲存大型(我的意思是大型!)文件,較高的 AUS 將顯著提高讀取效能,同時減少文件數量和可用空間
您應該使用哪一個 AUS?這取決於您的平均檔案大小是多少。您也可以根據檔案大小計算可用空間利用率。
答案2
鑑於高清錄製是大文件,較大的分配單元(16384 或 32768 KB)將提供更好的性能。閒置空間(由於分配單元未完全使用而浪費的空間——檔案儲存在必須作為整個單元使用的分配單元中)的影響將受到少量檔案的限制。另一方面,如果您有許多較小的文件,請使用較小的分配單元來減少浪費的空間。
答案3
對於具有大量小檔案的檔案系統,請使用8 KB簇大小。對於僅包含大檔案(例如媒體)的檔案系統,請使用128KB集群。如果不確定,請使用8 KB簇大小。對於大於 128 KiB 的集群,速度提升可以忽略不計(請參見下面一組圖的左上圖),但如果您使用更大的集群,則可能會出現磁碟使用量增加的情況。
範例:對於我的情況,有大量小文件(剛剛超過 100 萬個文件,包括 74 GB):
- 8 KiB 簇大小-->82 GB 儲存空間我的 74 GB 數據已用完。
- 338MB寫入速度
- 128 KiB 簇大小-->194 GB 儲存空間我的 74 GB 數據已用完
- 390MB寫入速度
- 32 MiB 簇大小-->32768 GB (32.8 TB)(不!不是錯誤)儲存空間我的 74 GB 數據已用完。
- 428MB寫入速度
Microsoft 的簇大小預設值最大值也是 128 KiB。請參閱我的答案末尾的表格,來自 Microsoft。
研究一下我精心製作的這些圖。無論您擁有多少小文件,左上角的圖趨勢都適用,因為我通過將 5.3 GB 文件同步到 exFAT 外部 SSD 來進行這些測試,但其他三個圖因我擁有的小文件數量而加劇。右下角的對數線性趨勢適用於所有人,但其斜率以及 y 軸值取決於您擁有的小檔案數量。
如果有興趣的話,我在我的網站上有完整的文章:https://gabrielstaples.com/exfat-clusters/
完整的 Python matplotlib/numpy 繪圖程式碼在這裡:https://github.com/ElectricRCAircraftGuy/eRCaGuy_hello_world/blob/master/stack_exchange/format_exFAT_PLOTS.py
我並不是回答OP關於「錄製高清電視節目」的問題。我正在回答那些擁有大量小文件的人,包括進行完整磁碟備份,因為他們肯定也會登陸此頁面。
如果您有很多小文件,我會選擇盡可能小的分配單元。這可以避免小文件浪費空間。例如:在 exFAT 上使用 4 KiB 分配單元大小而不是 128 KiB。
我剛剛備份了74GB將 Apple APFS 檔案系統中的資料儲存到具有 exFAT 檔案系統的外部 SSD 上128 KB 分配單元大小(顯然是在 Linux Ubuntu 中使用 Gnome 磁碟格式化為 exFAT 時的預設設定),並且在外部磁碟機上,以前-74 GBAPFS 檔案系統上的資料現在佔據了巨大的194GB在 exFAT 檔案系統上!太瘋狂了!那是2.62倍佔用更多空間,毫無意義!
這是因為我有成千上萬的小文件,例如只有幾百個位元組。在具有 APFS 檔案系統的舊磁碟機上,這些將佔用一個512字節集群,並且在具有 exFAT 檔案系統的新外部磁碟機上,這些相同的 90 位元組檔案佔用了巨大的空間128KB簇,即128KiB * 1024 bytes/KiB / 512 bytes
=256倍大exFAT 磁碟機上儲存小檔案所需的儲存空間。例如,將 128 KiB 分配單元減少到僅 4 KiB 將佔用 128/4 =空間減少 32 倍!
也可以看看
我的答案:Unix 和 Linux:從 Linux 建立並格式化 exFAT 分割區
mkexfatfs
- 我顯示了適用於 Linux Ubuntu 20.04和 Linux Ubuntu 22.04 的命令mkfs.exfat
。我對如何確定您擁有的任何檔案系統的簇大小的回答:伺服器故障:如何找到叢集大小任何檔案系統,無論是 NTFS、Apple APFS、ext4、ext3、FAT、exFAT 等。
[真的很有用]Support.Microsoft.com:NTFS、FAT 和 exFAT 的預設簇大小:
exFAT 的預設簇大小
下表描述了 exFAT 的預設簇大小。
體積大小 Windows 7、Windows Server 2008 R2、Windows Server 2008、
Windows Vista、Windows Server 2003、Windows XP7 MB–256 MB 4KB 256 MB–32 GB 32KB 32 GB–256 TB 128KB > 256 TB 不支援
答案4
基本上,您打算保留的檔案越大,您可能想要使用的每個分配單元的大小就越大 - 但不能太大或太小!我覺得龍王解釋得很好。
因此,如果浪費空間引起了您的注意,那麼您可能需要考慮使用不同的檔案系統。也許類似於 EXT4。問題是 Microsoft 作業系統(實際上是 Windows)無法與 FAT(vFAT、FAT32 等)或 NTFS 以外的任何檔案一起工作。如果您最終得到的檔案大於 4Gig,您可能會咒罵您可能使用的任何 FAT 類型系統。因此,我建議使用具有建議分配單元大小(我認為是 4K)的 NTFS 檔案系統。這樣,如果您最終得到的文件大於 4Gig,您仍然可以儲存您的巨型文件,至少直到您可以將它們分解或轉碼為更小的文件。 (我假設我們正在談論巨大的多媒體文件,這就是我提出「轉碼」的原因,因為我似乎總是在轉碼時找到使文件變小的方法,特別是如果它們是使用 MCE 錄製的。)
我認為使用 FAT(vFAT、FAT32、FAT16 等)的唯一原因是其他作業系統可以讀取/寫入儲存裝置上的檔案。 FAT 幾乎已被普遍接受。否則,我不建議使用FAT(除非裝置的容量為4Gig或更少)—至少對於Windows使用NTFS。您始終可以使用不同的檔案系統建立另一個分割區,即使它位於同一實體磁碟機上。希望能幫助你。