ZFS 重複資料刪除表未分頁至 RAM

ZFS 重複資料刪除表未分頁至 RAM

我有一個池,其中有 3.41 TB 的數據,根據輸出判斷,在卷上啟用了重複數據刪除

zpool status -D <pool_name>
...
dedup: DDT entries 73665285, size 696B on disk, 154B in core
...

我看到RAM中只儲存了10 GB的DDT,如果載入更多數據,區塊數會增加,位元組數會減少。據我所知,DDT儲存在ARC的元資料中,並且在輸出時arc_meta_used,我只看到大約 8GB,這是元資料量的限制(zfs_arc_meta_limit_percent)在ARC中設定為75%,也就是說,它還沒有達到它,RAM的數量= 64GB。為什麼整個重複資料刪除表沒有轉儲到 RAM 中?

根據這個輸出,我的 DDT 大小是 37,19GB

zdb -b pool
bp count:       124780196
    ganged count:           0
    bp logical:    3997925134336      avg:  32039
    bp physical:   3988307198976      avg:  31962     compression:   1.00
    bp allocated:  6056878956544      avg:  48540     compression:   0.66
    bp deduped:    2188370706432    ref>1: 15910160   deduplication:   1.36
    SPA allocated: 3868508110848     used: 25.36%

    additional, non-pointer bps of type 0:         95
    Dittoed blocks on same vdev: 3706666

為什麼表不分頁到 RAM?以及如何強行卸載?

相關內容