Програмне забезпечення для домену даних: Розбіжність між використанням, зафіксованим "fileys show space (df)", та sfs_dump загальними показниками
Summary: Деякі клієнти підсумовують «post-lc-size» (розмір після стиснення) усіх файлів, які вказує «sfs_dump», і очікують, що це зрівняється з використанням простору, яке вказує «displayspace» (df). Оскільки ці два значення не співпадають, вони можуть бачити різницю у вигляді «відсутнього або неврахованого простору» ...
Instructions
Сума розміру після стиснення всіх файлів, вказаних «sfs_dump», відповідатиме загальному використанню простору лише якщо жоден вид файлів у файловій системі не виконувався. У виробничих DDR це ніколи не так, тому використання «sfs_dump» для врахування поточного використання простору є помилкою. Ми проілюструємо це на прикладі нижче.
ІЛЮСТРАЦІЇ:
Це легко побачити на прикладі з трьох кроків:
- Я роблю резервну копію файлу (file1), який має 10G. Уявіть, що це абсолютно нова коробка і нічого для видалення дублікатів. Отже, розмір після стиснення також близько 10G.
# sfs_dump /data/col1/test/ /data/col1/test/file1: mtime: 1503023531690895000 fileid: Розмір 18: 10736790004 тип: 9 seg_bytes: 10772785048 seg_count: 1282587 redun_seg_count: 0 (0%) pre_lc_size: 10772785048 post_lc_size: 10942680452 (102%) режим: 02000100644
Як видно вище, розмір після стиснення становить 10G.
II. Далі я роблю резервну копію ще одного файлу на 10G (file2). Це дуже схоже або схоже на file1.
# sfs_dump /data/col1/test /data/col1/test/file1: mtime: 1503023531690895000 fileid: Розмір 18: 10736790004 тип: 9 seg_bytes: 10772785048 seg_count: 1282587 redun_seg_count: 0 (0%) pre_lc_size: 10772785048 post_lc_size: 10942680452 (102%) режим: 02000100644 /data/col1/test/file2: mtime: 1503023531690895000 fileid: Розмір 19: 10736790004 тип: 9 seg_bytes: 10772785048 seg_count: 1282587 redun_seg_count: 1282587 (100%) pre_lc_size: 0 post_lc_size: Режим 0 (0%): 02000100644
Як видно вище, file2 не займав додаткового місця, оскільки повністю дедуплювався разом із file1.
III. Тепер я видаляю File1 і знову запускаю "sfs_dump" на mtree.
# sfs_dump /data/col1/test /data/col1/test/file2: mtime: 1503023531690895000 fileid: Розмір 19: 10736790004 тип: 9 seg_bytes: 10772785048 seg_count: 1282587 redun_seg_count: 1282587 (100%) pre_lc_size: 0 post_lc_size: Режим 0 (0%): 02000100644
Виходячи з наведеного, клієнт може очікувати, що у файловій системі не буде зайняти жодного місця. Єдиний файл у mtree займає 0 байтів після стиснення (сумація всіх файлів, вказаних sfs_dump, становить 0 байт). Але це помилка. Використання простору в системі фактично становить 10G, і це точно відображається df.
Це пов'язано з тим, що File2 посилається на всі сегменти, спочатку написані File1. Видалення File1 нічого не звільнило. "sfs_dump" не показує оригінальний File1, бо його видалили.
# df Активний рівень: Розмір ресурсу GiB використаний GiB Avail GiB Use% Очищувальний GiB* ---------------- -------- -------- --------- ---- -------------- /data: pre-comp - 10.0 - - - /data: post-comp 129479.5 10.7 129468.8 0% 10.2